/Linux-v5.15/arch/arm/mach-lpc32xx/ |
D | pm.c | 47 * section of IRAM is used instead for this. 50 * Backup a small area of IRAM used for the suspend code 51 * Copy suspend code to IRAM 52 * Transfer control to code in IRAM 62 * Code execution returns from IRAM 63 * IRAM code are used for suspend is restored 87 /* Allocate some space for temporary IRAM storage */ in lpc32xx_pm_enter() 94 * Copy code to suspend system into IRAM. The suspend code in lpc32xx_pm_enter() 95 * needs to run from IRAM as DRAM may no longer be available in lpc32xx_pm_enter() 103 /* Transfer to suspend code in IRAM */ in lpc32xx_pm_enter() [all …]
|
/Linux-v5.15/sound/soc/sprd/ |
D | sprd-pcm-compress.c | 28 /* Stage 0 IRAM buffer size definition */ 58 * For 2-stage DMA transfer, we can allocate 2 buffers: IRAM buffer (always 59 * power-on) and DDR buffer. The source channel will transfer data from IRAM 60 * buffer to the DSP fifo to decoding/encoding, once IRAM buffer is empty by 62 * DDR buffer to IRAM buffer. 64 * Since the DSP fifo is only 512B, IRAM buffer is allocated by 32K, and DDR 65 * buffer is larger to 2M. That means only the IRAM 32k data is transferred 66 * done, we can wake up the AP system to transfer data from DDR to IRAM, and 77 /* Stage 0 IRAM buffer */ 82 /* DSP play information IRAM buffer */ [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/remoteproc/ |
D | ti,pru-rproc.yaml | 59 - const: iram 132 reg-names = "iram", "control", "debug"; 141 reg-names = "iram", "control", "debug"; 171 reg-names = "iram", "control", "debug"; 180 reg-names = "iram", "control", "debug"; 189 reg-names = "iram", "control", "debug"; 198 reg-names = "iram", "control", "debug"; 207 reg-names = "iram", "control", "debug"; 216 reg-names = "iram", "control", "debug";
|
/Linux-v5.15/Documentation/devicetree/bindings/media/ |
D | nvidia,tegra-vde.txt | 21 - iram : Must contain phandle to the mmio-sram device node that represents 22 IRAM region used by VDE. 55 iram = <&vde_pool>; /* IRAM region */
|
D | coda.yaml | 65 iram: 107 iram = <&ocram>;
|
/Linux-v5.15/Documentation/devicetree/bindings/net/ |
D | lpc-eth.txt | 11 - use-iram: Use LPC32xx internal SRAM (IRAM) for DMA buffering 27 use-iram;
|
/Linux-v5.15/drivers/gpu/ipu-v3/ |
D | ipu-pre.c | 95 struct gen_pool *iram; member 290 pre->iram = of_gen_pool_get(dev->of_node, "fsl,iram", 0); in ipu_pre_probe() 291 if (!pre->iram) in ipu_pre_probe() 295 * Allocate IRAM buffer with maximum size. This could be made dynamic, in ipu_pre_probe() 296 * but as there is no other user of this IRAM region and we can fit all in ipu_pre_probe() 299 pre->buffer_virt = gen_pool_dma_alloc(pre->iram, IPU_PRE_MAX_WIDTH * in ipu_pre_probe() 329 gen_pool_free(pre->iram, (unsigned long)pre->buffer_virt, in ipu_pre_remove()
|
/Linux-v5.15/arch/arm/mach-tegra/ |
D | sleep-tegra20.S | 139 * tegra20_tear_down_core in IRAM 170 /* START OF ROUTINES COPIED TO IRAM */ 178 * reset vector for LP1 restore; copied into IRAM during suspend. 191 * IRAM when this code is executed; immediately switch to CLKM and 264 * copied into and executed from IRAM 321 * executes from IRAM with SDRAM in selfrefresh when target state is LP0 or LP1 346 * must be executed from IRAM 430 /* dummy symbol for end of IRAM */
|
D | pm.c | 260 * SDRAM. These codes not be copied to IRAM in this fuction. We need to 261 * copy these code to IRAM before LP0/LP1 suspend and restore the content 262 * of IRAM after resume. 321 /* copy the reset vector & SDRAM shutdown code into IRAM */ in tegra_suspend_enter_lp1() 332 /* restore IRAM */ in tegra_suspend_exit_lp1()
|
D | sleep-tegra30.S | 280 * tegra30_tear_down_core in IRAM 344 /* START OF ROUTINES COPIED TO IRAM */ 352 * reset vector for LP1 restore; copied into IRAM during suspend. 365 * IRAM when this code is executed; immediately switch to CLKM and 645 * copied into and executed from IRAM 743 * executes from IRAM with SDRAM in selfrefresh when target state is LP0 or LP1 781 * must be executed from IRAM 902 /* dummy symbol for end of IRAM */
|
/Linux-v5.15/arch/arm/boot/dts/ |
D | imx6qp.dtsi | 28 fsl,iram = <&ocram2>; 37 fsl,iram = <&ocram2>; 46 fsl,iram = <&ocram3>; 55 fsl,iram = <&ocram3>;
|
D | am57-pruss.dtsi | 93 reg-names = "iram", "control", "debug"; 102 reg-names = "iram", "control", "debug"; 202 reg-names = "iram", "control", "debug"; 211 reg-names = "iram", "control", "debug";
|
/Linux-v5.15/sound/soc/intel/atom/sst/ |
D | sst.c | 464 fw_save->iram = kvzalloc(ctx->iram_end - ctx->iram_base, GFP_KERNEL); in intel_sst_suspend() 465 if (!fw_save->iram) { in intel_sst_suspend() 467 goto iram; in intel_sst_suspend() 486 memcpy32_fromio(fw_save->iram, ctx->iram, ctx->iram_end - ctx->iram_base); in intel_sst_suspend() 499 kvfree(fw_save->iram); in intel_sst_suspend() 500 iram: in intel_sst_suspend() 522 memcpy32_toio(ctx->iram, fw_save->iram, ctx->iram_end - ctx->iram_base); in intel_sst_resume() 529 kvfree(fw_save->iram); in intel_sst_resume()
|
D | sst_pci.c | 81 /* IRAM */ in sst_platform_get_resources() 84 ctx->iram = pcim_iomap(pci, 3, pci_resource_len(pci, 3)); in sst_platform_get_resources() 85 if (!ctx->iram) { in sst_platform_get_resources() 89 dev_dbg(ctx->dev, "IRAM Ptr %p\n", ctx->iram); in sst_platform_get_resources()
|
D | sst_acpi.c | 167 dev_info(ctx->dev, "IRAM base: %#x", ctx->iram_base); in sst_platform_get_resources() 168 ctx->iram = devm_ioremap(ctx->dev, ctx->iram_base, in sst_platform_get_resources() 170 if (!ctx->iram) { in sst_platform_get_resources() 171 dev_err(ctx->dev, "unable to map IRAM\n"); in sst_platform_get_resources()
|
D | sst.h | 317 void *iram; /* allocated via kvmalloc() */ member 331 * @iram : SST IRAM pointer 365 void __iomem *iram; member
|
/Linux-v5.15/drivers/gpu/drm/amd/display/dc/dce/ |
D | dce_dmcu.c | 91 /* Enable write access to IRAM */ in dce_dmcu_load_iram() 103 /* Disable write access to IRAM to allow dynamic sleep state */ in dce_dmcu_load_iram() 117 /* Enable write access to IRAM */ in dce_get_dmcu_psr_state() 128 /* Disable write access to IRAM after finished using IRAM in dce_get_dmcu_psr_state() 342 /* Enable write access to IRAM */ in dcn10_get_dmcu_version() 357 /* Disable write access to IRAM to allow dynamic sleep state */ in dcn10_get_dmcu_version() 492 /* Enable write access to IRAM */ in dcn10_dmcu_load_iram() 504 /* Disable write access to IRAM to allow dynamic sleep state */ in dcn10_dmcu_load_iram() 512 /* Set command to signal IRAM is loaded and to initialize IRAM */ in dcn10_dmcu_load_iram() 535 /* Enable write access to IRAM */ in dcn10_get_dmcu_psr_state() [all …]
|
/Linux-v5.15/arch/arm64/boot/dts/ti/ |
D | k3-am65-main.dtsi | 1001 reg-names = "iram", "control", "debug"; 1010 reg-names = "iram", "control", "debug"; 1019 reg-names = "iram", "control", "debug"; 1028 reg-names = "iram", "control", "debug"; 1037 reg-names = "iram", "control", "debug"; 1046 reg-names = "iram", "control", "debug"; 1142 reg-names = "iram", "control", "debug"; 1151 reg-names = "iram", "control", "debug"; 1160 reg-names = "iram", "control", "debug"; 1169 reg-names = "iram", "control", "debug"; [all …]
|
/Linux-v5.15/drivers/remoteproc/ |
D | pru_rproc.c | 49 /* PRU/RTU/Tx_PRU Core IRAM address masks */ 478 * linker's default linker script places IRAM at an arbitrary high in pru_i_da_to_va() 480 * strip the artificial offset in the IRAM addresses coming from the in pru_i_da_to_va() 483 * The TI proprietary linker would never set those higher IRAM address in pru_i_da_to_va() 485 * word-address range. This in turn corresponds to 18-bit IRAM in pru_i_da_to_va() 539 * The ICSSG PRU/RTU/Tx_PRU cores have a memory copying issue with IRAM 541 * properly in the IRAM memories only for integer (4-byte) copies. Any unaligned 544 * IRAM memory port interface does not allow any 8-byte copies (as commonly used 737 * Compute PRU id based on the IRAM addresses. The PRU IRAMs are 777 const char *mem_names[PRU_IOMEM_MAX] = { "iram", "control", "debug" }; in pru_rproc_probe()
|
/Linux-v5.15/drivers/staging/media/tegra-vde/ |
D | vde.c | 220 u32 *iram_tables = vde->iram; in tegra_vde_setup_iram_entry() 336 memset(vde->iram + 128, 0, macroblocks_nb / 2); in tegra_vde_setup_hw_context() 346 * The IRAM mapping is write-combine, ensure that CPU buffers have in tegra_vde_setup_hw_context() 1029 vde->iram_pool = of_gen_pool_get(dev->of_node, "iram", 0); in tegra_vde_probe() 1031 dev_err(dev, "Could not get IRAM pool\n"); in tegra_vde_probe() 1035 vde->iram = gen_pool_dma_alloc(vde->iram_pool, in tegra_vde_probe() 1038 if (!vde->iram) { in tegra_vde_probe() 1039 dev_err(dev, "Could not reserve IRAM\n"); in tegra_vde_probe() 1092 gen_pool_free(vde->iram_pool, (unsigned long)vde->iram, in tegra_vde_probe() 1124 gen_pool_free(vde->iram_pool, (unsigned long)vde->iram, in tegra_vde_remove()
|
/Linux-v5.15/sound/soc/sof/intel/ |
D | pci-tng.c | 45 {"iram", DSP_BAR, IRAM_OFFSET, IRAM_SIZE, 200 .resindex_lpe_base = 3, /* IRAM, but subtract IRAM offset */
|
/Linux-v5.15/sound/soc/intel/catpt/ |
D | dsp.c | 375 catpt_dsp_set_srampge(cdev, &cdev->iram, cdev->spec->iram_mask, in catpt_dsp_power_down() 410 catpt_dsp_set_srampge(cdev, &cdev->iram, cdev->spec->iram_mask, 0); in catpt_dsp_power_up() 459 dump_size += resource_size(&cdev->iram); in catpt_coredump() 495 hdr->size = resource_size(&cdev->iram); in catpt_coredump() 498 memcpy_fromio(pos, cdev->lpe_ba + cdev->iram.start, hdr->size); in catpt_coredump()
|
/Linux-v5.15/Documentation/devicetree/bindings/soc/ti/ |
D | ti,pruss.yaml | 413 reg-names = "iram", "control", "debug"; 422 reg-names = "iram", "control", "debug"; 504 reg-names = "iram", "control", "debug"; 513 reg-names = "iram", "control", "debug";
|
/Linux-v5.15/Documentation/devicetree/bindings/display/imx/ |
D | fsl-imx-drm.txt | 74 - fsl,iram: phandle pointing to the mmio-sram device node, that should be 85 fsl,iram = <&ocram2>;
|
/Linux-v5.15/drivers/media/platform/coda/ |
D | coda-common.c | 3186 /* Get IRAM pool from device tree */ in coda_probe() 3187 pool = of_gen_pool_get(np, "iram", 0); in coda_probe() 3189 dev_err(&pdev->dev, "iram pool not available\n"); in coda_probe() 3227 dev->iram.size = dev->devtype->iram_size; in coda_probe() 3228 dev->iram.vaddr = gen_pool_dma_alloc(dev->iram_pool, dev->iram.size, in coda_probe() 3229 &dev->iram.paddr); in coda_probe() 3230 if (!dev->iram.vaddr) { in coda_probe() 3231 dev_warn(&pdev->dev, "unable to alloc iram\n"); in coda_probe() 3233 memset(dev->iram.vaddr, 0, dev->iram.size); in coda_probe() 3234 dev->iram.blob.data = dev->iram.vaddr; in coda_probe() [all …]
|