Lines Matching refs:pdi
1199 struct sdw_cdns_pdi *pdi; in cdns_allocate_pdi() local
1205 pdi = devm_kcalloc(cdns->dev, num, sizeof(*pdi), GFP_KERNEL); in cdns_allocate_pdi()
1206 if (!pdi) in cdns_allocate_pdi()
1210 pdi[i].num = i + pdi_offset; in cdns_allocate_pdi()
1213 *stream = pdi; in cdns_allocate_pdi()
1771 struct sdw_cdns_pdi *pdi, in cdns_find_pdi() argument
1777 if (pdi[i].num == dai_id) in cdns_find_pdi()
1778 return &pdi[i]; in cdns_find_pdi()
1792 u32 ch, u32 dir, struct sdw_cdns_pdi *pdi) in sdw_cdns_config_stream() argument
1802 offset = CDNS_PORTCTRL + pdi->num * CDNS_PORT_OFFSET; in sdw_cdns_config_stream()
1807 val = pdi->num; in sdw_cdns_config_stream()
1810 cdns_writel(cdns, CDNS_PDI_CONFIG(pdi->num), val); in sdw_cdns_config_stream()
1827 struct sdw_cdns_pdi *pdi = NULL; in sdw_cdns_alloc_pdi() local
1830 pdi = cdns_find_pdi(cdns, 0, stream->num_in, stream->in, in sdw_cdns_alloc_pdi()
1833 pdi = cdns_find_pdi(cdns, 0, stream->num_out, stream->out, in sdw_cdns_alloc_pdi()
1837 if (!pdi) in sdw_cdns_alloc_pdi()
1838 pdi = cdns_find_pdi(cdns, 2, stream->num_bd, stream->bd, in sdw_cdns_alloc_pdi()
1841 if (pdi) { in sdw_cdns_alloc_pdi()
1842 pdi->l_ch_num = 0; in sdw_cdns_alloc_pdi()
1843 pdi->h_ch_num = ch - 1; in sdw_cdns_alloc_pdi()
1844 pdi->dir = dir; in sdw_cdns_alloc_pdi()
1845 pdi->ch_count = ch; in sdw_cdns_alloc_pdi()
1848 return pdi; in sdw_cdns_alloc_pdi()