dreamcastcard 219 sound/sh/aica.c struct snd_card_aica *dreamcastcard; dreamcastcard 223 sound/sh/aica.c dreamcastcard = substream->pcm->private_data; dreamcastcard 224 sound/sh/aica.c period_offset = dreamcastcard->clicks; dreamcastcard 248 sound/sh/aica.c static void startup_aica(struct snd_card_aica *dreamcastcard) dreamcastcard 251 sound/sh/aica.c dreamcastcard->channel, sizeof(struct aica_channel)); dreamcastcard 259 sound/sh/aica.c struct snd_card_aica *dreamcastcard; dreamcastcard 260 sound/sh/aica.c dreamcastcard = dreamcastcard 262 sound/sh/aica.c runtime = dreamcastcard->substream->runtime; dreamcastcard 263 sound/sh/aica.c if (unlikely(dreamcastcard->dma_check == 0)) { dreamcastcard 267 sound/sh/aica.c dreamcastcard->channel->flags |= 0x01; dreamcastcard 269 sound/sh/aica.c dreamcastcard->substream); dreamcastcard 270 sound/sh/aica.c startup_aica(dreamcastcard); dreamcastcard 271 sound/sh/aica.c dreamcastcard->clicks = dreamcastcard 277 sound/sh/aica.c dreamcastcard->substream); dreamcastcard 278 sound/sh/aica.c snd_pcm_period_elapsed(dreamcastcard->substream); dreamcastcard 279 sound/sh/aica.c dreamcastcard->clicks++; dreamcastcard 280 sound/sh/aica.c if (unlikely(dreamcastcard->clicks >= AICA_PERIOD_NUMBER)) dreamcastcard 281 sound/sh/aica.c dreamcastcard->clicks %= AICA_PERIOD_NUMBER; dreamcastcard 282 sound/sh/aica.c mod_timer(&dreamcastcard->timer, jiffies + 1); dreamcastcard 288 sound/sh/aica.c struct snd_card_aica *dreamcastcard = from_timer(dreamcastcard, dreamcastcard 290 sound/sh/aica.c struct snd_pcm_substream *substream = dreamcastcard->substream; dreamcastcard 295 sound/sh/aica.c dreamcastcard = substream->pcm->private_data; dreamcastcard 302 sound/sh/aica.c if (play_period == dreamcastcard->current_period) { dreamcastcard 304 sound/sh/aica.c mod_timer(&(dreamcastcard->timer), jiffies + 1); dreamcastcard 308 sound/sh/aica.c dreamcastcard->current_period = play_period; dreamcastcard 309 sound/sh/aica.c if (unlikely(dreamcastcard->dma_check == 0)) dreamcastcard 310 sound/sh/aica.c dreamcastcard->dma_check = 1; dreamcastcard 311 sound/sh/aica.c schedule_work(&(dreamcastcard->spu_dma_work)); dreamcastcard 316 sound/sh/aica.c struct snd_card_aica *dreamcastcard; dreamcastcard 319 sound/sh/aica.c dreamcastcard = substream->pcm->private_data; dreamcastcard 321 sound/sh/aica.c schedule_work(&(dreamcastcard->spu_dma_work)); dreamcastcard 322 sound/sh/aica.c mod_timer(&dreamcastcard->timer, jiffies + 4); dreamcastcard 330 sound/sh/aica.c struct snd_card_aica *dreamcastcard; dreamcastcard 333 sound/sh/aica.c dreamcastcard = substream->pcm->private_data; dreamcastcard 340 sound/sh/aica.c channel->vol = dreamcastcard->master_volume; dreamcastcard 344 sound/sh/aica.c dreamcastcard->channel = channel; dreamcastcard 348 sound/sh/aica.c dreamcastcard->clicks = 0; dreamcastcard 349 sound/sh/aica.c dreamcastcard->current_period = 0; dreamcastcard 350 sound/sh/aica.c dreamcastcard->dma_check = 0; dreamcastcard 357 sound/sh/aica.c struct snd_card_aica *dreamcastcard = substream->pcm->private_data; dreamcastcard 358 sound/sh/aica.c flush_work(&(dreamcastcard->spu_dma_work)); dreamcastcard 359 sound/sh/aica.c del_timer(&dreamcastcard->timer); dreamcastcard 360 sound/sh/aica.c dreamcastcard->substream = NULL; dreamcastcard 361 sound/sh/aica.c kfree(dreamcastcard->channel); dreamcastcard 386 sound/sh/aica.c struct snd_card_aica *dreamcastcard = substream->pcm->private_data; dreamcastcard 388 sound/sh/aica.c dreamcastcard->channel->sfmt = SM_16BIT; dreamcastcard 389 sound/sh/aica.c dreamcastcard->channel->freq = substream->runtime->rate; dreamcastcard 390 sound/sh/aica.c dreamcastcard->substream = substream; dreamcastcard 429 sound/sh/aica.c *dreamcastcard, int pcm_index) dreamcastcard 435 sound/sh/aica.c snd_pcm_new(dreamcastcard->card, "AICA PCM", pcm_index, 1, 0, dreamcastcard 439 sound/sh/aica.c pcm->private_data = dreamcastcard; dreamcastcard 485 sound/sh/aica.c struct snd_card_aica *dreamcastcard; dreamcastcard 486 sound/sh/aica.c dreamcastcard = kcontrol->private_data; dreamcastcard 487 sound/sh/aica.c if (unlikely(!dreamcastcard->channel)) dreamcastcard 489 sound/sh/aica.c ucontrol->value.integer.value[0] = dreamcastcard->channel->vol; dreamcastcard 496 sound/sh/aica.c struct snd_card_aica *dreamcastcard; dreamcastcard 498 sound/sh/aica.c dreamcastcard = kcontrol->private_data; dreamcastcard 499 sound/sh/aica.c if (unlikely(!dreamcastcard->channel)) dreamcastcard 504 sound/sh/aica.c if (unlikely(dreamcastcard->channel->vol == vol)) dreamcastcard 506 sound/sh/aica.c dreamcastcard->channel->vol = ucontrol->value.integer.value[0]; dreamcastcard 507 sound/sh/aica.c dreamcastcard->master_volume = ucontrol->value.integer.value[0]; dreamcastcard 509 sound/sh/aica.c dreamcastcard->channel, sizeof(struct aica_channel)); dreamcastcard 547 sound/sh/aica.c static int add_aicamixer_controls(struct snd_card_aica *dreamcastcard) dreamcastcard 551 sound/sh/aica.c (dreamcastcard->card, dreamcastcard 552 sound/sh/aica.c snd_ctl_new1(&snd_aica_pcmvolume_control, dreamcastcard)); dreamcastcard 556 sound/sh/aica.c (dreamcastcard->card, dreamcastcard 557 sound/sh/aica.c snd_ctl_new1(&snd_aica_pcmswitch_control, dreamcastcard)); dreamcastcard 565 sound/sh/aica.c struct snd_card_aica *dreamcastcard; dreamcastcard 566 sound/sh/aica.c dreamcastcard = platform_get_drvdata(devptr); dreamcastcard 567 sound/sh/aica.c if (unlikely(!dreamcastcard)) dreamcastcard 569 sound/sh/aica.c snd_card_free(dreamcastcard->card); dreamcastcard 570 sound/sh/aica.c kfree(dreamcastcard); dreamcastcard 577 sound/sh/aica.c struct snd_card_aica *dreamcastcard; dreamcastcard 578 sound/sh/aica.c dreamcastcard = kzalloc(sizeof(struct snd_card_aica), GFP_KERNEL); dreamcastcard 579 sound/sh/aica.c if (unlikely(!dreamcastcard)) dreamcastcard 582 sound/sh/aica.c THIS_MODULE, 0, &dreamcastcard->card); dreamcastcard 584 sound/sh/aica.c kfree(dreamcastcard); dreamcastcard 587 sound/sh/aica.c strcpy(dreamcastcard->card->driver, "snd_aica"); dreamcastcard 588 sound/sh/aica.c strcpy(dreamcastcard->card->shortname, SND_AICA_DRIVER); dreamcastcard 589 sound/sh/aica.c strcpy(dreamcastcard->card->longname, dreamcastcard 592 sound/sh/aica.c INIT_WORK(&(dreamcastcard->spu_dma_work), run_spu_dma); dreamcastcard 593 sound/sh/aica.c timer_setup(&dreamcastcard->timer, aica_period_elapsed, 0); dreamcastcard 595 sound/sh/aica.c err = snd_aicapcmchip(dreamcastcard, 0); dreamcastcard 599 sound/sh/aica.c err = add_aicamixer_controls(dreamcastcard); dreamcastcard 603 sound/sh/aica.c err = snd_card_register(dreamcastcard->card); dreamcastcard 606 sound/sh/aica.c platform_set_drvdata(devptr, dreamcastcard); dreamcastcard 611 sound/sh/aica.c snd_card_free(dreamcastcard->card); dreamcastcard 612 sound/sh/aica.c kfree(dreamcastcard);