I would like to reserve 4GiB area using the CMA (Contiguous Memory Allocator) on the Jetson AGX Xavier Industrial.
I thought it would work by adding the following to the reserved-memory section of the device tree, but after booting and checking dmesg, it seems that only 64MiB is reserved.
How can I reserve 4GiB area?
※I use JetPack 4.6.3.
reserved-memory {
#address-cells = <0x2>;
#size-cells = <0x2>;
ranges;
generic_carveout {
compatible = "nvidia,generic_carveout";
size = <0x0 0x0>;
alignment = <0x0 0x100000>;
alloc-ranges = <0x0 0x0 0x1 0x0>;
no-map;
status = "disabled";
linux,phandle = <0xcb>;
phandle = <0xcb>;
};
grid-of-semaphores {
compatible = "nvidia,gosmem";
size = <0x0 0x6000>;
alignment = <0x0 0x1000>;
no-map;
status = "okay";
cvdevs = <0xc6 0xc7 0xc8 0xc9 0x89 0x90>;
linux,phandle = <0xca>;
phandle = <0xca>;
};
ramoops_carveout {
compatible = "nvidia,ramoops";
size = <0x0 0x200000>;
alignment = <0x0 0x10000>;
alloc-ranges = <0x0 0x0 0x1 0x0>;
no-map;
status = "okay";
linux,phandle = <0x1c2>;
phandle = <0x1c2>;
};
fb0_carveout {
reg = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>;
reg-names = "surface", "lut";
no-map;
linux,phandle = <0x69>;
phandle = <0x69>;
};
fb1_carveout {
reg = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>;
reg-names = "surface", "lut";
no-map;
linux,phandle = <0x6a>;
phandle = <0x6a>;
};
fb2_carveout {
reg = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>;
reg-names = "surface", "lut";
no-map;
linux,phandle = <0x6b>;
phandle = <0x6b>;
};
fb3_carveout {
reg = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>;
reg-names = "surface", "lut";
no-map;
linux,phandle = <0x6c>;
phandle = <0x6c>;
};
vpr-carveout {
compatible = "nvidia,vpr-carveout";
size = <0x0 0x2a000000>;
alignment = <0x0 0x400000>;
alloc-ranges = <0x0 0x80000000 0x0 0x70000000>;
reusable;
linux,phandle = <0x1c3>;
phandle = <0x1c3>;
};
///////////////////////////addition///////////////////////////////
cma_4G {
compatible = "shared-dma-pool";
reusable;
reg = <0x1 0x0 0x1 0x0>; // offset:4GiB, size:4GiB
label = "cma_4G";
};
///////////////////////////addition///////////////////////////////
};
[ 0.000000] cma: Reserved 64 MiB at 0x00000000fbc00000
[ 0.000000] Memory: 27788508K/29095924K available (15358K kernel code, 2956K rwdata, 6692K rodata, 640K init, 612K bss, 553752K reserved, 753664K cma-reserved)
[ 1.119279] dma_declare_coherent_resizable_cma_memory:324: resizable heap=vpr, ase=0x00000000c6000000, size=0x2a000000
[ 1.119655] cma: enabled page replacement for spfn=c6000, epfn=f0000
[ 1.119663] dma_declare_coherent_resizable_cma_memory:373: resizable cma heap=vpr create successful