[meta-ti] [PATCH 1/2] linux/cmem.inc: Support reserving memory for CMEM.
Jacob Stiffler
j-stiffler at ti.com
Mon May 18 05:20:58 PDT 2015
To reserve contiguous memory for CMEM:
* include the "recipes-kernel/linux/cmem.inc"
* Set CMEM_BASE and CMEM_SIZE to the physical memory address and size,
respectively, to reserve for CMEM.
Currently limited to reserving a single memory region used to create
a single buffer pool of a single buffer.
Signed-off-by: Jacob Stiffler <j-stiffler at ti.com>
---
recipes-kernel/linux/cmem.inc | 22 ++++++++++++++++++++++
recipes-kernel/linux/linux/cmem.dtsi | 24 ++++++++++++++++++++++++
2 files changed, 46 insertions(+)
create mode 100644 recipes-kernel/linux/cmem.inc
create mode 100644 recipes-kernel/linux/linux/cmem.dtsi
diff --git a/recipes-kernel/linux/cmem.inc b/recipes-kernel/linux/cmem.inc
new file mode 100644
index 0000000..207bdc6
--- /dev/null
+++ b/recipes-kernel/linux/cmem.inc
@@ -0,0 +1,22 @@
+FILESEXTRAPATHS_append := ":${THISDIR}/linux"
+
+SRC_URI += "file://cmem.dtsi"
+
+CMEM_BASE ?= ""
+CMEM_SIZE ?= ""
+
+do_compileconfigs_prepend() {
+ if [ ! -z "${CMEM_BASE}" ]
+ then
+ cp ${WORKDIR}/cmem.dtsi ${S}/arch/arm/boot/dts/${MACHINE}-cmem.dtsi
+
+ sed -i -e "s|__CMEM_BASE__|${CMEM_BASE}|g" \
+ -e "s|__CMEM_SIZE__|${CMEM_SIZE}|g" \
+ ${S}/arch/arm/boot/dts/${MACHINE}-cmem.dtsi
+
+ for dts in ${KERNEL_DEVICETREE}
+ do
+ echo "#include \"${MACHINE}-cmem.dtsi\"" >> ${S}/arch/arm/boot/dts/${dts%.dtb}.dts
+ done
+ fi
+}
diff --git a/recipes-kernel/linux/linux/cmem.dtsi b/recipes-kernel/linux/linux/cmem.dtsi
new file mode 100644
index 0000000..6b1da99
--- /dev/null
+++ b/recipes-kernel/linux/linux/cmem.dtsi
@@ -0,0 +1,24 @@
+/ {
+ reserved-memory {
+ cmem_block_mem_0: cmem_block_mem at __CMEM_BASE__ {
+ reg = <0x__CMEM_BASE__ 0x__CMEM_SIZE__>;
+ no-map;
+ status = "okay";
+ };
+ };
+
+ cmem {
+ compatible = "ti,cmem";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ status = "okay";
+
+ cmem_block_0: cmem_block at 0 {
+ reg = <0>;
+ memory-region = <&cmem_block_mem_0>;
+ cmem-buf-pools = <1 0x__CMEM_SIZE__>;
+ };
+ };
+
+};
--
1.7.9.5
More information about the meta-ti
mailing list