acp_mmio 118 sound/soc/amd/acp-pcm-dma.c static u32 acp_reg_read(void __iomem *acp_mmio, u32 reg) acp_mmio 120 sound/soc/amd/acp-pcm-dma.c return readl(acp_mmio + (reg * 4)); acp_mmio 123 sound/soc/amd/acp-pcm-dma.c static void acp_reg_write(u32 val, void __iomem *acp_mmio, u32 reg) acp_mmio 125 sound/soc/amd/acp-pcm-dma.c writel(val, acp_mmio + (reg * 4)); acp_mmio 132 sound/soc/amd/acp-pcm-dma.c static void config_acp_dma_channel(void __iomem *acp_mmio, u8 ch_num, acp_mmio 139 sound/soc/amd/acp-pcm-dma.c dma_ctrl = acp_reg_read(acp_mmio, mmACP_DMA_CNTL_0 + ch_num); acp_mmio 141 sound/soc/amd/acp-pcm-dma.c acp_reg_write(dma_ctrl, acp_mmio, mmACP_DMA_CNTL_0 + ch_num); acp_mmio 146 sound/soc/amd/acp-pcm-dma.c acp_mmio, mmACP_DMA_DSCR_STRT_IDX_0 + ch_num); acp_mmio 153 sound/soc/amd/acp-pcm-dma.c acp_mmio, mmACP_DMA_DSCR_CNT_0 + ch_num); acp_mmio 156 sound/soc/amd/acp-pcm-dma.c acp_reg_write(priority_level, acp_mmio, mmACP_DMA_PRIO_0 + ch_num); acp_mmio 160 sound/soc/amd/acp-pcm-dma.c static void config_dma_descriptor_in_sram(void __iomem *acp_mmio, acp_mmio 169 sound/soc/amd/acp-pcm-dma.c acp_reg_write(sram_offset, acp_mmio, mmACP_SRBM_Targ_Idx_Addr); acp_mmio 170 sound/soc/amd/acp-pcm-dma.c acp_reg_write(descr_info->src, acp_mmio, mmACP_SRBM_Targ_Idx_Data); acp_mmio 172 sound/soc/amd/acp-pcm-dma.c acp_reg_write(sram_offset + 4, acp_mmio, mmACP_SRBM_Targ_Idx_Addr); acp_mmio 173 sound/soc/amd/acp-pcm-dma.c acp_reg_write(descr_info->dest, acp_mmio, mmACP_SRBM_Targ_Idx_Data); acp_mmio 176 sound/soc/amd/acp-pcm-dma.c acp_reg_write(sram_offset + 8, acp_mmio, mmACP_SRBM_Targ_Idx_Addr); acp_mmio 177 sound/soc/amd/acp-pcm-dma.c acp_reg_write(descr_info->xfer_val, acp_mmio, mmACP_SRBM_Targ_Idx_Data); acp_mmio 180 sound/soc/amd/acp-pcm-dma.c static void pre_config_reset(void __iomem *acp_mmio, u16 ch_num) acp_mmio 186 sound/soc/amd/acp-pcm-dma.c dma_ctrl = acp_reg_read(acp_mmio, mmACP_DMA_CNTL_0 + ch_num); acp_mmio 188 sound/soc/amd/acp-pcm-dma.c acp_reg_write(dma_ctrl, acp_mmio, mmACP_DMA_CNTL_0 + ch_num); acp_mmio 190 sound/soc/amd/acp-pcm-dma.c ret = readl_poll_timeout(acp_mmio + ((mmACP_DMA_CNTL_0 + ch_num) * 4), acp_mmio 202 sound/soc/amd/acp-pcm-dma.c static void set_acp_sysmem_dma_descriptors(void __iomem *acp_mmio, acp_mmio 247 sound/soc/amd/acp-pcm-dma.c config_dma_descriptor_in_sram(acp_mmio, dma_dscr_idx, acp_mmio 250 sound/soc/amd/acp-pcm-dma.c pre_config_reset(acp_mmio, ch); acp_mmio 251 sound/soc/amd/acp-pcm-dma.c config_acp_dma_channel(acp_mmio, ch, acp_mmio 261 sound/soc/amd/acp-pcm-dma.c static void set_acp_to_i2s_dma_descriptors(void __iomem *acp_mmio, u32 size, acp_mmio 287 sound/soc/amd/acp-pcm-dma.c config_dma_descriptor_in_sram(acp_mmio, dma_dscr_idx, acp_mmio 290 sound/soc/amd/acp-pcm-dma.c pre_config_reset(acp_mmio, ch); acp_mmio 292 sound/soc/amd/acp-pcm-dma.c config_acp_dma_channel(acp_mmio, ch, dma_dscr_idx - 1, acp_mmio 298 sound/soc/amd/acp-pcm-dma.c static void acp_pte_config(void __iomem *acp_mmio, dma_addr_t addr, acp_mmio 310 sound/soc/amd/acp-pcm-dma.c acp_mmio, mmACP_SRBM_Targ_Idx_Addr); acp_mmio 315 sound/soc/amd/acp-pcm-dma.c acp_reg_write(low, acp_mmio, mmACP_SRBM_Targ_Idx_Data); acp_mmio 319 sound/soc/amd/acp-pcm-dma.c acp_mmio, mmACP_SRBM_Targ_Idx_Addr); acp_mmio 323 sound/soc/amd/acp-pcm-dma.c acp_reg_write(high, acp_mmio, mmACP_SRBM_Targ_Idx_Data); acp_mmio 330 sound/soc/amd/acp-pcm-dma.c static void config_acp_dma(void __iomem *acp_mmio, acp_mmio 336 sound/soc/amd/acp-pcm-dma.c acp_pte_config(acp_mmio, rtd->dma_addr, rtd->num_of_pages, acp_mmio 347 sound/soc/amd/acp-pcm-dma.c set_acp_sysmem_dma_descriptors(acp_mmio, rtd->size, acp_mmio 352 sound/soc/amd/acp-pcm-dma.c set_acp_to_i2s_dma_descriptors(acp_mmio, rtd->size, acp_mmio 358 sound/soc/amd/acp-pcm-dma.c static void acp_dma_cap_channel_enable(void __iomem *acp_mmio, acp_mmio 376 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, acp_mmio 379 sound/soc/amd/acp-pcm-dma.c acp_reg_write(0x0, acp_mmio, ch_reg); acp_mmio 381 sound/soc/amd/acp-pcm-dma.c acp_reg_write(0x2, acp_mmio, res_reg); acp_mmio 383 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, imr_reg); acp_mmio 386 sound/soc/amd/acp-pcm-dma.c acp_reg_write(val, acp_mmio, imr_reg); acp_mmio 387 sound/soc/amd/acp-pcm-dma.c acp_reg_write(0x1, acp_mmio, ch_reg); acp_mmio 390 sound/soc/amd/acp-pcm-dma.c static void acp_dma_cap_channel_disable(void __iomem *acp_mmio, acp_mmio 406 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, imr_reg); acp_mmio 409 sound/soc/amd/acp-pcm-dma.c acp_reg_write(val, acp_mmio, imr_reg); acp_mmio 410 sound/soc/amd/acp-pcm-dma.c acp_reg_write(0x0, acp_mmio, ch_reg); acp_mmio 414 sound/soc/amd/acp-pcm-dma.c static void acp_dma_start(void __iomem *acp_mmio, u16 ch_num, bool is_circular) acp_mmio 419 sound/soc/amd/acp-pcm-dma.c dma_ctrl = acp_reg_read(acp_mmio, mmACP_DMA_CNTL_0 + ch_num); acp_mmio 422 sound/soc/amd/acp-pcm-dma.c acp_reg_write(1, acp_mmio, mmACP_DAGB_ATU_CTRL); acp_mmio 449 sound/soc/amd/acp-pcm-dma.c acp_reg_write(dma_ctrl, acp_mmio, mmACP_DMA_CNTL_0 + ch_num); acp_mmio 453 sound/soc/amd/acp-pcm-dma.c static int acp_dma_stop(void __iomem *acp_mmio, u8 ch_num) acp_mmio 459 sound/soc/amd/acp-pcm-dma.c dma_ctrl = acp_reg_read(acp_mmio, mmACP_DMA_CNTL_0 + ch_num); acp_mmio 468 sound/soc/amd/acp-pcm-dma.c acp_reg_write(dma_ctrl, acp_mmio, mmACP_DMA_CNTL_0 + ch_num); acp_mmio 469 sound/soc/amd/acp-pcm-dma.c dma_ch_sts = acp_reg_read(acp_mmio, mmACP_DMA_CH_STS); acp_mmio 477 sound/soc/amd/acp-pcm-dma.c acp_reg_write(dma_ctrl, acp_mmio, mmACP_DMA_CNTL_0 + ch_num); acp_mmio 482 sound/soc/amd/acp-pcm-dma.c dma_ch_sts = acp_reg_read(acp_mmio, mmACP_DMA_CH_STS); acp_mmio 490 sound/soc/amd/acp-pcm-dma.c acp_reg_write(dma_ctrl, acp_mmio, mmACP_DMA_CNTL_0 acp_mmio 503 sound/soc/amd/acp-pcm-dma.c static void acp_set_sram_bank_state(void __iomem *acp_mmio, u16 bank, acp_mmio 521 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, req_reg); acp_mmio 539 sound/soc/amd/acp-pcm-dma.c acp_reg_write(val, acp_mmio, req_reg); acp_mmio 541 sound/soc/amd/acp-pcm-dma.c while (acp_reg_read(acp_mmio, sts_reg) != sts_reg_mask) { acp_mmio 551 sound/soc/amd/acp-pcm-dma.c static int acp_init(void __iomem *acp_mmio, u32 asic_type) acp_mmio 557 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, mmACP_SOFT_RESET); acp_mmio 560 sound/soc/amd/acp-pcm-dma.c acp_reg_write(val, acp_mmio, mmACP_SOFT_RESET); acp_mmio 564 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, mmACP_SOFT_RESET); acp_mmio 576 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, mmACP_CONTROL); acp_mmio 578 sound/soc/amd/acp-pcm-dma.c acp_reg_write(val, acp_mmio, mmACP_CONTROL); acp_mmio 583 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, mmACP_STATUS); acp_mmio 594 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, mmACP_SOFT_RESET); acp_mmio 596 sound/soc/amd/acp-pcm-dma.c acp_reg_write(val, acp_mmio, mmACP_SOFT_RESET); acp_mmio 600 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, mmACP_BT_UART_PAD_SEL); acp_mmio 602 sound/soc/amd/acp-pcm-dma.c acp_reg_write(val, acp_mmio, mmACP_BT_UART_PAD_SEL); acp_mmio 606 sound/soc/amd/acp-pcm-dma.c acp_reg_write(ACP_ONION_CNTL_DEFAULT, acp_mmio, acp_mmio 610 sound/soc/amd/acp-pcm-dma.c acp_reg_write(ACP_GARLIC_CNTL_DEFAULT, acp_mmio, acp_mmio 617 sound/soc/amd/acp-pcm-dma.c acp_reg_write(sram_pte_offset, acp_mmio, mmACP_DAGB_BASE_ADDR_GRP_1); acp_mmio 618 sound/soc/amd/acp-pcm-dma.c acp_reg_write(ACP_PAGE_SIZE_4K_ENABLE, acp_mmio, acp_mmio 621 sound/soc/amd/acp-pcm-dma.c acp_reg_write(ACP_SRAM_BASE_ADDRESS, acp_mmio, acp_mmio 625 sound/soc/amd/acp-pcm-dma.c acp_reg_write(0x4, acp_mmio, mmACP_DMA_DESC_MAX_NUM_DSCR); acp_mmio 627 sound/soc/amd/acp-pcm-dma.c acp_mmio, mmACP_EXTERNAL_INTR_CNTL); acp_mmio 639 sound/soc/amd/acp-pcm-dma.c acp_set_sram_bank_state(acp_mmio, bank, false); acp_mmio 645 sound/soc/amd/acp-pcm-dma.c static int acp_deinit(void __iomem *acp_mmio) acp_mmio 651 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, mmACP_SOFT_RESET); acp_mmio 654 sound/soc/amd/acp-pcm-dma.c acp_reg_write(val, acp_mmio, mmACP_SOFT_RESET); acp_mmio 658 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, mmACP_SOFT_RESET); acp_mmio 669 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, mmACP_CONTROL); acp_mmio 671 sound/soc/amd/acp-pcm-dma.c acp_reg_write(val, acp_mmio, mmACP_CONTROL); acp_mmio 676 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(acp_mmio, mmACP_STATUS); acp_mmio 694 sound/soc/amd/acp-pcm-dma.c void __iomem *acp_mmio; acp_mmio 699 sound/soc/amd/acp-pcm-dma.c acp_mmio = irq_data->acp_mmio; acp_mmio 701 sound/soc/amd/acp-pcm-dma.c ext_intr_status = acp_reg_read(acp_mmio, mmACP_EXTERNAL_INTR_STAT); acp_mmio 710 sound/soc/amd/acp-pcm-dma.c acp_mmio, mmACP_EXTERNAL_INTR_STAT); acp_mmio 718 sound/soc/amd/acp-pcm-dma.c acp_mmio, mmACP_EXTERNAL_INTR_STAT); acp_mmio 723 sound/soc/amd/acp-pcm-dma.c if (acp_reg_read(acp_mmio, mmACP_DMA_CUR_DSCR_14) == acp_mmio 728 sound/soc/amd/acp-pcm-dma.c config_acp_dma_channel(acp_mmio, ACP_TO_SYSRAM_CH_NUM, dscr_idx, acp_mmio 730 sound/soc/amd/acp-pcm-dma.c acp_dma_start(acp_mmio, ACP_TO_SYSRAM_CH_NUM, false); acp_mmio 734 sound/soc/amd/acp-pcm-dma.c acp_mmio, mmACP_EXTERNAL_INTR_STAT); acp_mmio 739 sound/soc/amd/acp-pcm-dma.c if (acp_reg_read(acp_mmio, mmACP_DMA_CUR_DSCR_10) == acp_mmio 744 sound/soc/amd/acp-pcm-dma.c config_acp_dma_channel(acp_mmio, acp_mmio 747 sound/soc/amd/acp-pcm-dma.c acp_dma_start(acp_mmio, ACP_TO_SYSRAM_BT_INSTANCE_CH_NUM, acp_mmio 753 sound/soc/amd/acp-pcm-dma.c acp_mmio, mmACP_EXTERNAL_INTR_STAT); acp_mmio 802 sound/soc/amd/acp-pcm-dma.c adata->acp_mmio = intr_data->acp_mmio; acp_mmio 813 sound/soc/amd/acp-pcm-dma.c acp_reg_write(1, adata->acp_mmio, mmACP_EXTERNAL_INTR_ENB); acp_mmio 823 sound/soc/amd/acp-pcm-dma.c acp_set_sram_bank_state(intr_data->acp_mmio, acp_mmio 829 sound/soc/amd/acp-pcm-dma.c acp_set_sram_bank_state(intr_data->acp_mmio, acp_mmio 867 sound/soc/amd/acp-pcm-dma.c val = acp_reg_read(adata->acp_mmio, acp_mmio 888 sound/soc/amd/acp-pcm-dma.c acp_reg_write(val, adata->acp_mmio, acp_mmio 980 sound/soc/amd/acp-pcm-dma.c acp_set_sram_bank_state(rtd->acp_mmio, 0, true); acp_mmio 990 sound/soc/amd/acp-pcm-dma.c config_acp_dma(rtd->acp_mmio, rtd, adata->asic_type); acp_mmio 1007 sound/soc/amd/acp-pcm-dma.c byte_count.bcount.high = acp_reg_read(rtd->acp_mmio, acp_mmio 1009 sound/soc/amd/acp-pcm-dma.c byte_count.bcount.low = acp_reg_read(rtd->acp_mmio, acp_mmio 1036 sound/soc/amd/acp-pcm-dma.c dscr = acp_reg_read(rtd->acp_mmio, rtd->dma_curr_dscr); acp_mmio 1078 sound/soc/amd/acp-pcm-dma.c config_acp_dma_channel(rtd->acp_mmio, acp_mmio 1082 sound/soc/amd/acp-pcm-dma.c config_acp_dma_channel(rtd->acp_mmio, acp_mmio 1105 sound/soc/amd/acp-pcm-dma.c acp_dma_cap_channel_disable(rtd->acp_mmio, acp_mmio 1107 sound/soc/amd/acp-pcm-dma.c acp_dma_cap_channel_enable(rtd->acp_mmio, acp_mmio 1111 sound/soc/amd/acp-pcm-dma.c acp_dma_cap_channel_disable(rtd->acp_mmio, acp_mmio 1113 sound/soc/amd/acp-pcm-dma.c acp_dma_cap_channel_enable(rtd->acp_mmio, acp_mmio 1116 sound/soc/amd/acp-pcm-dma.c acp_dma_start(rtd->acp_mmio, rtd->ch1, true); acp_mmio 1118 sound/soc/amd/acp-pcm-dma.c acp_dma_start(rtd->acp_mmio, rtd->ch1, true); acp_mmio 1119 sound/soc/amd/acp-pcm-dma.c acp_dma_start(rtd->acp_mmio, rtd->ch2, true); acp_mmio 1126 sound/soc/amd/acp-pcm-dma.c acp_dma_stop(rtd->acp_mmio, rtd->ch2); acp_mmio 1127 sound/soc/amd/acp-pcm-dma.c ret = acp_dma_stop(rtd->acp_mmio, rtd->ch1); acp_mmio 1188 sound/soc/amd/acp-pcm-dma.c acp_set_sram_bank_state(adata->acp_mmio, acp_mmio 1202 sound/soc/amd/acp-pcm-dma.c acp_set_sram_bank_state(adata->acp_mmio, acp_mmio 1214 sound/soc/amd/acp-pcm-dma.c acp_reg_write(0, adata->acp_mmio, mmACP_EXTERNAL_INTR_ENB); acp_mmio 1254 sound/soc/amd/acp-pcm-dma.c audio_drv_data->acp_mmio = devm_platform_ioremap_resource(pdev, 0); acp_mmio 1255 sound/soc/amd/acp-pcm-dma.c if (IS_ERR(audio_drv_data->acp_mmio)) acp_mmio 1256 sound/soc/amd/acp-pcm-dma.c return PTR_ERR(audio_drv_data->acp_mmio); acp_mmio 1287 sound/soc/amd/acp-pcm-dma.c status = acp_init(audio_drv_data->acp_mmio, audio_drv_data->asic_type); acp_mmio 1312 sound/soc/amd/acp-pcm-dma.c status = acp_deinit(adata->acp_mmio); acp_mmio 1327 sound/soc/amd/acp-pcm-dma.c status = acp_init(adata->acp_mmio, adata->asic_type); acp_mmio 1341 sound/soc/amd/acp-pcm-dma.c acp_set_sram_bank_state(adata->acp_mmio, bank, acp_mmio 1345 sound/soc/amd/acp-pcm-dma.c config_acp_dma(adata->acp_mmio, rtd, adata->asic_type); acp_mmio 1351 sound/soc/amd/acp-pcm-dma.c acp_set_sram_bank_state(adata->acp_mmio, bank, acp_mmio 1355 sound/soc/amd/acp-pcm-dma.c config_acp_dma(adata->acp_mmio, rtd, adata->asic_type); acp_mmio 1361 sound/soc/amd/acp-pcm-dma.c config_acp_dma(adata->acp_mmio, rtd, adata->asic_type); acp_mmio 1366 sound/soc/amd/acp-pcm-dma.c config_acp_dma(adata->acp_mmio, rtd, adata->asic_type); acp_mmio 1369 sound/soc/amd/acp-pcm-dma.c acp_reg_write(1, adata->acp_mmio, mmACP_EXTERNAL_INTR_ENB); acp_mmio 1378 sound/soc/amd/acp-pcm-dma.c status = acp_deinit(adata->acp_mmio); acp_mmio 1381 sound/soc/amd/acp-pcm-dma.c acp_reg_write(0, adata->acp_mmio, mmACP_EXTERNAL_INTR_ENB); acp_mmio 1390 sound/soc/amd/acp-pcm-dma.c status = acp_init(adata->acp_mmio, adata->asic_type); acp_mmio 1395 sound/soc/amd/acp-pcm-dma.c acp_reg_write(1, adata->acp_mmio, mmACP_EXTERNAL_INTR_ENB); acp_mmio 144 sound/soc/amd/acp.h void __iomem *acp_mmio; acp_mmio 152 sound/soc/amd/acp.h void __iomem *acp_mmio;