Lines Matching refs:asihpi
339 static void snd_card_asihpi_pcm_samplerates(struct snd_card_asihpi *asihpi, in snd_card_asihpi_pcm_samplerates() argument
350 if (asihpi->support_mrx) { in snd_card_asihpi_pcm_samplerates()
358 err = hpi_mixer_get_control(asihpi->h_mixer, in snd_card_asihpi_pcm_samplerates()
362 dev_err(&asihpi->pci->dev, in snd_card_asihpi_pcm_samplerates()
908 struct snd_card_asihpi *asihpi; in snd_card_asihpi_isr() local
911 asihpi = (struct snd_card_asihpi *)a->snd_card->private_data; in snd_card_asihpi_isr()
912 if (asihpi->llmode_streampriv) in snd_card_asihpi_isr()
914 &asihpi->llmode_streampriv->timer); in snd_card_asihpi_isr()
947 static u64 snd_card_asihpi_playback_formats(struct snd_card_asihpi *asihpi, in snd_card_asihpi_playback_formats() argument
960 err = hpi_mixer_get_control(asihpi->h_mixer, in snd_card_asihpi_playback_formats()
970 err = hpi_format_create(&hpi_format, asihpi->out_max_chans, in snd_card_asihpi_playback_formats()
1122 static u64 snd_card_asihpi_capture_formats(struct snd_card_asihpi *asihpi, in snd_card_asihpi_capture_formats() argument
1134 err = hpi_mixer_get_control(asihpi->h_mixer, in snd_card_asihpi_capture_formats()
1145 err = hpi_format_create(&hpi_format, asihpi->in_max_chans, in snd_card_asihpi_capture_formats()
1250 static int snd_card_asihpi_pcm_new(struct snd_card_asihpi *asihpi, int device) in snd_card_asihpi_pcm_new() argument
1257 err = hpi_adapter_get_info(asihpi->hpi->adapter->index, in snd_card_asihpi_pcm_new()
1261 err = snd_pcm_new(asihpi->card, "Asihpi PCM", device, in snd_card_asihpi_pcm_new()
1272 pcm->private_data = asihpi; in snd_card_asihpi_pcm_new()
1279 &asihpi->pci->dev, in snd_card_asihpi_pcm_new()
1361 struct snd_card_asihpi *asihpi) in ctl_add() argument
1365 err = snd_ctl_add(card, snd_ctl_new1(ctl, asihpi)); in ctl_add()
1369 dev_info(&asihpi->pci->dev, "added %s(%d)\n", ctl->name, ctl->index); in ctl_add()
1515 static int snd_asihpi_volume_add(struct snd_card_asihpi *asihpi, in snd_asihpi_volume_add() argument
1518 struct snd_card *card = asihpi->card; in snd_asihpi_volume_add()
1531 err = ctl_add(card, &snd_control, asihpi); in snd_asihpi_volume_add()
1541 err = ctl_add(card, &snd_control, asihpi); in snd_asihpi_volume_add()
1611 static int snd_asihpi_level_add(struct snd_card_asihpi *asihpi, in snd_asihpi_level_add() argument
1614 struct snd_card *card = asihpi->card; in snd_asihpi_level_add()
1626 return ctl_add(card, &snd_control, asihpi); in snd_asihpi_level_add()
1722 static int snd_asihpi_aesebu_rx_add(struct snd_card_asihpi *asihpi, in snd_asihpi_aesebu_rx_add() argument
1725 struct snd_card *card = asihpi->card; in snd_asihpi_aesebu_rx_add()
1735 if (ctl_add(card, &snd_control, asihpi) < 0) in snd_asihpi_aesebu_rx_add()
1744 return ctl_add(card, &snd_control, asihpi); in snd_asihpi_aesebu_rx_add()
1760 static int snd_asihpi_aesebu_tx_add(struct snd_card_asihpi *asihpi, in snd_asihpi_aesebu_tx_add() argument
1763 struct snd_card *card = asihpi->card; in snd_asihpi_aesebu_tx_add()
1772 return ctl_add(card, &snd_control, asihpi); in snd_asihpi_aesebu_tx_add()
1992 static int snd_asihpi_tuner_add(struct snd_card_asihpi *asihpi, in snd_asihpi_tuner_add() argument
1995 struct snd_card *card = asihpi->card; in snd_asihpi_tuner_add()
2007 if (ctl_add(card, &snd_control, asihpi) < 0) in snd_asihpi_tuner_add()
2016 if (ctl_add(card, &snd_control, asihpi) < 0) in snd_asihpi_tuner_add()
2024 return ctl_add(card, &snd_control, asihpi); in snd_asihpi_tuner_add()
2096 static int snd_asihpi_meter_add(struct snd_card_asihpi *asihpi, in snd_asihpi_meter_add() argument
2099 struct snd_card *card = asihpi->card; in snd_asihpi_meter_add()
2110 return ctl_add(card, &snd_control, asihpi); in snd_asihpi_meter_add()
2208 static int snd_asihpi_mux_add(struct snd_card_asihpi *asihpi, in snd_asihpi_mux_add() argument
2211 struct snd_card *card = asihpi->card; in snd_asihpi_mux_add()
2220 return ctl_add(card, &snd_control, asihpi); in snd_asihpi_mux_add()
2287 static int snd_asihpi_cmode_add(struct snd_card_asihpi *asihpi, in snd_asihpi_cmode_add() argument
2290 struct snd_card *card = asihpi->card; in snd_asihpi_cmode_add()
2299 return ctl_add(card, &snd_control, asihpi); in snd_asihpi_cmode_add()
2320 struct snd_card_asihpi *asihpi = in snd_asihpi_clksrc_info() local
2322 struct clk_cache *clkcache = &asihpi->cc; in snd_asihpi_clksrc_info()
2339 struct snd_card_asihpi *asihpi = in snd_asihpi_clksrc_get() local
2341 struct clk_cache *clkcache = &asihpi->cc; in snd_asihpi_clksrc_get()
2367 struct snd_card_asihpi *asihpi = in snd_asihpi_clksrc_put() local
2369 struct clk_cache *clkcache = &asihpi->cc; in snd_asihpi_clksrc_put()
2461 static int snd_asihpi_sampleclock_add(struct snd_card_asihpi *asihpi, in snd_asihpi_sampleclock_add() argument
2473 if (snd_BUG_ON(!asihpi)) in snd_asihpi_sampleclock_add()
2475 card = asihpi->card; in snd_asihpi_sampleclock_add()
2476 clkcache = &asihpi->cc; in snd_asihpi_sampleclock_add()
2514 if (ctl_add(card, &snd_control, asihpi) < 0) in snd_asihpi_sampleclock_add()
2526 if (ctl_add(card, &snd_control, asihpi) < 0) in snd_asihpi_sampleclock_add()
2536 return ctl_add(card, &snd_control, asihpi); in snd_asihpi_sampleclock_add()
2542 static int snd_card_asihpi_mixer_new(struct snd_card_asihpi *asihpi) in snd_card_asihpi_mixer_new() argument
2550 if (snd_BUG_ON(!asihpi)) in snd_card_asihpi_mixer_new()
2552 card = asihpi->card; in snd_card_asihpi_mixer_new()
2556 hpi_mixer_open(asihpi->hpi->adapter->index, in snd_card_asihpi_mixer_new()
2557 &asihpi->h_mixer); in snd_card_asihpi_mixer_new()
2567 asihpi->h_mixer, in snd_card_asihpi_mixer_new()
2578 dev_info(&asihpi->pci->dev, in snd_card_asihpi_mixer_new()
2607 err = snd_asihpi_volume_add(asihpi, &hpi_ctl); in snd_card_asihpi_mixer_new()
2610 err = snd_asihpi_level_add(asihpi, &hpi_ctl); in snd_card_asihpi_mixer_new()
2613 err = snd_asihpi_mux_add(asihpi, &hpi_ctl); in snd_card_asihpi_mixer_new()
2616 err = snd_asihpi_cmode_add(asihpi, &hpi_ctl); in snd_card_asihpi_mixer_new()
2619 err = snd_asihpi_meter_add(asihpi, &hpi_ctl, subindex); in snd_card_asihpi_mixer_new()
2623 asihpi, &hpi_ctl); in snd_card_asihpi_mixer_new()
2628 err = snd_asihpi_tuner_add(asihpi, &hpi_ctl); in snd_card_asihpi_mixer_new()
2631 err = snd_asihpi_aesebu_tx_add(asihpi, &hpi_ctl); in snd_card_asihpi_mixer_new()
2634 err = snd_asihpi_aesebu_rx_add(asihpi, &hpi_ctl); in snd_card_asihpi_mixer_new()
2643 dev_info(&asihpi->pci->dev, in snd_card_asihpi_mixer_new()
2659 dev_info(&asihpi->pci->dev, "%d mixer controls found\n", idx); in snd_card_asihpi_mixer_new()
2672 struct snd_card_asihpi *asihpi = entry->private_data; in snd_asihpi_proc_read() local
2687 hpi_handle_error(hpi_adapter_get_info(asihpi->hpi->adapter->index, in snd_asihpi_proc_read()
2694 type, asihpi->hpi->adapter->index, in snd_asihpi_proc_read()
2702 err = hpi_mixer_get_control(asihpi->h_mixer, in snd_asihpi_proc_read()
2716 static void snd_asihpi_proc_init(struct snd_card_asihpi *asihpi) in snd_asihpi_proc_init() argument
2718 snd_card_ro_proc_new(asihpi->card, "info", asihpi, in snd_asihpi_proc_init()
2756 static int snd_asihpi_hpi_new(struct snd_card_asihpi *asihpi, int device) in snd_asihpi_hpi_new() argument
2761 err = snd_hwdep_new(asihpi->card, "HPI", device, &hw); in snd_asihpi_hpi_new()
2769 hw->private_data = asihpi; in snd_asihpi_hpi_new()
2782 struct snd_card_asihpi *asihpi; in snd_asihpi_probe() local
2819 asihpi = card->private_data; in snd_asihpi_probe()
2820 asihpi->card = card; in snd_asihpi_probe()
2821 asihpi->pci = pci_dev; in snd_asihpi_probe()
2822 asihpi->hpi = hpi; in snd_asihpi_probe()
2827 NULL, &asihpi->support_grouping); in snd_asihpi_probe()
2829 asihpi->support_grouping = 0; in snd_asihpi_probe()
2833 &asihpi->support_mrx, NULL); in snd_asihpi_probe()
2835 asihpi->support_mrx = 0; in snd_asihpi_probe()
2839 NULL, &asihpi->update_interval_frames); in snd_asihpi_probe()
2841 asihpi->update_interval_frames = 512; in snd_asihpi_probe()
2844 asihpi->pcm_start = snd_card_asihpi_pcm_int_start; in snd_asihpi_probe()
2845 asihpi->pcm_stop = snd_card_asihpi_pcm_int_stop; in snd_asihpi_probe()
2848 asihpi->pcm_start = snd_card_asihpi_pcm_timer_start; in snd_asihpi_probe()
2849 asihpi->pcm_stop = snd_card_asihpi_pcm_timer_stop; in snd_asihpi_probe()
2856 asihpi->can_dma = (!err); in snd_asihpi_probe()
2860 if (!asihpi->can_dma) in snd_asihpi_probe()
2861 asihpi->update_interval_frames *= 2; in snd_asihpi_probe()
2865 &asihpi->in_max_chans, &asihpi->out_max_chans); in snd_asihpi_probe()
2867 asihpi->in_max_chans = 2; in snd_asihpi_probe()
2868 asihpi->out_max_chans = 2; in snd_asihpi_probe()
2871 if (asihpi->out_max_chans > 2) { /* assume LL mode */ in snd_asihpi_probe()
2872 asihpi->out_min_chans = asihpi->out_max_chans; in snd_asihpi_probe()
2873 asihpi->in_min_chans = asihpi->in_max_chans; in snd_asihpi_probe()
2874 asihpi->support_grouping = 0; in snd_asihpi_probe()
2876 asihpi->out_min_chans = 1; in snd_asihpi_probe()
2877 asihpi->in_min_chans = 1; in snd_asihpi_probe()
2881 asihpi->can_dma, in snd_asihpi_probe()
2882 asihpi->support_grouping, in snd_asihpi_probe()
2883 asihpi->support_mrx, in snd_asihpi_probe()
2884 asihpi->update_interval_frames in snd_asihpi_probe()
2887 err = snd_card_asihpi_pcm_new(asihpi, 0); in snd_asihpi_probe()
2892 err = snd_card_asihpi_mixer_new(asihpi); in snd_asihpi_probe()
2898 err = hpi_mixer_get_control(asihpi->h_mixer, in snd_asihpi_probe()
2906 snd_asihpi_proc_init(asihpi); in snd_asihpi_probe()
2910 snd_asihpi_hpi_new(asihpi, 0); in snd_asihpi_probe()
2915 asihpi->hpi->adapter->type); in snd_asihpi_probe()