Lines Matching refs:pdi

693 				   struct sdw_cdns_pdi *pdi,  in intel_pdi_get_ch_update()  argument
700 pdi->ch_count = intel_pdi_get_ch_cap(sdw, pdi->num, pcm); in intel_pdi_get_ch_update()
701 ch_count += pdi->ch_count; in intel_pdi_get_ch_update()
702 pdi++; in intel_pdi_get_ch_update()
734 intel_pdi_shim_configure(struct sdw_intel *sdw, struct sdw_cdns_pdi *pdi) in intel_pdi_shim_configure() argument
741 pdi->intel_alh_id = (link_id * 16) + pdi->num + 3; in intel_pdi_shim_configure()
742 if (pdi->num >= 2) in intel_pdi_shim_configure()
743 pdi->intel_alh_id += 2; in intel_pdi_shim_configure()
749 if (pdi->type != SDW_STREAM_PCM) in intel_pdi_shim_configure()
752 if (pdi->dir == SDW_DATA_DIR_RX) in intel_pdi_shim_configure()
757 u32p_replace_bits(&pdi_conf, pdi->intel_alh_id, SDW_SHIM_PCMSYCM_STREAM); in intel_pdi_shim_configure()
758 u32p_replace_bits(&pdi_conf, pdi->l_ch_num, SDW_SHIM_PCMSYCM_LCHN); in intel_pdi_shim_configure()
759 u32p_replace_bits(&pdi_conf, pdi->h_ch_num, SDW_SHIM_PCMSYCM_HCHN); in intel_pdi_shim_configure()
761 intel_writew(shim, SDW_SHIM_PCMSYCHM(link_id, pdi->num), pdi_conf); in intel_pdi_shim_configure()
765 intel_pdi_alh_configure(struct sdw_intel *sdw, struct sdw_cdns_pdi *pdi) in intel_pdi_alh_configure() argument
772 pdi->intel_alh_id = (link_id * 16) + pdi->num + 3; in intel_pdi_alh_configure()
773 if (pdi->num >= 2) in intel_pdi_alh_configure()
774 pdi->intel_alh_id += 2; in intel_pdi_alh_configure()
777 conf = intel_readl(alh, SDW_ALH_STRMZCFG(pdi->intel_alh_id)); in intel_pdi_alh_configure()
780 u32p_replace_bits(&conf, pdi->ch_count - 1, SDW_ALH_STRMZCFG_CHN); in intel_pdi_alh_configure()
782 intel_writel(alh, SDW_ALH_STRMZCFG(pdi->intel_alh_id), conf); in intel_pdi_alh_configure()
910 struct sdw_cdns_pdi *pdi; in intel_hw_params() local
931 pdi = sdw_cdns_alloc_pdi(cdns, &cdns->pcm, ch, dir, dai->id); in intel_hw_params()
933 pdi = sdw_cdns_alloc_pdi(cdns, &cdns->pdm, ch, dir, dai->id); in intel_hw_params()
935 if (!pdi) { in intel_hw_params()
941 intel_pdi_shim_configure(sdw, pdi); in intel_hw_params()
942 intel_pdi_alh_configure(sdw, pdi); in intel_hw_params()
943 sdw_cdns_config_stream(cdns, ch, dir, pdi); in intel_hw_params()
947 dma->pdi = pdi; in intel_hw_params()
953 pdi->intel_alh_id); in intel_hw_params()
976 pconfig->num = pdi->num; in intel_hw_params()
1023 intel_pdi_shim_configure(sdw, dma->pdi); in intel_prepare()
1024 intel_pdi_alh_configure(sdw, dma->pdi); in intel_prepare()
1025 sdw_cdns_config_stream(cdns, ch, dir, dma->pdi); in intel_prepare()
1031 dma->pdi->intel_alh_id); in intel_prepare()
1069 dma->pdi = NULL; in intel_hw_free()