AnsweredAssumed Answered

i.MX8QXP VPU reserved memory

Question asked by Kazuma Sasaki on Aug 25, 2019
Latest reply on Aug 26, 2019 by CarlosCasillas

Hi, 

 

My customer is making a product with i.MX8QuadXPlus and Linux BSP L4.14.98_2.0.0_ga.

They would like to reduce a memory size from cost point of view.

 

 

Linux BSP is allocating reserved-memory as below.

 

VPU is reserving a memory as encoder_reserved. it is allocating 8MB.

We would like to reduce these size based on our use cases.

How do we estimate enough memory size for VPU processing ?

 

Copy from fsl-imx8dx.dtsi in Linux BSP L4.14.98_2.0.0_ga.

reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;

/*
* reserved-memory layout
* 0x8800_0000 ~ 0x8FFF_FFFF is reserved for M4
* Shouldn't be used at A core and Linux side.
*
*/
/*
decoder_boot: decoder_boot@0x84000000 {
no-map;
reg = <0 0x84000000 0 0x2000000>;
};
encoder_boot: encoder_boot@0x86000000 {
no-map;
reg = <0 0x86000000 0 0x200000>;
};
rpmsg_reserved: rpmsg@0x90000000 {
no-map;
reg = <0 0x90000000 0 0x400000>;
};
rpmsg_dma_reserved:rpmsg_dma@0x90400000 {
compatible = "shared-dma-pool";
no-map;
reg = <0 0x90400000 0 0x1C00000>;
};
decoder_rpc: decoder_rpc@0x92000000 {
no-map;
reg = <0 0x92000000 0 0x200000>;
};
encoder_rpc: encoder_rpc@0x92200000 {
no-map;
reg = <0 0x92200000 0 0x200000>;
};
dsp_reserved: dsp@0x92400000 {
no-map;
reg = <0 0x92400000 0 0x2000000>;
};
encoder_reserved: encoder_reserved@0x94400000 {
no-map;
reg = <0 0x94400000 0 0x800000>;
};
*/
/* global autoconfigured region for contiguous allocations */
linux,cma {
compatible = "shared-dma-pool";
reusable;
size = <0 0x3c000000>;
alloc-ranges = <0 0x96000000 0 0x3c000000>;
linux,cma-default;
};
};

 

Best Regards,

Kazuma Sasaki.

Outcomes