Lines Matching refs:cdns
52 struct sdw_cdns *cdns = &sdw->cdns; in intel_ace2x_bpt_open_stream() local
53 struct sdw_bus *bus = &cdns->bus; in intel_ace2x_bpt_open_stream()
89 cdns->bus.bpt_stream = stream; in intel_ace2x_bpt_open_stream()
98 pdi0 = sdw_cdns_alloc_pdi(cdns, &cdns->pcm, 1, dir, 0); in intel_ace2x_bpt_open_stream()
100 dev_err(cdns->dev, "%s: sdw_cdns_alloc_pdi0 failed\n", __func__); in intel_ace2x_bpt_open_stream()
105 sdw_cdns_config_stream(cdns, 1, dir, pdi0); in intel_ace2x_bpt_open_stream()
110 pdi1 = sdw_cdns_alloc_pdi(cdns, &cdns->pcm, 1, dir, 1); in intel_ace2x_bpt_open_stream()
112 dev_err(cdns->dev, "%s: sdw_cdns_alloc_pdi1 failed\n", __func__); in intel_ace2x_bpt_open_stream()
117 sdw_cdns_config_stream(cdns, 1, dir, pdi1); in intel_ace2x_bpt_open_stream()
141 ret = sdw_stream_add_master(&cdns->bus, &sconfig, pconfig, 2, stream); in intel_ace2x_bpt_open_stream()
145 dev_err(cdns->dev, "add master to stream failed:%d\n", ret); in intel_ace2x_bpt_open_stream()
149 ret = sdw_prepare_stream(cdns->bus.bpt_stream); in intel_ace2x_bpt_open_stream()
155 ret = sdw_cdns_bpt_find_bandwidth(command, cdns->bus.params.row, in intel_ace2x_bpt_open_stream()
156 cdns->bus.params.col, in intel_ace2x_bpt_open_stream()
168 ret = sdw_cdns_bpt_find_buffer_sizes(command, cdns->bus.params.row, in intel_ace2x_bpt_open_stream()
169 cdns->bus.params.col, in intel_ace2x_bpt_open_stream()
192 ret = sdw_cdns_bpt_find_buffer_sizes(command, cdns->bus.params.row, in intel_ace2x_bpt_open_stream()
193 cdns->bus.params.col, in intel_ace2x_bpt_open_stream()
224 dev_dbg(cdns->dev, "Message len %d transferred in %d frames (%d per frame)\n", in intel_ace2x_bpt_open_stream()
226 dev_dbg(cdns->dev, "sizes pdi0 %d pdi1 %d tx_bandwidth %d rx_bandwidth %d\n", in intel_ace2x_bpt_open_stream()
229 ret = hda_sdw_bpt_open(cdns->dev->parent, /* PCI device */ in intel_ace2x_bpt_open_stream()
235 dev_err(cdns->dev, "%s: hda_sdw_bpt_open failed %d\n", __func__, ret); in intel_ace2x_bpt_open_stream()
255 dev_err(cdns->dev, "%s: sdw_prepare_%s_dma_buffer failed %d\n", in intel_ace2x_bpt_open_stream()
258 ret1 = hda_sdw_bpt_close(cdns->dev->parent, /* PCI device */ in intel_ace2x_bpt_open_stream()
262 dev_err(cdns->dev, "%s: hda_sdw_bpt_close failed: ret %d\n", in intel_ace2x_bpt_open_stream()
266 sdw_deprepare_stream(cdns->bus.bpt_stream); in intel_ace2x_bpt_open_stream()
269 ret1 = sdw_stream_remove_master(&cdns->bus, cdns->bus.bpt_stream); in intel_ace2x_bpt_open_stream()
271 dev_err(cdns->dev, "%s: remove master failed: %d\n", in intel_ace2x_bpt_open_stream()
275 ret1 = sdw_stream_remove_slave(slave, cdns->bus.bpt_stream); in intel_ace2x_bpt_open_stream()
277 dev_err(cdns->dev, "%s: remove slave failed: %d\n", in intel_ace2x_bpt_open_stream()
281 sdw_release_stream(cdns->bus.bpt_stream); in intel_ace2x_bpt_open_stream()
282 cdns->bus.bpt_stream = NULL; in intel_ace2x_bpt_open_stream()
290 struct sdw_cdns *cdns = &sdw->cdns; in intel_ace2x_bpt_close_stream() local
293 ret = hda_sdw_bpt_close(cdns->dev->parent /* PCI device */, sdw->bpt_ctx.bpt_tx_stream, in intel_ace2x_bpt_close_stream()
297 dev_err(cdns->dev, "%s: hda_sdw_bpt_close failed: ret %d\n", in intel_ace2x_bpt_close_stream()
300 ret = sdw_deprepare_stream(cdns->bus.bpt_stream); in intel_ace2x_bpt_close_stream()
302 dev_err(cdns->dev, "%s: sdw_deprepare_stream failed: ret %d\n", in intel_ace2x_bpt_close_stream()
305 ret = sdw_stream_remove_master(&cdns->bus, cdns->bus.bpt_stream); in intel_ace2x_bpt_close_stream()
307 dev_err(cdns->dev, "%s: remove master failed: %d\n", in intel_ace2x_bpt_close_stream()
310 ret = sdw_stream_remove_slave(slave, cdns->bus.bpt_stream); in intel_ace2x_bpt_close_stream()
312 dev_err(cdns->dev, "%s: remove slave failed: %d\n", in intel_ace2x_bpt_close_stream()
315 cdns->bus.bpt_stream = NULL; in intel_ace2x_bpt_close_stream()
323 struct sdw_cdns *cdns = &sdw->cdns; in intel_ace2x_bpt_send_async() local
332 dev_err(cdns->dev, "BPT message length %d is less than the minimum bytes %d\n", in intel_ace2x_bpt_send_async()
337 dev_dbg(cdns->dev, "BPT Transfer start\n"); in intel_ace2x_bpt_send_async()
343 ret = hda_sdw_bpt_send_async(cdns->dev->parent, /* PCI device */ in intel_ace2x_bpt_send_async()
346 dev_err(cdns->dev, "%s: hda_sdw_bpt_send_async failed: %d\n", in intel_ace2x_bpt_send_async()
354 ret = sdw_enable_stream(cdns->bus.bpt_stream); in intel_ace2x_bpt_send_async()
356 dev_err(cdns->dev, "%s: sdw_stream_enable failed: %d\n", in intel_ace2x_bpt_send_async()
367 struct sdw_cdns *cdns = &sdw->cdns; in intel_ace2x_bpt_wait() local
370 dev_dbg(cdns->dev, "BPT Transfer wait\n"); in intel_ace2x_bpt_wait()
372 ret = hda_sdw_bpt_wait(cdns->dev->parent, /* PCI device */ in intel_ace2x_bpt_wait()
375 dev_err(cdns->dev, "%s: hda_sdw_bpt_wait failed: %d\n", __func__, ret); in intel_ace2x_bpt_wait()
377 ret = sdw_disable_stream(cdns->bus.bpt_stream); in intel_ace2x_bpt_wait()
379 dev_err(cdns->dev, "%s: sdw_stream_enable failed: %d\n", in intel_ace2x_bpt_wait()
385 ret = sdw_cdns_check_write_response(cdns->dev, sdw->bpt_ctx.dmab_rx_bdl.area, in intel_ace2x_bpt_wait()
389 dev_err(cdns->dev, "%s: BPT Write failed %d\n", __func__, ret); in intel_ace2x_bpt_wait()
391 ret = sdw_cdns_check_read_response(cdns->dev, sdw->bpt_ctx.dmab_rx_bdl.area, in intel_ace2x_bpt_wait()
396 dev_err(cdns->dev, "%s: BPT Read failed %d\n", __func__, ret); in intel_ace2x_bpt_wait()
412 struct sdw_bus *bus = &sdw->cdns.bus; in intel_shim_vs_init()
462 dev_dbg(sdw->cdns.dev, "clock source %d LVSCTL %#x\n", source, val); in intel_shim_vs_set_clock_source()
511 struct sdw_bus *bus = &sdw->cdns.bus; in intel_link_power_up()
536 dev_err(sdw->cdns.dev, "%s: hdac_bus_eml_sdw_power_up failed: %d\n", in intel_link_power_up()
545 dev_dbg(sdw->cdns.dev, "first link up, programming SYNCPRD\n"); in intel_link_power_up()
549 dev_err(sdw->cdns.dev, "%s: hdac_bus_eml_sdw_set_syncprd failed: %d\n", in intel_link_power_up()
557 dev_err(sdw->cdns.dev, "%s: hdac_bus_eml_sdw_wait_syncpu failed: %d\n", in intel_link_power_up()
568 sdw->cdns.link_up = true; in intel_link_power_up()
586 sdw->cdns.link_up = false; in intel_link_power_down()
596 dev_err(sdw->cdns.dev, "%s: hdac_bus_eml_sdw_power_down failed: %d\n", in intel_link_power_down()
627 dev_err(sdw->cdns.dev, "%s: SyncGO clear failed: %d\n", __func__, ret); in intel_sync_go_unlocked()
699 struct sdw_cdns *cdns = snd_soc_dai_get_drvdata(dai); in intel_hw_params() local
700 struct sdw_intel *sdw = cdns_to_intel(cdns); in intel_hw_params()
707 dai_runtime = cdns->dai_runtime_array[dai->id]; in intel_hw_params()
717 pdi = sdw_cdns_alloc_pdi(cdns, &cdns->pcm, ch, dir, dai->id); in intel_hw_params()
728 sdw_cdns_config_stream(cdns, ch, dir, pdi); in intel_hw_params()
757 ret = sdw_stream_add_master(&cdns->bus, &sconfig, in intel_hw_params()
760 dev_err(cdns->dev, "add master to stream failed:%d\n", ret); in intel_hw_params()
769 struct sdw_cdns *cdns = snd_soc_dai_get_drvdata(dai); in intel_prepare() local
770 struct sdw_intel *sdw = cdns_to_intel(cdns); in intel_prepare()
775 dai_runtime = cdns->dai_runtime_array[dai->id]; in intel_prepare()
803 sdw_cdns_config_stream(cdns, ch, dir, dai_runtime->pdi); in intel_prepare()
814 struct sdw_cdns *cdns = snd_soc_dai_get_drvdata(dai); in intel_hw_free() local
815 struct sdw_intel *sdw = cdns_to_intel(cdns); in intel_hw_free()
819 dai_runtime = cdns->dai_runtime_array[dai->id]; in intel_hw_free()
829 ret = sdw_stream_remove_master(&cdns->bus, dai_runtime->stream); in intel_hw_free()
856 struct sdw_cdns *cdns = snd_soc_dai_get_drvdata(dai); in intel_get_sdw_stream() local
859 dai_runtime = cdns->dai_runtime_array[dai->id]; in intel_get_sdw_stream()
868 struct sdw_cdns *cdns = snd_soc_dai_get_drvdata(dai); in intel_trigger() local
869 struct sdw_intel *sdw = cdns_to_intel(cdns); in intel_trigger()
884 dai_runtime = cdns->dai_runtime_array[dai->id]; in intel_trigger()
948 dev_dbg(sdw->cdns.dev, "PCM cap bd:%d in:%d out:%d\n", in intel_pdi_init()
991 static int intel_create_dai(struct sdw_cdns *cdns, in intel_create_dai() argument
1002 dais[i].name = devm_kasprintf(cdns->dev, GFP_KERNEL, in intel_create_dai()
1004 cdns->instance, i); in intel_create_dai()
1028 struct sdw_cdns *cdns = &sdw->cdns; in intel_register_dai() local
1037 ret = sdw_cdns_pdi_init(cdns, config); in intel_register_dai()
1041 intel_pdi_stream_ch_update(sdw, &sdw->cdns.pcm); in intel_register_dai()
1044 num_dai = cdns->pcm.num_pdi; in intel_register_dai()
1046 dai_runtime_array = devm_kcalloc(cdns->dev, num_dai, in intel_register_dai()
1051 cdns->dai_runtime_array = dai_runtime_array; in intel_register_dai()
1053 dais = devm_kcalloc(cdns->dev, num_dai, sizeof(*dais), GFP_KERNEL); in intel_register_dai()
1058 stream = &cdns->pcm; in intel_register_dai()
1060 ret = intel_create_dai(cdns, dais, INTEL_PDI_IN, cdns->pcm.num_in, in intel_register_dai()
1065 off += cdns->pcm.num_in; in intel_register_dai()
1066 ret = intel_create_dai(cdns, dais, INTEL_PDI_OUT, cdns->pcm.num_out, in intel_register_dai()
1071 off += cdns->pcm.num_out; in intel_register_dai()
1072 ret = intel_create_dai(cdns, dais, INTEL_PDI_BD, cdns->pcm.num_bd, in intel_register_dai()
1077 return devm_snd_soc_register_component(cdns->dev, &dai_component, in intel_register_dai()
1087 dev_err(sdw->cdns.dev, "%s: could not set lsdiid for link %d %d\n", in intel_program_sdi()
1097 dev_err(sdw->cdns.dev, "%s: could not retrieve link count\n", __func__); in intel_get_link_count()
1102 dev_err(sdw->cdns.dev, "%s: link count %d exceed max %d\n", __func__, ret, SDW_INTEL_MAX_LINKS); in intel_get_link_count()