Home
last modified time | relevance | path

Searched full:iram (Results 1 – 25 of 113) sorted by relevance

12345

/linux-6.12.1/arch/arm/mach-lpc32xx/
Dpm.c45 * section of IRAM is used instead for this.
48 * Backup a small area of IRAM used for the suspend code
49 * Copy suspend code to IRAM
50 * Transfer control to code in IRAM
60 * Code execution returns from IRAM
61 * IRAM code are used for suspend is restored
85 /* Allocate some space for temporary IRAM storage */ in lpc32xx_pm_enter()
92 * Copy code to suspend system into IRAM. The suspend code in lpc32xx_pm_enter()
93 * needs to run from IRAM as DRAM may no longer be available in lpc32xx_pm_enter()
101 /* Transfer to suspend code in IRAM */ in lpc32xx_pm_enter()
[all …]
/linux-6.12.1/sound/soc/sprd/
Dsprd-pcm-compress.c28 /* 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-6.12.1/drivers/net/phy/aquantia/
Daquantia_firmware.c47 /* AQR firmware doesn't have fixed offsets for iram and dram section
174 /* Get the primary offset to extract DRAM and IRAM sections. */ in aqr_fw_boot()
182 /* Find the DRAM and IRAM sections within the firmware file. in aqr_fw_boot()
196 phydev_err(phydev, "bad iram offset in firmware\n"); in aqr_fw_boot()
203 phydev_err(phydev, "invalid iram size in firmware\n"); in aqr_fw_boot()
222 * Validate iram/dram offset and size. in aqr_fw_boot()
226 phydev_err(phydev, "iram size if not aligned to word size. Please report this upstream!\n"); in aqr_fw_boot()
230 phydev_err(phydev, "invalid iram offset for iram size\n"); in aqr_fw_boot()
240 phydev_err(phydev, "invalid iram offset for iram size\n"); in aqr_fw_boot()
244 phydev_dbg(phydev, "primary %d IRAM offset=%d size=%d DRAM offset=%d size=%d\n", in aqr_fw_boot()
[all …]
/linux-6.12.1/Documentation/devicetree/bindings/remoteproc/
Dti,pru-rproc.yaml60 - const: iram
144 reg-names = "iram", "control", "debug";
153 reg-names = "iram", "control", "debug";
183 reg-names = "iram", "control", "debug";
195 reg-names = "iram", "control", "debug";
207 reg-names = "iram", "control", "debug";
216 reg-names = "iram", "control", "debug";
228 reg-names = "iram", "control", "debug";
240 reg-names = "iram", "control", "debug";
Dti,k3-m4f-rproc.yaml38 - description: IRAM internal memory region
43 - const: iram
115 reg-names = "iram", "dram";
/linux-6.12.1/Documentation/devicetree/bindings/net/
Dlpc-eth.txt11 - use-iram: Use LPC32xx internal SRAM (IRAM) for DMA buffering
27 use-iram;
/linux-6.12.1/drivers/gpu/ipu-v3/
Dipu-pre.c96 struct gen_pool *iram; member
327 pre->iram = of_gen_pool_get(dev->of_node, "fsl,iram", 0); in ipu_pre_probe()
328 if (!pre->iram) in ipu_pre_probe()
332 * Allocate IRAM buffer with maximum size. This could be made dynamic, in ipu_pre_probe()
333 * but as there is no other user of this IRAM region and we can fit all in ipu_pre_probe()
336 pre->buffer_virt = gen_pool_dma_alloc(pre->iram, IPU_PRE_MAX_WIDTH * in ipu_pre_probe()
366 gen_pool_free(pre->iram, (unsigned long)pre->buffer_virt, in ipu_pre_remove()
/linux-6.12.1/arch/arm/mach-tegra/
Dsleep-tegra20.S141 * tegra20_tear_down_core in IRAM
172 /* START OF ROUTINES COPIED TO IRAM */
180 * reset vector for LP1 restore; copied into IRAM during suspend.
193 * IRAM when this code is executed; immediately switch to CLKM and
266 * copied into and executed from IRAM
323 * executes from IRAM with SDRAM in selfrefresh when target state is LP0 or LP1
348 * must be executed from IRAM
432 /* dummy symbol for end of IRAM */
Dpm.c260 * 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()
Dsleep-tegra30.S282 * tegra30_tear_down_core in IRAM
346 /* START OF ROUTINES COPIED TO IRAM */
354 * reset vector for LP1 restore; copied into IRAM during suspend.
367 * IRAM when this code is executed; immediately switch to CLKM and
647 * copied into and executed from IRAM
745 * executes from IRAM with SDRAM in selfrefresh when target state is LP0 or LP1
783 * must be executed from IRAM
904 /* dummy symbol for end of IRAM */
/linux-6.12.1/Documentation/devicetree/bindings/media/
Dnvidia,tegra-vde.yaml66 iram:
108 iram = <&iram>; /* IRAM MMIO region */
Dcoda.yaml65 iram:
106 iram = <&ocram>;
/linux-6.12.1/arch/arm/boot/dts/nxp/imx/
Dimx6qp.dtsi34 fsl,iram = <&ocram2>;
43 fsl,iram = <&ocram2>;
52 fsl,iram = <&ocram3>;
61 fsl,iram = <&ocram3>;
/linux-6.12.1/sound/soc/intel/atom/sst/
Dsst_pci.c80 /* IRAM */ in sst_platform_get_resources()
83 ctx->iram = pcim_iomap(pci, 3, pci_resource_len(pci, 3)); in sst_platform_get_resources()
84 if (!ctx->iram) { in sst_platform_get_resources()
88 dev_dbg(ctx->dev, "IRAM Ptr %p\n", ctx->iram); in sst_platform_get_resources()
Dsst.c469 fw_save->iram = kvzalloc(ctx->iram_end - ctx->iram_base, GFP_KERNEL); in intel_sst_suspend()
470 if (!fw_save->iram) { in intel_sst_suspend()
472 goto iram; in intel_sst_suspend()
491 memcpy32_fromio(fw_save->iram, ctx->iram, ctx->iram_end - ctx->iram_base); in intel_sst_suspend()
504 kvfree(fw_save->iram); in intel_sst_suspend()
505 iram: in intel_sst_suspend()
527 memcpy32_toio(ctx->iram, fw_save->iram, ctx->iram_end - ctx->iram_base); in intel_sst_resume()
534 kvfree(fw_save->iram); in intel_sst_resume()
Dsst_acpi.c188 dev_info(ctx->dev, "IRAM base: %#x", ctx->iram_base); in sst_platform_get_resources()
189 ctx->iram = devm_ioremap(ctx->dev, ctx->iram_base, in sst_platform_get_resources()
191 if (!ctx->iram) { in sst_platform_get_resources()
192 dev_err(ctx->dev, "unable to map IRAM\n"); in sst_platform_get_resources()
302 * DDR, SHIM, MBOX, IRAM, DRAM, CFG in sst_acpi_probe()
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/dce/
Ddce_dmcu.c86 /* Enable write access to IRAM */ in dce_dmcu_load_iram()
98 /* Disable write access to IRAM to allow dynamic sleep state */ in dce_dmcu_load_iram()
112 /* Enable write access to IRAM */ in dce_get_dmcu_psr_state()
123 /* Disable write access to IRAM after finished using IRAM in dce_get_dmcu_psr_state()
336 /* Enable write access to IRAM */ in dcn10_get_dmcu_version()
351 /* Disable write access to IRAM to allow dynamic sleep state */ in dcn10_get_dmcu_version()
486 /* Enable write access to IRAM */ in dcn10_dmcu_load_iram()
498 /* Disable write access to IRAM to allow dynamic sleep state */ in dcn10_dmcu_load_iram()
506 /* Set command to signal IRAM is loaded and to initialize IRAM */ in dcn10_dmcu_load_iram()
529 /* Enable write access to IRAM */ in dcn10_get_dmcu_psr_state()
[all …]
/linux-6.12.1/drivers/media/platform/nvidia/tegra-vde/
Dvde.c313 vde->iram_pool = of_gen_pool_get(dev->of_node, "iram", 0); in tegra_vde_probe()
315 dev_err(dev, "Could not get IRAM pool\n"); in tegra_vde_probe()
319 vde->iram = gen_pool_dma_alloc(vde->iram_pool, in tegra_vde_probe()
322 if (!vde->iram) { in tegra_vde_probe()
323 dev_err(dev, "Could not reserve IRAM\n"); in tegra_vde_probe()
376 gen_pool_free(vde->iram_pool, (unsigned long)vde->iram, in tegra_vde_probe()
409 gen_pool_free(vde->iram_pool, (unsigned long)vde->iram, in tegra_vde_remove()
/linux-6.12.1/arch/arm/boot/dts/ti/omap/
Dam57-pruss.dtsi93 reg-names = "iram", "control", "debug";
102 reg-names = "iram", "control", "debug";
202 reg-names = "iram", "control", "debug";
211 reg-names = "iram", "control", "debug";
/linux-6.12.1/arch/arm64/boot/dts/ti/
Dk3-am65-main.dtsi1194 reg-names = "iram", "control", "debug";
1206 reg-names = "iram", "control", "debug";
1218 reg-names = "iram", "control", "debug";
1227 reg-names = "iram", "control", "debug";
1239 reg-names = "iram", "control", "debug";
1251 reg-names = "iram", "control", "debug";
1360 reg-names = "iram", "control", "debug";
1372 reg-names = "iram", "control", "debug";
1384 reg-names = "iram", "control", "debug";
1393 reg-names = "iram", "control", "debug";
[all …]
/linux-6.12.1/sound/soc/sof/intel/
Dpci-tng.c44 {"iram", DSP_BAR, IRAM_OFFSET, IRAM_SIZE,
206 .resindex_lpe_base = 3, /* IRAM, but subtract IRAM offset */
/linux-6.12.1/drivers/remoteproc/
Dpru_rproc.c53 /* PRU/RTU/Tx_PRU Core IRAM address masks */
701 * linker's default linker script places IRAM at an arbitrary high in pru_i_da_to_va()
703 * strip the artificial offset in the IRAM addresses coming from the in pru_i_da_to_va()
706 * The TI proprietary linker would never set those higher IRAM address in pru_i_da_to_va()
708 * word-address range. This in turn corresponds to 18-bit IRAM in pru_i_da_to_va()
761 * The ICSSG PRU/RTU/Tx_PRU cores have a memory copying issue with IRAM
763 * properly in the IRAM memories only for integer (4-byte) copies. Any unaligned
766 * IRAM memory port interface does not allow any 8-byte copies (as commonly used
959 * Compute PRU id based on the IRAM addresses. The PRU IRAMs are
999 const char *mem_names[PRU_IOMEM_MAX] = { "iram", "control", "debug" }; in pru_rproc_probe()
/linux-6.12.1/sound/soc/intel/catpt/
Ddsp.c385 catpt_dsp_set_srampge(cdev, &cdev->iram, cdev->spec->iram_mask, in catpt_dsp_power_down()
420 catpt_dsp_set_srampge(cdev, &cdev->iram, cdev->spec->iram_mask, 0); in catpt_dsp_power_up()
469 dump_size += resource_size(&cdev->iram); in catpt_coredump()
505 hdr->size = resource_size(&cdev->iram); in catpt_coredump()
508 memcpy_fromio(pos, cdev->lpe_ba + cdev->iram.start, hdr->size); in catpt_coredump()
/linux-6.12.1/Documentation/devicetree/bindings/soc/ti/
Dti,pruss.yaml426 reg-names = "iram", "control", "debug";
435 reg-names = "iram", "control", "debug";
517 reg-names = "iram", "control", "debug";
526 reg-names = "iram", "control", "debug";
/linux-6.12.1/Documentation/devicetree/bindings/display/imx/
Dfsl-imx-drm.txt74 - fsl,iram: phandle pointing to the mmio-sram device node, that should be
85 fsl,iram = <&ocram2>;

12345