kirkwood-i2s.c (1c195ddb1de14ff9a6327c47f88428200f7c8d88) | kirkwood-i2s.c (4f6f1478c1ada4524e9ed21190b4549233a816a3) |
---|---|
1/* 2 * kirkwood-i2s.c 3 * 4 * (c) 2010 Arnaud Patard <apatard@mandriva.com> 5 * (c) 2010 Arnaud Patard <arnaud.patard@rtp-net.org> 6 * 7 * This program is free software; you can redistribute it and/or modify it 8 * under the terms of the GNU General Public License as published by the --- 234 unchanged lines hidden (view full) --- 243 udelay(1); 244 } while (timeout--); 245 246 if ((ctl | value) & KIRKWOOD_PLAYCTL_PLAY_BUSY) 247 dev_notice(dai->dev, "timed out waiting for busy to deassert: %08x\n", 248 ctl); 249 } 250 | 1/* 2 * kirkwood-i2s.c 3 * 4 * (c) 2010 Arnaud Patard <apatard@mandriva.com> 5 * (c) 2010 Arnaud Patard <arnaud.patard@rtp-net.org> 6 * 7 * This program is free software; you can redistribute it and/or modify it 8 * under the terms of the GNU General Public License as published by the --- 234 unchanged lines hidden (view full) --- 243 udelay(1); 244 } while (timeout--); 245 246 if ((ctl | value) & KIRKWOOD_PLAYCTL_PLAY_BUSY) 247 dev_notice(dai->dev, "timed out waiting for busy to deassert: %08x\n", 248 ctl); 249 } 250 |
251 if (dai->id == 0) 252 ctl &= ~KIRKWOOD_PLAYCTL_SPDIF_EN; /* i2s */ 253 else 254 ctl &= ~KIRKWOOD_PLAYCTL_I2S_EN; /* spdif */ 255 | |
256 switch (cmd) { 257 case SNDRV_PCM_TRIGGER_START: 258 /* configure */ 259 ctl = priv->ctl_play; | 251 switch (cmd) { 252 case SNDRV_PCM_TRIGGER_START: 253 /* configure */ 254 ctl = priv->ctl_play; |
255 if (dai->id == 0) 256 ctl &= ~KIRKWOOD_PLAYCTL_SPDIF_EN; /* i2s */ 257 else 258 ctl &= ~KIRKWOOD_PLAYCTL_I2S_EN; /* spdif */ 259 |
|
260 value = ctl & ~KIRKWOOD_PLAYCTL_ENABLE_MASK; 261 writel(value, priv->io + KIRKWOOD_PLAYCTL); 262 263 /* enable interrupts */ 264 value = readl(priv->io + KIRKWOOD_INT_MASK); 265 value |= KIRKWOOD_INT_CAUSE_PLAY_BYTES; 266 writel(value, priv->io + KIRKWOOD_INT_MASK); 267 --- 390 unchanged lines hidden --- | 260 value = ctl & ~KIRKWOOD_PLAYCTL_ENABLE_MASK; 261 writel(value, priv->io + KIRKWOOD_PLAYCTL); 262 263 /* enable interrupts */ 264 value = readl(priv->io + KIRKWOOD_INT_MASK); 265 value |= KIRKWOOD_INT_CAUSE_PLAY_BYTES; 266 writel(value, priv->io + KIRKWOOD_INT_MASK); 267 --- 390 unchanged lines hidden --- |