Devicetree 提供了两种方式预留内存: reserved-memory和memreserve
memreserve示例
/memreserve/ 0x40000000 0x01000000
reserved-memory示例
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
ipu_cma@90000000 {
compatible = "shared-dma-pool";
reg = <0x90000000 0x4000000>;
reusable;
status = "okay";
};
区别1:
二者在dtc编译时中处理的方法不同, reserved-memory做为device tree node解析到device-tree structure中; memreserve最终会加到dtb文件的memory reserve map,
见下图