/linux-6.12.1/sound/soc/amd/renoir/ |
D | acp3x-pdm-dma.c | 55 val = rn_readl(rn_pdm_data->acp_base + ACP_EXTERNAL_INTR_STAT); in pdm_irq_handler() 57 rn_writel(BIT(PDM_DMA_STAT), rn_pdm_data->acp_base + in pdm_irq_handler() 72 void __iomem *acp_base) in init_pdm_ring_buffer() argument 74 rn_writel(physical_addr, acp_base + ACP_WOV_RX_RINGBUFADDR); in init_pdm_ring_buffer() 75 rn_writel(buffer_size, acp_base + ACP_WOV_RX_RINGBUFSIZE); in init_pdm_ring_buffer() 76 rn_writel(watermark_size, acp_base + ACP_WOV_RX_INTR_WATERMARK_SIZE); in init_pdm_ring_buffer() 77 rn_writel(0x01, acp_base + ACPAXI2AXI_ATU_CTRL); in init_pdm_ring_buffer() 80 static void enable_pdm_clock(void __iomem *acp_base) in enable_pdm_clock() argument 86 rn_writel(pdm_clk_enable, acp_base + ACP_WOV_CLK_CTRL); in enable_pdm_clock() 87 pdm_ctrl = rn_readl(acp_base + ACP_WOV_MISC_CTRL); in enable_pdm_clock() [all …]
|
D | rn-pci-acp3x.c | 33 void __iomem *acp_base; member 38 static int rn_acp_power_on(void __iomem *acp_base) in rn_acp_power_on() argument 43 val = rn_readl(acp_base + ACP_PGFSM_STATUS); in rn_acp_power_on() 51 acp_base + ACP_PGFSM_CONTROL); in rn_acp_power_on() 54 val = rn_readl(acp_base + ACP_PGFSM_STATUS); in rn_acp_power_on() 62 static int rn_acp_power_off(void __iomem *acp_base) in rn_acp_power_off() argument 68 acp_base + ACP_PGFSM_CONTROL); in rn_acp_power_off() 71 val = rn_readl(acp_base + ACP_PGFSM_STATUS); in rn_acp_power_off() 79 static int rn_acp_reset(void __iomem *acp_base) in rn_acp_reset() argument 84 rn_writel(1, acp_base + ACP_SOFT_RESET); in rn_acp_reset() [all …]
|
D | rn_acp3x.h | 62 void __iomem *acp_base; member 71 void __iomem *acp_base; member
|
/linux-6.12.1/sound/soc/amd/yc/ |
D | pci-acp6x.c | 26 static int acp6x_power_on(void __iomem *acp_base) in acp6x_power_on() argument 31 val = acp6x_readl(acp_base + ACP_PGFSM_STATUS); in acp6x_power_on() 37 acp6x_writel(ACP_PGFSM_CNTL_POWER_ON_MASK, acp_base + ACP_PGFSM_CONTROL); in acp6x_power_on() 40 val = acp6x_readl(acp_base + ACP_PGFSM_STATUS); in acp6x_power_on() 48 static int acp6x_reset(void __iomem *acp_base) in acp6x_reset() argument 53 acp6x_writel(1, acp_base + ACP_SOFT_RESET); in acp6x_reset() 56 val = acp6x_readl(acp_base + ACP_SOFT_RESET); in acp6x_reset() 61 acp6x_writel(0, acp_base + ACP_SOFT_RESET); in acp6x_reset() 64 val = acp6x_readl(acp_base + ACP_SOFT_RESET); in acp6x_reset() 72 static void acp6x_enable_interrupts(void __iomem *acp_base) in acp6x_enable_interrupts() argument [all …]
|
D | acp6x-pdm-dma.c | 46 u32 watermark_size, void __iomem *acp_base) in acp6x_init_pdm_ring_buffer() argument 48 acp6x_writel(physical_addr, acp_base + ACP_WOV_RX_RINGBUFADDR); in acp6x_init_pdm_ring_buffer() 49 acp6x_writel(buffer_size, acp_base + ACP_WOV_RX_RINGBUFSIZE); in acp6x_init_pdm_ring_buffer() 50 acp6x_writel(watermark_size, acp_base + ACP_WOV_RX_INTR_WATERMARK_SIZE); in acp6x_init_pdm_ring_buffer() 51 acp6x_writel(0x01, acp_base + ACPAXI2AXI_ATU_CTRL); in acp6x_init_pdm_ring_buffer() 54 static void acp6x_enable_pdm_clock(void __iomem *acp_base) in acp6x_enable_pdm_clock() argument 61 acp6x_writel(pdm_clk_enable, acp_base + ACP_WOV_CLK_CTRL); in acp6x_enable_pdm_clock() 62 pdm_ctrl = acp6x_readl(acp_base + ACP_WOV_MISC_CTRL); in acp6x_enable_pdm_clock() 65 acp6x_writel(pdm_ctrl, acp_base + ACP_WOV_MISC_CTRL); in acp6x_enable_pdm_clock() 68 static void acp6x_enable_pdm_interrupts(void __iomem *acp_base) in acp6x_enable_pdm_interrupts() argument [all …]
|
/linux-6.12.1/sound/soc/amd/rpl/ |
D | rpl-pci-acp6x.c | 21 static int rpl_power_on(void __iomem *acp_base) in rpl_power_on() argument 26 val = rpl_acp_readl(acp_base + ACP_PGFSM_STATUS); in rpl_power_on() 32 rpl_acp_writel(ACP_PGFSM_CNTL_POWER_ON_MASK, acp_base + ACP_PGFSM_CONTROL); in rpl_power_on() 35 val = rpl_acp_readl(acp_base + ACP_PGFSM_STATUS); in rpl_power_on() 43 static int rpl_reset(void __iomem *acp_base) in rpl_reset() argument 48 rpl_acp_writel(1, acp_base + ACP_SOFT_RESET); in rpl_reset() 51 val = rpl_acp_readl(acp_base + ACP_SOFT_RESET); in rpl_reset() 56 rpl_acp_writel(0, acp_base + ACP_SOFT_RESET); in rpl_reset() 59 val = rpl_acp_readl(acp_base + ACP_SOFT_RESET); in rpl_reset() 67 static int rpl_init(void __iomem *acp_base) in rpl_init() argument [all …]
|
/linux-6.12.1/sound/soc/amd/acp/ |
D | acp-pdm.c | 40 writel(PDM_CLK_FREQ_MASK, adata->acp_base + ACP_WOV_CLK_CTRL); in acp_dmic_prepare() 41 dmic_ctrl = readl(adata->acp_base + ACP_WOV_MISC_CTRL); in acp_dmic_prepare() 43 writel(dmic_ctrl, adata->acp_base + ACP_WOV_MISC_CTRL); in acp_dmic_prepare() 56 writel(physical_addr, adata->acp_base + ACP_WOV_RX_RINGBUFADDR); in acp_dmic_prepare() 57 writel(size_dmic, adata->acp_base + ACP_WOV_RX_RINGBUFSIZE); in acp_dmic_prepare() 58 writel(period_bytes, adata->acp_base + ACP_WOV_RX_INTR_WATERMARK_SIZE); in acp_dmic_prepare() 59 writel(0x01, adata->acp_base + ACPAXI2AXI_ATU_CTRL); in acp_dmic_prepare() 76 dma_enable = readl(adata->acp_base + ACP_WOV_PDM_DMA_ENABLE); in acp_dmic_dai_trigger() 78 writel(PDM_ENABLE, adata->acp_base + ACP_WOV_PDM_ENABLE); in acp_dmic_dai_trigger() 79 writel(PDM_ENABLE, adata->acp_base + ACP_WOV_PDM_DMA_ENABLE); in acp_dmic_dai_trigger() [all …]
|
D | acp-i2s.c | 72 writel(val, adata->acp_base + i2s_clk_reg); in acp_set_i2s_clk() 264 val = readl(adata->acp_base + reg_val); in acp_i2s_hwparams() 267 writel(val, adata->acp_base + reg_val); in acp_i2s_hwparams() 270 val = readl(adata->acp_base + reg_val); in acp_i2s_hwparams() 271 writel(val | BIT(1), adata->acp_base + reg_val); in acp_i2s_hwparams() 276 writel(tdm_fmt, adata->acp_base + fmt_reg); in acp_i2s_hwparams() 451 writel(period_bytes, adata->acp_base + water_val); in acp_i2s_trigger() 452 writel(buf_size, adata->acp_base + buf_reg); in acp_i2s_trigger() 455 val = readl(adata->acp_base + reg_val); in acp_i2s_trigger() 457 writel(val, adata->acp_base + reg_val); in acp_i2s_trigger() [all …]
|
D | amd.h | 183 void __iomem *acp_base; member 270 high = readl(adata->acp_base + ACP_BT_TX_LINEARPOSITIONCNTR_HIGH(adata)); in acp_get_byte_count() 271 low = readl(adata->acp_base + ACP_BT_TX_LINEARPOSITIONCNTR_LOW(adata)); in acp_get_byte_count() 274 high = readl(adata->acp_base + ACP_I2S_TX_LINEARPOSITIONCNTR_HIGH(adata)); in acp_get_byte_count() 275 low = readl(adata->acp_base + ACP_I2S_TX_LINEARPOSITIONCNTR_LOW(adata)); in acp_get_byte_count() 278 high = readl(adata->acp_base + ACP_HS_TX_LINEARPOSITIONCNTR_HIGH); in acp_get_byte_count() 279 low = readl(adata->acp_base + ACP_HS_TX_LINEARPOSITIONCNTR_LOW); in acp_get_byte_count() 288 high = readl(adata->acp_base + ACP_BT_RX_LINEARPOSITIONCNTR_HIGH(adata)); in acp_get_byte_count() 289 low = readl(adata->acp_base + ACP_BT_RX_LINEARPOSITIONCNTR_LOW(adata)); in acp_get_byte_count() 292 high = readl(adata->acp_base + ACP_I2S_RX_LINEARPOSITIONCNTR_HIGH(adata)); in acp_get_byte_count() [all …]
|
D | acp-legacy-common.c | 60 writel(physical_addr, adata->acp_base + ACP_WOV_RX_RINGBUFADDR); in set_acp_pdm_ring_buffer() 61 writel(pdm_size, adata->acp_base + ACP_WOV_RX_RINGBUFSIZE); in set_acp_pdm_ring_buffer() 62 writel(period_bytes, adata->acp_base + ACP_WOV_RX_INTR_WATERMARK_SIZE); in set_acp_pdm_ring_buffer() 63 writel(0x01, adata->acp_base + ACPAXI2AXI_ATU_CTRL); in set_acp_pdm_ring_buffer() 74 writel(PDM_CLK_FREQ_MASK, adata->acp_base + ACP_WOV_CLK_CTRL); in set_acp_pdm_clk() 75 pdm_ctrl = readl(adata->acp_base + ACP_WOV_MISC_CTRL); in set_acp_pdm_clk() 77 writel(pdm_ctrl, adata->acp_base + ACP_WOV_MISC_CTRL); in set_acp_pdm_clk() 91 writel(adata->ch_mask, adata->acp_base + ACP_WOV_PDM_NO_OF_CHANNELS); in restore_acp_pdm_params() 92 writel(PDM_DEC_64, adata->acp_base + ACP_WOV_PDM_DECIMATION_FACTOR); in restore_acp_pdm_params() 122 writel(phy_addr, adata->acp_base + ACP_I2S_TX_RINGBUFADDR(adata)); in set_acp_i2s_dma_fifo() [all …]
|
D | acp-platform.c | 185 writel((reg_val + GRP1_OFFSET) | BIT(31), adata->acp_base + ACPAXI2AXI_ATU_BASE_ADDR_GRP_1); in config_pte_for_stream() 186 writel(PAGE_SIZE_4K_ENABLE, adata->acp_base + ACPAXI2AXI_ATU_PAGE_SIZE_GRP_1); in config_pte_for_stream() 188 writel((reg_val + GRP2_OFFSET) | BIT(31), adata->acp_base + ACPAXI2AXI_ATU_BASE_ADDR_GRP_2); in config_pte_for_stream() 189 writel(PAGE_SIZE_4K_ENABLE, adata->acp_base + ACPAXI2AXI_ATU_PAGE_SIZE_GRP_2); in config_pte_for_stream() 191 writel(reg_val | BIT(31), adata->acp_base + ACPAXI2AXI_ATU_BASE_ADDR_GRP_5); in config_pte_for_stream() 192 writel(PAGE_SIZE_4K_ENABLE, adata->acp_base + ACPAXI2AXI_ATU_PAGE_SIZE_GRP_5); in config_pte_for_stream() 194 writel(0x01, adata->acp_base + ACPAXI2AXI_ATU_CTRL); in config_pte_for_stream() 246 writel(low, adata->acp_base + rsrc->scratch_reg_offset + val); in config_acp_dma() 248 writel(high, adata->acp_base + rsrc->scratch_reg_offset + val + 4); in config_acp_dma()
|
D | acp-renoir.c | 175 adata->acp_base = devm_ioremap(&pdev->dev, res->start, resource_size(res)); in renoir_audio_probe() 176 if (!adata->acp_base) in renoir_audio_probe()
|
D | acp70.c | 196 adata->acp_base = devm_ioremap(&pdev->dev, res->start, resource_size(res)); in acp_acp70_audio_probe() 197 if (!adata->acp_base) in acp_acp70_audio_probe()
|
D | acp-rembrandt.c | 215 adata->acp_base = devm_ioremap(&pdev->dev, res->start, resource_size(res)); in rembrandt_audio_probe() 216 if (!adata->acp_base) in rembrandt_audio_probe()
|
D | acp63.c | 225 adata->acp_base = devm_ioremap(&pdev->dev, res->start, resource_size(res)); in acp63_audio_probe() 226 if (!adata->acp_base) in acp63_audio_probe()
|
D | chip_offset_byte.h | 33 (adata->acp_base + adata->rsrc->irq_reg_offset + offset + (ctrl * 0x04))
|
/linux-6.12.1/sound/soc/amd/ps/ |
D | ps-sdw-dma.c | 117 static void acp63_enable_disable_sdw_dma_interrupts(void __iomem *acp_base, bool enable) in acp63_enable_disable_sdw_dma_interrupts() argument 124 ext_intr_cntl = readl(acp_base + ACP_EXTERNAL_INTR_CNTL); in acp63_enable_disable_sdw_dma_interrupts() 126 writel(ext_intr_cntl, acp_base + ACP_EXTERNAL_INTR_CNTL); in acp63_enable_disable_sdw_dma_interrupts() 127 ext_intr_cntl1 = readl(acp_base + ACP_EXTERNAL_INTR_CNTL1); in acp63_enable_disable_sdw_dma_interrupts() 129 writel(ext_intr_cntl1, acp_base + ACP_EXTERNAL_INTR_CNTL1); in acp63_enable_disable_sdw_dma_interrupts() 131 ext_intr_cntl = readl(acp_base + ACP_EXTERNAL_INTR_CNTL); in acp63_enable_disable_sdw_dma_interrupts() 133 writel(ext_intr_cntl, acp_base + ACP_EXTERNAL_INTR_CNTL); in acp63_enable_disable_sdw_dma_interrupts() 134 ext_intr_cntl1 = readl(acp_base + ACP_EXTERNAL_INTR_CNTL1); in acp63_enable_disable_sdw_dma_interrupts() 136 writel(ext_intr_cntl1, acp_base + ACP_EXTERNAL_INTR_CNTL1); in acp63_enable_disable_sdw_dma_interrupts() 140 static void acp63_config_dma(struct acp_sdw_dma_stream *stream, void __iomem *acp_base, in acp63_config_dma() argument [all …]
|
D | ps-pdm-dma.c | 46 u32 watermark_size, void __iomem *acp_base) in acp63_init_pdm_ring_buffer() argument 48 writel(physical_addr, acp_base + ACP_WOV_RX_RINGBUFADDR); in acp63_init_pdm_ring_buffer() 49 writel(buffer_size, acp_base + ACP_WOV_RX_RINGBUFSIZE); in acp63_init_pdm_ring_buffer() 50 writel(watermark_size, acp_base + ACP_WOV_RX_INTR_WATERMARK_SIZE); in acp63_init_pdm_ring_buffer() 51 writel(0x01, acp_base + ACPAXI2AXI_ATU_CTRL); in acp63_init_pdm_ring_buffer() 54 static void acp63_enable_pdm_clock(void __iomem *acp_base) in acp63_enable_pdm_clock() argument 61 writel(pdm_clk_enable, acp_base + ACP_WOV_CLK_CTRL); in acp63_enable_pdm_clock() 62 pdm_ctrl = readl(acp_base + ACP_WOV_MISC_CTRL); in acp63_enable_pdm_clock() 65 writel(pdm_ctrl, acp_base + ACP_WOV_MISC_CTRL); in acp63_enable_pdm_clock() 90 static bool acp63_check_pdm_dma_status(void __iomem *acp_base) in acp63_check_pdm_dma_status() argument [all …]
|
D | pci-ps.c | 24 static int acp63_power_on(void __iomem *acp_base) in acp63_power_on() argument 28 val = readl(acp_base + ACP_PGFSM_STATUS); in acp63_power_on() 34 writel(ACP_PGFSM_CNTL_POWER_ON_MASK, acp_base + ACP_PGFSM_CONTROL); in acp63_power_on() 36 return readl_poll_timeout(acp_base + ACP_PGFSM_STATUS, val, !val, DELAY_US, ACP_TIMEOUT); in acp63_power_on() 39 static int acp63_reset(void __iomem *acp_base) in acp63_reset() argument 44 writel(1, acp_base + ACP_SOFT_RESET); in acp63_reset() 46 ret = readl_poll_timeout(acp_base + ACP_SOFT_RESET, val, in acp63_reset() 52 writel(0, acp_base + ACP_SOFT_RESET); in acp63_reset() 54 return readl_poll_timeout(acp_base + ACP_SOFT_RESET, val, !val, DELAY_US, ACP_TIMEOUT); in acp63_reset() 57 static void acp63_enable_interrupts(void __iomem *acp_base) in acp63_enable_interrupts() argument [all …]
|
D | acp63.h | 181 void __iomem *acp_base; member
|
/linux-6.12.1/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_acp.c | 228 u64 acp_base; in acp_hw_init() local 254 acp_base = adev->rmmio_base; in acp_hw_init() 297 adev->acp.acp_res[0].start = acp_base; in acp_hw_init() 298 adev->acp.acp_res[0].end = acp_base + ACP_DMA_REGS_END; in acp_hw_init() 302 adev->acp.acp_res[1].start = acp_base + ACP_I2S_CAP_REGS_START; in acp_hw_init() 303 adev->acp.acp_res[1].end = acp_base + ACP_I2S_CAP_REGS_END; in acp_hw_init() 395 adev->acp.acp_res[0].start = acp_base; in acp_hw_init() 396 adev->acp.acp_res[0].end = acp_base + ACP_DMA_REGS_END; in acp_hw_init() 400 adev->acp.acp_res[1].start = acp_base + ACP_I2S_PLAY_REGS_START; in acp_hw_init() 401 adev->acp.acp_res[1].end = acp_base + ACP_I2S_PLAY_REGS_END; in acp_hw_init() [all …]
|
/linux-6.12.1/sound/soc/amd/raven/ |
D | pci-acp3x.c | 79 static void acp3x_enable_interrupts(void __iomem *acp_base) in acp3x_enable_interrupts() argument 81 rv_writel(0x01, acp_base + mmACP_EXTERNAL_INTR_ENB); in acp3x_enable_interrupts() 84 static void acp3x_disable_interrupts(void __iomem *acp_base) in acp3x_disable_interrupts() argument 86 rv_writel(ACP_EXT_INTR_STAT_CLEAR_MASK, acp_base + in acp3x_disable_interrupts() 88 rv_writel(0x00, acp_base + mmACP_EXTERNAL_INTR_CNTL); in acp3x_disable_interrupts() 89 rv_writel(0x00, acp_base + mmACP_EXTERNAL_INTR_ENB); in acp3x_disable_interrupts()
|