ak4117 167 include/sound/ak4117.h void (*change_callback)(struct ak4117 *ak4117, unsigned char c0, unsigned char c1); ak4117 171 include/sound/ak4117.h const unsigned char pgm[5], void *private_data, struct ak4117 **r_ak4117); ak4117 172 include/sound/ak4117.h void snd_ak4117_reg_write(struct ak4117 *ak4117, unsigned char reg, unsigned char mask, unsigned char val); ak4117 173 include/sound/ak4117.h void snd_ak4117_reinit(struct ak4117 *ak4117); ak4117 174 include/sound/ak4117.h int snd_ak4117_build(struct ak4117 *ak4117, struct snd_pcm_substream *capture_substream); ak4117 175 include/sound/ak4117.h int snd_ak4117_external_rate(struct ak4117 *ak4117); ak4117 176 include/sound/ak4117.h int snd_ak4117_check_rate_and_errors(struct ak4117 *ak4117, unsigned int flags); ak4117 25 sound/i2c/other/ak4117.c static void reg_write(struct ak4117 *ak4117, unsigned char reg, unsigned char val) ak4117 27 sound/i2c/other/ak4117.c ak4117->write(ak4117->private_data, reg, val); ak4117 28 sound/i2c/other/ak4117.c if (reg < sizeof(ak4117->regmap)) ak4117 29 sound/i2c/other/ak4117.c ak4117->regmap[reg] = val; ak4117 32 sound/i2c/other/ak4117.c static inline unsigned char reg_read(struct ak4117 *ak4117, unsigned char reg) ak4117 34 sound/i2c/other/ak4117.c return ak4117->read(ak4117->private_data, reg); ak4117 38 sound/i2c/other/ak4117.c static void reg_dump(struct ak4117 *ak4117) ak4117 44 sound/i2c/other/ak4117.c printk(KERN_DEBUG "reg[%02x] = %02x (%02x)\n", i, reg_read(ak4117, i), i < sizeof(ak4117->regmap) ? ak4117->regmap[i] : 0); ak4117 48 sound/i2c/other/ak4117.c static void snd_ak4117_free(struct ak4117 *chip) ak4117 56 sound/i2c/other/ak4117.c struct ak4117 *chip = device->device_data; ak4117 62 sound/i2c/other/ak4117.c const unsigned char pgm[5], void *private_data, struct ak4117 **r_ak4117) ak4117 64 sound/i2c/other/ak4117.c struct ak4117 *chip; ak4117 101 sound/i2c/other/ak4117.c void snd_ak4117_reg_write(struct ak4117 *chip, unsigned char reg, unsigned char mask, unsigned char val) ak4117 108 sound/i2c/other/ak4117.c void snd_ak4117_reinit(struct ak4117 *chip) ak4117 155 sound/i2c/other/ak4117.c struct ak4117 *chip = snd_kcontrol_chip(kcontrol); ak4117 170 sound/i2c/other/ak4117.c struct ak4117 *chip = snd_kcontrol_chip(kcontrol); ak4117 192 sound/i2c/other/ak4117.c struct ak4117 *chip = snd_kcontrol_chip(kcontrol); ak4117 201 sound/i2c/other/ak4117.c struct ak4117 *chip = snd_kcontrol_chip(kcontrol); ak4117 227 sound/i2c/other/ak4117.c struct ak4117 *chip = snd_kcontrol_chip(kcontrol); ak4117 243 sound/i2c/other/ak4117.c struct ak4117 *chip = snd_kcontrol_chip(kcontrol); ak4117 277 sound/i2c/other/ak4117.c struct ak4117 *chip = snd_kcontrol_chip(kcontrol); ak4117 299 sound/i2c/other/ak4117.c struct ak4117 *chip = snd_kcontrol_chip(kcontrol); ak4117 410 sound/i2c/other/ak4117.c int snd_ak4117_build(struct ak4117 *ak4117, struct snd_pcm_substream *cap_substream) ak4117 418 sound/i2c/other/ak4117.c ak4117->substream = cap_substream; ak4117 420 sound/i2c/other/ak4117.c kctl = snd_ctl_new1(&snd_ak4117_iec958_controls[idx], ak4117); ak4117 425 sound/i2c/other/ak4117.c err = snd_ctl_add(ak4117->card, kctl); ak4117 428 sound/i2c/other/ak4117.c ak4117->kctls[idx] = kctl; ak4117 433 sound/i2c/other/ak4117.c int snd_ak4117_external_rate(struct ak4117 *ak4117) ak4117 437 sound/i2c/other/ak4117.c rcs1 = reg_read(ak4117, AK4117_REG_RCS1); ak4117 441 sound/i2c/other/ak4117.c int snd_ak4117_check_rate_and_errors(struct ak4117 *ak4117, unsigned int flags) ak4117 443 sound/i2c/other/ak4117.c struct snd_pcm_runtime *runtime = ak4117->substream ? ak4117->substream->runtime : NULL; ak4117 449 sound/i2c/other/ak4117.c rcs1 = reg_read(ak4117, AK4117_REG_RCS1); ak4117 452 sound/i2c/other/ak4117.c rcs0 = reg_read(ak4117, AK4117_REG_RCS0); ak4117 453 sound/i2c/other/ak4117.c rcs2 = reg_read(ak4117, AK4117_REG_RCS2); ak4117 455 sound/i2c/other/ak4117.c spin_lock_irqsave(&ak4117->lock, _flags); ak4117 457 sound/i2c/other/ak4117.c ak4117->errors[AK4117_PARITY_ERRORS]++; ak4117 459 sound/i2c/other/ak4117.c ak4117->errors[AK4117_V_BIT_ERRORS]++; ak4117 461 sound/i2c/other/ak4117.c ak4117->errors[AK4117_CCRC_ERRORS]++; ak4117 463 sound/i2c/other/ak4117.c ak4117->errors[AK4117_QCRC_ERRORS]++; ak4117 464 sound/i2c/other/ak4117.c c0 = (ak4117->rcs0 & (AK4117_QINT | AK4117_CINT | AK4117_STC | AK4117_AUDION | AK4117_AUTO | AK4117_UNLCK)) ^ ak4117 466 sound/i2c/other/ak4117.c c1 = (ak4117->rcs1 & (AK4117_DTSCD | AK4117_NPCM | AK4117_PEM | 0x0f)) ^ ak4117 468 sound/i2c/other/ak4117.c ak4117->rcs0 = rcs0 & ~(AK4117_QINT | AK4117_CINT | AK4117_STC); ak4117 469 sound/i2c/other/ak4117.c ak4117->rcs1 = rcs1; ak4117 470 sound/i2c/other/ak4117.c ak4117->rcs2 = rcs2; ak4117 471 sound/i2c/other/ak4117.c spin_unlock_irqrestore(&ak4117->lock, _flags); ak4117 474 sound/i2c/other/ak4117.c snd_ctl_notify(ak4117->card, SNDRV_CTL_EVENT_MASK_VALUE, &ak4117->kctls[0]->id); ak4117 476 sound/i2c/other/ak4117.c snd_ctl_notify(ak4117->card, SNDRV_CTL_EVENT_MASK_VALUE, &ak4117->kctls[1]->id); ak4117 478 sound/i2c/other/ak4117.c snd_ctl_notify(ak4117->card, SNDRV_CTL_EVENT_MASK_VALUE, &ak4117->kctls[2]->id); ak4117 480 sound/i2c/other/ak4117.c snd_ctl_notify(ak4117->card, SNDRV_CTL_EVENT_MASK_VALUE, &ak4117->kctls[3]->id); ak4117 484 sound/i2c/other/ak4117.c snd_ctl_notify(ak4117->card, SNDRV_CTL_EVENT_MASK_VALUE, &ak4117->kctls[4]->id); ak4117 487 sound/i2c/other/ak4117.c snd_ctl_notify(ak4117->card, SNDRV_CTL_EVENT_MASK_VALUE, &ak4117->kctls[6]->id); ak4117 489 sound/i2c/other/ak4117.c snd_ctl_notify(ak4117->card, SNDRV_CTL_EVENT_MASK_VALUE, &ak4117->kctls[8]->id); ak4117 492 sound/i2c/other/ak4117.c snd_ctl_notify(ak4117->card, SNDRV_CTL_EVENT_MASK_VALUE, &ak4117->kctls[9]->id); ak4117 494 sound/i2c/other/ak4117.c snd_ctl_notify(ak4117->card, SNDRV_CTL_EVENT_MASK_VALUE, &ak4117->kctls[10]->id); ak4117 496 sound/i2c/other/ak4117.c snd_ctl_notify(ak4117->card, SNDRV_CTL_EVENT_MASK_VALUE, &ak4117->kctls[11]->id); ak4117 498 sound/i2c/other/ak4117.c if (ak4117->change_callback && (c0 | c1) != 0) ak4117 499 sound/i2c/other/ak4117.c ak4117->change_callback(ak4117, c0, c1); ak4117 505 sound/i2c/other/ak4117.c snd_pcm_stream_lock_irqsave(ak4117->substream, _flags); ak4117 506 sound/i2c/other/ak4117.c if (snd_pcm_running(ak4117->substream)) { ak4117 508 sound/i2c/other/ak4117.c snd_pcm_stop(ak4117->substream, SNDRV_PCM_STATE_DRAINING); ak4117 512 sound/i2c/other/ak4117.c snd_pcm_stream_unlock_irqrestore(ak4117->substream, _flags); ak4117 519 sound/i2c/other/ak4117.c struct ak4117 *chip = from_timer(chip, t, timer); ak4117 83 sound/pcmcia/pdaudiocf/pdaudiocf.h struct ak4117 *ak4117; ak4117 119 sound/pcmcia/pdaudiocf/pdaudiocf_core.c snd_ak4117_reinit(chip->ak4117); ak4117 157 sound/pcmcia/pdaudiocf/pdaudiocf_core.c static void snd_pdacf_ak4117_change(struct ak4117 *ak4117, unsigned char c0, unsigned char c1) ak4117 159 sound/pcmcia/pdaudiocf/pdaudiocf_core.c struct snd_pdacf *chip = ak4117->change_callback_private; ak4117 166 sound/pcmcia/pdaudiocf/pdaudiocf_core.c if (ak4117->rcs0 & AK4117_UNLCK) ak4117 193 sound/pcmcia/pdaudiocf/pdaudiocf_core.c err = snd_ak4117_create(chip->card, pdacf_ak4117_read, pdacf_ak4117_write, pgm, chip, &chip->ak4117); ak4117 221 sound/pcmcia/pdaudiocf/pdaudiocf_core.c chip->ak4117->change_callback_private = chip; ak4117 222 sound/pcmcia/pdaudiocf/pdaudiocf_core.c chip->ak4117->change_callback = snd_pdacf_ak4117_change; ak4117 225 sound/pcmcia/pdaudiocf/pdaudiocf_core.c snd_pdacf_ak4117_change(chip->ak4117, AK4117_UNLCK, 0); ak4117 263 sound/pcmcia/pdaudiocf/pdaudiocf_core.c return (chip->ak4117->rcs0 & AK4117_UNLCK) == 0; ak4117 273 sound/pcmcia/pdaudiocf/pdaudiocf_core.c (snd_ak4117_external_rate(chip->ak4117) <= 0 || !check_signal(chip))) ak4117 37 sound/pcmcia/pdaudiocf/pdaudiocf_irq.c snd_ak4117_check_rate_and_errors(chip->ak4117, 0); ak4117 54 sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c rate = snd_ak4117_check_rate_and_errors(chip->ak4117, AK4117_CHECK_NO_STAT|AK4117_CHECK_NO_RATE); ak4117 71 sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c if ((chip->ak4117->rcs0 & AK4117_UNLCK) || runtime->rate != rate) { ak4117 82 sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c snd_ak4117_check_rate_and_errors(chip->ak4117, AK4117_CHECK_NO_RATE); ak4117 162 sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c snd_ak4117_reg_write(chip->ak4117, AK4117_REG_IO, AK4117_DIF2|AK4117_DIF1|AK4117_DIF0, aval); ak4117 289 sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c err = snd_ak4117_build(chip->ak4117, pcm->streams[SNDRV_PCM_STREAM_CAPTURE].substream);