/kernel/linux/linux-5.10/drivers/dma/ |
D | imx-sdma.c | 365 struct sdma_engine *sdma; member 617 static inline u32 chnenbl_ofs(struct sdma_engine *sdma, unsigned int event) in chnenbl_ofs() argument 619 u32 chnenbl0 = sdma->drvdata->chnenbl0; in chnenbl_ofs() 626 struct sdma_engine *sdma = sdmac->sdma; in sdma_config_ownership() local 633 evt = readl_relaxed(sdma->regs + SDMA_H_EVTOVR); in sdma_config_ownership() 634 mcu = readl_relaxed(sdma->regs + SDMA_H_HOSTOVR); in sdma_config_ownership() 635 dsp = readl_relaxed(sdma->regs + SDMA_H_DSPOVR); in sdma_config_ownership() 652 writel_relaxed(evt, sdma->regs + SDMA_H_EVTOVR); in sdma_config_ownership() 653 writel_relaxed(mcu, sdma->regs + SDMA_H_HOSTOVR); in sdma_config_ownership() 654 writel_relaxed(dsp, sdma->regs + SDMA_H_DSPOVR); in sdma_config_ownership() [all …]
|
D | sirf-dma.c | 238 struct sirfsoc_dma *sdma = dma_chan_to_sirfsoc_dma(&schan->chan); in sirfsoc_dma_execute() local 247 base = sdma->base; in sirfsoc_dma_execute() 253 if (sdma->type == SIRFSOC_DMA_VER_A7V2) in sirfsoc_dma_execute() 257 sdma->exec_desc(sdesc, cid, schan->mode, base); in sirfsoc_dma_execute() 266 struct sirfsoc_dma *sdma = data; in sirfsoc_dma_irq() local 274 switch (sdma->type) { in sirfsoc_dma_irq() 277 is = readl(sdma->base + SIRFSOC_DMA_CH_INT); in sirfsoc_dma_irq() 278 reg = sdma->base + SIRFSOC_DMA_CH_INT; in sirfsoc_dma_irq() 282 schan = &sdma->channels[ch]; in sirfsoc_dma_irq() 300 is = readl(sdma->base + SIRFSOC_DMA_INT_ATLAS7); in sirfsoc_dma_irq() [all …]
|
/kernel/linux/linux-5.10/drivers/net/ethernet/marvell/prestera/ |
D | prestera_rxtx.c | 109 struct prestera_sdma sdma; member 112 static int prestera_sdma_buf_init(struct prestera_sdma *sdma, in prestera_sdma_buf_init() argument 118 desc = dma_pool_alloc(sdma->desc_pool, GFP_DMA | GFP_KERNEL, &dma); in prestera_sdma_buf_init() 130 static u32 prestera_sdma_map(struct prestera_sdma *sdma, dma_addr_t pa) in prestera_sdma_map() argument 132 return sdma->map_addr + pa; in prestera_sdma_map() 135 static void prestera_sdma_rx_desc_init(struct prestera_sdma *sdma, in prestera_sdma_rx_desc_init() argument 144 desc->buff = cpu_to_le32(prestera_sdma_map(sdma, buf)); in prestera_sdma_rx_desc_init() 152 static void prestera_sdma_rx_desc_set_next(struct prestera_sdma *sdma, in prestera_sdma_rx_desc_set_next() argument 156 desc->next = cpu_to_le32(prestera_sdma_map(sdma, next)); in prestera_sdma_rx_desc_set_next() 159 static int prestera_sdma_rx_skb_alloc(struct prestera_sdma *sdma, in prestera_sdma_rx_skb_alloc() argument [all …]
|
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_sdma.c | 41 for (i = 0; i < adev->sdma.num_instances; i++) in amdgpu_sdma_get_instance_from_ring() 42 if (ring == &adev->sdma.instance[i].ring || in amdgpu_sdma_get_instance_from_ring() 43 ring == &adev->sdma.instance[i].page) in amdgpu_sdma_get_instance_from_ring() 44 return &adev->sdma.instance[i]; in amdgpu_sdma_get_instance_from_ring() 54 for (i = 0; i < adev->sdma.num_instances; i++) { in amdgpu_sdma_get_index_from_ring() 55 if (ring == &adev->sdma.instance[i].ring || in amdgpu_sdma_get_index_from_ring() 56 ring == &adev->sdma.instance[i].page) { in amdgpu_sdma_get_index_from_ring() 101 if (!adev->sdma.ras_if) { in amdgpu_sdma_ras_late_init() 102 adev->sdma.ras_if = kmalloc(sizeof(struct ras_common_if), GFP_KERNEL); in amdgpu_sdma_ras_late_init() 103 if (!adev->sdma.ras_if) in amdgpu_sdma_ras_late_init() [all …]
|
D | sdma_v4_0.c | 530 for (i = 0; i < adev->sdma.num_instances; i++) { in sdma_v4_0_setup_ulv() 562 for (i = 0; i < adev->sdma.num_instances; i++) { in sdma_v4_0_destroy_inst_ctx() 563 release_firmware(adev->sdma.instance[i].fw); in sdma_v4_0_destroy_inst_ctx() 564 adev->sdma.instance[i].fw = NULL; in sdma_v4_0_destroy_inst_ctx() 572 memset((void*)adev->sdma.instance, 0, in sdma_v4_0_destroy_inst_ctx() 634 err = request_firmware(&adev->sdma.instance[0].fw, fw_name, adev->dev); in sdma_v4_0_init_microcode() 638 err = sdma_v4_0_init_inst_ctx(&adev->sdma.instance[0]); in sdma_v4_0_init_microcode() 642 for (i = 1; i < adev->sdma.num_instances; i++) { in sdma_v4_0_init_microcode() 646 memcpy((void*)&adev->sdma.instance[i], in sdma_v4_0_init_microcode() 647 (void*)&adev->sdma.instance[0], in sdma_v4_0_init_microcode() [all …]
|
D | sdma_v3_0.c | 253 for (i = 0; i < adev->sdma.num_instances; i++) { in sdma_v3_0_free_microcode() 254 release_firmware(adev->sdma.instance[i].fw); in sdma_v3_0_free_microcode() 255 adev->sdma.instance[i].fw = NULL; in sdma_v3_0_free_microcode() 307 for (i = 0; i < adev->sdma.num_instances; i++) { in sdma_v3_0_init_microcode() 312 err = request_firmware(&adev->sdma.instance[i].fw, fw_name, adev->dev); in sdma_v3_0_init_microcode() 315 err = amdgpu_ucode_validate(adev->sdma.instance[i].fw); in sdma_v3_0_init_microcode() 318 hdr = (const struct sdma_firmware_header_v1_0 *)adev->sdma.instance[i].fw->data; in sdma_v3_0_init_microcode() 319 adev->sdma.instance[i].fw_version = le32_to_cpu(hdr->header.ucode_version); in sdma_v3_0_init_microcode() 320 adev->sdma.instance[i].feature_version = le32_to_cpu(hdr->ucode_feature_version); in sdma_v3_0_init_microcode() 321 if (adev->sdma.instance[i].feature_version >= 20) in sdma_v3_0_init_microcode() [all …]
|
D | cik_sdma.c | 76 for (i = 0; i < adev->sdma.num_instances; i++) { in cik_sdma_free_microcode() 77 release_firmware(adev->sdma.instance[i].fw); in cik_sdma_free_microcode() 78 adev->sdma.instance[i].fw = NULL; in cik_sdma_free_microcode() 135 for (i = 0; i < adev->sdma.num_instances; i++) { in cik_sdma_init_microcode() 140 err = request_firmware(&adev->sdma.instance[i].fw, fw_name, adev->dev); in cik_sdma_init_microcode() 143 err = amdgpu_ucode_validate(adev->sdma.instance[i].fw); in cik_sdma_init_microcode() 148 for (i = 0; i < adev->sdma.num_instances; i++) { in cik_sdma_init_microcode() 149 release_firmware(adev->sdma.instance[i].fw); in cik_sdma_init_microcode() 150 adev->sdma.instance[i].fw = NULL; in cik_sdma_init_microcode() 203 struct amdgpu_sdma_instance *sdma = amdgpu_sdma_get_instance_from_ring(ring); in cik_sdma_ring_insert_nop() local [all …]
|
D | sdma_v2_4.c | 116 for (i = 0; i < adev->sdma.num_instances; i++) { in sdma_v2_4_free_microcode() 117 release_firmware(adev->sdma.instance[i].fw); in sdma_v2_4_free_microcode() 118 adev->sdma.instance[i].fw = NULL; in sdma_v2_4_free_microcode() 149 for (i = 0; i < adev->sdma.num_instances; i++) { in sdma_v2_4_init_microcode() 154 err = request_firmware(&adev->sdma.instance[i].fw, fw_name, adev->dev); in sdma_v2_4_init_microcode() 157 err = amdgpu_ucode_validate(adev->sdma.instance[i].fw); in sdma_v2_4_init_microcode() 160 hdr = (const struct sdma_firmware_header_v1_0 *)adev->sdma.instance[i].fw->data; in sdma_v2_4_init_microcode() 161 adev->sdma.instance[i].fw_version = le32_to_cpu(hdr->header.ucode_version); in sdma_v2_4_init_microcode() 162 adev->sdma.instance[i].feature_version = le32_to_cpu(hdr->ucode_feature_version); in sdma_v2_4_init_microcode() 163 if (adev->sdma.instance[i].feature_version >= 20) in sdma_v2_4_init_microcode() [all …]
|
D | sdma_v5_2.c | 119 for (i = 0; i < adev->sdma.num_instances; i++) { in sdma_v5_2_destroy_inst_ctx() 120 release_firmware(adev->sdma.instance[i].fw); in sdma_v5_2_destroy_inst_ctx() 121 adev->sdma.instance[i].fw = NULL; in sdma_v5_2_destroy_inst_ctx() 127 memset((void*)adev->sdma.instance, 0, in sdma_v5_2_destroy_inst_ctx() 169 err = request_firmware(&adev->sdma.instance[0].fw, fw_name, adev->dev); in sdma_v5_2_init_microcode() 173 err = sdma_v5_2_init_inst_ctx(&adev->sdma.instance[0]); in sdma_v5_2_init_microcode() 177 for (i = 1; i < adev->sdma.num_instances; i++) { in sdma_v5_2_init_microcode() 180 memcpy((void*)&adev->sdma.instance[i], in sdma_v5_2_init_microcode() 181 (void*)&adev->sdma.instance[0], in sdma_v5_2_init_microcode() 185 err = request_firmware(&adev->sdma.instance[i].fw, fw_name, adev->dev); in sdma_v5_2_init_microcode() [all …]
|
D | sdma_v5_0.c | 229 for (i = 0; i < adev->sdma.num_instances; i++) { in sdma_v5_0_init_microcode() 234 err = request_firmware(&adev->sdma.instance[i].fw, fw_name, adev->dev); in sdma_v5_0_init_microcode() 237 err = amdgpu_ucode_validate(adev->sdma.instance[i].fw); in sdma_v5_0_init_microcode() 240 hdr = (const struct sdma_firmware_header_v1_0 *)adev->sdma.instance[i].fw->data; in sdma_v5_0_init_microcode() 241 adev->sdma.instance[i].fw_version = le32_to_cpu(hdr->header.ucode_version); in sdma_v5_0_init_microcode() 242 adev->sdma.instance[i].feature_version = le32_to_cpu(hdr->ucode_feature_version); in sdma_v5_0_init_microcode() 243 if (adev->sdma.instance[i].feature_version >= 20) in sdma_v5_0_init_microcode() 244 adev->sdma.instance[i].burst_nop = true; in sdma_v5_0_init_microcode() 251 info->fw = adev->sdma.instance[i].fw; in sdma_v5_0_init_microcode() 260 for (i = 0; i < adev->sdma.num_instances; i++) { in sdma_v5_0_init_microcode() [all …]
|
D | si_dma.c | 49 u32 me = (ring == &adev->sdma.instance[0].ring) ? 0 : 1; in si_dma_ring_get_wptr() 57 u32 me = (ring == &adev->sdma.instance[0].ring) ? 0 : 1; in si_dma_ring_set_wptr() 118 for (i = 0; i < adev->sdma.num_instances; i++) { in si_dma_stop() 119 ring = &adev->sdma.instance[i].ring; in si_dma_stop() 137 for (i = 0; i < adev->sdma.num_instances; i++) { in si_dma_start() 138 ring = &adev->sdma.instance[i].ring; in si_dma_start() 470 adev->sdma.num_instances = 2; in si_dma_early_init() 488 &adev->sdma.trap_irq); in si_dma_sw_init() 494 &adev->sdma.trap_irq); in si_dma_sw_init() 498 for (i = 0; i < adev->sdma.num_instances; i++) { in si_dma_sw_init() [all …]
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/dma/ |
D | fsl-imx-sdma.txt | 5 "fsl,imx25-sdma" 6 "fsl,imx31-sdma", "fsl,imx31-to1-sdma", "fsl,imx31-to2-sdma" 7 "fsl,imx35-sdma", "fsl,imx35-to1-sdma", "fsl,imx35-to2-sdma" 8 "fsl,imx51-sdma" 9 "fsl,imx53-sdma" 10 "fsl,imx6q-sdma" 11 "fsl,imx7d-sdma" 12 "fsl,imx8mq-sdma" 13 "fsl,imx8mm-sdma" 14 "fsl,imx8mn-sdma" [all …]
|
/kernel/linux/patches/linux-5.10/imx8mm_patch/patches/drivers/ |
D | 0017_linux_drivers_dma_dmabuf.patch | 1730 diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c 1732 --- a/drivers/dma/imx-sdma.c 1733 +++ b/drivers/dma/imx-sdma.c 1788 struct sdma_engine *sdma; 1828 + * ecspi ERR009165 fixed should be done in sdma script 1913 .name = "imx25-sdma", 1916 .name = "imx6q-sdma", 1919 + .name = "imx6sx-sdma", 1922 .name = "imx7d-sdma", 1925 + .name = "imx6ul-sdma", [all …]
|
/kernel/linux/linux-5.10/arch/arm/boot/dts/ |
D | omap2.dtsi | 65 dmas = <&sdma 9 &sdma 10>; 103 sdma: dma-controller@0 { label 104 compatible = "ti,omap2420-sdma", "ti,omap-sdma"; 123 dmas = <&sdma 27 &sdma 28>; 134 dmas = <&sdma 29 &sdma 30>; 143 dmas = <&sdma 35 &sdma 36 &sdma 37 &sdma 38 144 &sdma 39 &sdma 40 &sdma 41 &sdma 42>; 154 dmas = <&sdma 43 &sdma 44 &sdma 45 &sdma 46>; 170 dmas = <&sdma 13>; 179 dmas = <&sdma 49 &sdma 50>; [all …]
|
D | omap3.dtsi | 184 dmas = <&sdma 9 &sdma 10>; 210 dmas = <&sdma 65 &sdma 66>; 292 sdma: dma-controller@0 { label 293 compatible = "ti,omap3430-sdma", "ti,omap-sdma"; 376 dmas = <&sdma 49 &sdma 50>; 386 dmas = <&sdma 51 &sdma 52>; 396 dmas = <&sdma 53 &sdma 54>; 406 dmas = <&sdma 27 &sdma 28>; 417 dmas = <&sdma 29 &sdma 30>; 428 dmas = <&sdma 25 &sdma 26>; [all …]
|
D | omap2430.dtsi | 189 dmas = <&sdma 31>, 190 <&sdma 32>; 205 dmas = <&sdma 33>, 206 <&sdma 34>; 221 dmas = <&sdma 17>, 222 <&sdma 18>; 237 dmas = <&sdma 19>, 238 <&sdma 20>; 253 dmas = <&sdma 21>, 254 <&sdma 22>; [all …]
|
D | imx31.dtsi | 135 dmas = <&sdma 8 8 0>, <&sdma 9 8 0>; 182 dmas = <&sdma 20 3 0>; 193 dmas = <&sdma 21 3 0>; 213 dmas = <&sdma 6 8 0>, <&sdma 7 8 0>; 248 dmas = <&sdma 10 8 0>, <&sdma 11 8 0>; 300 sdma: sdma@53fd4000 { label 301 compatible = "fsl,imx31-sdma"; 307 fsl,sdma-ram-script-name = "imx/sdma/sdma-imx31.bin"; 347 dmas = <&sdma 30 17 0>;
|
D | imx6sll.dtsi | 160 dmas = <&sdma 14 18 0>, <&sdma 15 18 0>; 184 dmas = <&sdma 3 7 1>, <&sdma 4 7 2>; 196 dmas = <&sdma 5 7 1>, <&sdma 6 7 2>; 208 dmas = <&sdma 7 7 1>, <&sdma 8 7 2>; 220 dmas = <&sdma 9 7 1>, <&sdma 10 7 2>; 233 dmas = <&sdma 31 4 0>, <&sdma 32 4 0>; 246 dmas = <&sdma 25 4 0>, <&sdma 26 4 0>; 259 dmas = <&sdma 27 4 0>, <&sdma 28 4 0>; 271 dmas = <&sdma 37 22 0>, <&sdma 38 22 0>; 284 dmas = <&sdma 41 22 0>, <&sdma 42 22 0>; [all …]
|
D | imx6qdl.dtsi | 305 dmas = <&sdma 14 18 0>, 306 <&sdma 15 18 0>; 330 dmas = <&sdma 3 8 1>, <&sdma 4 8 2>; 344 dmas = <&sdma 5 8 1>, <&sdma 6 8 2>; 358 dmas = <&sdma 7 8 1>, <&sdma 8 8 2>; 372 dmas = <&sdma 9 8 1>, <&sdma 10 8 2>; 384 dmas = <&sdma 25 4 0>, <&sdma 26 4 0>; 400 dmas = <&sdma 23 21 0>, <&sdma 24 21 0>; 414 dmas = <&sdma 37 1 0>, 415 <&sdma 38 1 0>; [all …]
|
D | imx53.dtsi | 270 dmas = <&sdma 42 4 0>, <&sdma 43 4 0>; 297 dmas = <&sdma 24 1 0>, 298 <&sdma 25 1 0>; 554 dmas = <&sdma 18 4 0>, <&sdma 19 4 0>; 566 dmas = <&sdma 12 4 0>, <&sdma 13 4 0>; 652 dmas = <&sdma 2 4 0>, <&sdma 3 4 0>; 684 dmas = <&sdma 16 4 0>, <&sdma 17 4 0>; 713 sdma: sdma@63fb0000 { label 714 compatible = "fsl,imx53-sdma", "fsl,imx35-sdma"; 721 fsl,sdma-ram-script-name = "imx/sdma/sdma-imx53.bin"; [all …]
|
D | imx6sx.dtsi | 260 dmas = <&sdma 14 18 0>, 261 <&sdma 15 18 0>; 334 dmas = <&sdma 25 4 0>, <&sdma 26 4 0>; 350 dmas = <&sdma 23 21 0>, 351 <&sdma 24 21 0>; 364 dmas = <&sdma 37 1 0>, <&sdma 38 1 0>; 378 dmas = <&sdma 41 1 0>, <&sdma 42 1 0>; 392 dmas = <&sdma 45 1 0>, <&sdma 46 1 0>; 414 dmas = <&sdma 17 23 1>, <&sdma 18 23 1>, 415 <&sdma 19 23 1>, <&sdma 20 23 1>, [all …]
|
D | imx6sl.dtsi | 161 dmas = <&sdma 14 18 0>, 162 <&sdma 15 18 0>; 233 dmas = <&sdma 33 4 0>, <&sdma 34 4 0>; 246 dmas = <&sdma 25 4 0>, <&sdma 26 4 0>; 259 dmas = <&sdma 27 4 0>, <&sdma 28 4 0>; 273 dmas = <&sdma 37 1 0>, 274 <&sdma 38 1 0>; 289 dmas = <&sdma 41 1 0>, 290 <&sdma 42 1 0>; 305 dmas = <&sdma 45 1 0>, [all …]
|
D | imx6ul.dtsi | 221 dmas = <&sdma 3 7 1>, <&sdma 4 7 2>; 235 dmas = <&sdma 5 7 1>, <&sdma 6 7 2>; 249 dmas = <&sdma 7 7 1>, <&sdma 8 7 2>; 263 dmas = <&sdma 9 7 1>, <&sdma 10 7 2>; 310 dmas = <&sdma 35 24 0>, 311 <&sdma 36 24 0>; 325 dmas = <&sdma 37 24 0>, 326 <&sdma 38 24 0>; 340 dmas = <&sdma 39 24 0>, 341 <&sdma 40 24 0>; [all …]
|
/kernel/linux/linux-5.10/arch/powerpc/platforms/52xx/ |
D | mpc52xx_pic.c | 134 static struct mpc52xx_sdma __iomem *sdma; variable 269 io_be_setbit(&sdma->IntMask, l2irq); in mpc52xx_sdma_mask() 275 io_be_clrbit(&sdma->IntMask, l2irq); in mpc52xx_sdma_unmask() 281 out_be32(&sdma->IntPend, 1 << l2irq); in mpc52xx_sdma_ack() 416 sdma = of_iomap(np, 0); in mpc52xx_init_irq() 418 if (!sdma) in mpc52xx_init_irq() 425 out_be32(&sdma->IntPend, 0xffffffff); /* 1 means clear pending */ in mpc52xx_init_irq() 426 out_be32(&sdma->IntMask, 0xffffffff); /* 1 means disabled */ in mpc52xx_init_irq() 507 status = in_be32(&sdma->IntPend); in mpc52xx_get_irq()
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/sound/ |
D | fsl,asrc.txt | 74 dmas = <&sdma 17 23 1>, <&sdma 18 23 1>, <&sdma 19 23 1>, 75 <&sdma 20 23 1>, <&sdma 21 23 1>, <&sdma 22 23 1>;
|