I have a board based on the P5020 SoC. I get following boot log when I try to boot linux (Freescale SDK 1.9):
No /soc@ffe000000/qman@318000 property 'fsl,qman-fqd', using memblock_alloc(0000000000400000)
No /soc@ffe000000/qman@318000 property 'fsl,qman-pfdr', using memblock_alloc(0000000002000000)
Qman ver:0a01,01,02,00
No /soc@ffe000000/bman@31a000 property 'fsl,bman-fbpr', using memblock_alloc(0000000001000000)
Bman ver:0a02,01,00
pme: No /soc@ffe000000/pme@316000 property 'fsl,pme-pdsr', using memblock_alloc(0x0000000001000000)
pme: No /soc@ffe000000/pme@316000 property 'fsl,pme-sre', using memblock_alloc(0x0000000000a00000)
I have those nodes in my device tree, but the bootlog stays the same:
under / :
reserved-memory { | |||
#address-cells = <2>; | |||
#size-cells = <2>; | |||
ranges; | |||
pme_pdsr: pme-pdsr { | |||
compatible = "fsl,pme-pdsr"; | |||
alloc-ranges = <0 0 0x10 0>; | |||
size = <0 0x1000000>; | |||
alignment = <0 0x1000000>; | |||
}; | |||
pme_sre: pme-sre { | |||
compatible = "fsl,pme-sre"; | |||
alloc-ranges = <0 0 0x10 0>; | |||
size = <0 0xa00000>; | |||
alignment = <0 0xa00000>; | |||
}; | |||
qman_fqd: qman-fqd { | |||
compatible = "fsl,qman-fqd"; | |||
alloc-ranges = <0 0 0x10 0>; | |||
size = <0 0x400000>; | |||
alignment = <0 0x400000>; | |||
}; | |||
qman_pfdr: qman-pfdr { | |||
compatible = "fsl,qman-pfdr"; | |||
alloc-ranges = <0 0 0x10 0>; | |||
size = <0 0x2000000>; | |||
alignment = <0 0x2000000>; | |||
}; | |||
bman_fbpr: bman-fbpr { | |||
compatible = "fsl,bman-fbpr"; | |||
alloc-ranges = <0 0 0x10 0>; | |||
size = <0 0x1000000>; | |||
alignment = <0 0x1000000>; | |||
}; | |||
}; |
under /soc: soc@ffe000000/fman@400000:
pme@316000 { | ||
memory-region = <&pme_pdsr &pme_sre>; | ||
}; | ||
qman@318000 { | ||
memory-region = <&qman_fqd &qman_pfdr>; | ||
}; | ||
bman@31a000 { | ||
memory-region = <&bman_fbpr>; | ||
}; |
Solved! Go to Solution.
I verified SDK 1.9 pre-built images on P5020DS, also produced the above message during Linux Kernel booting.
This is because Linux Kernel parses the <name> property to extract the memory location and size and memblock_reserve() it. If it isn't supplied, memblock_alloc() the default size, so it doesn't affect the normal function.
If you want to use these property, please refer to the following device tree definition.
qman: qman@318000 {
compatible = "fsl,qman";
reg = <0x318000 0x1000>;
fsl,qman-fqd = <0x0 0x22000000 0x0 0x00200000>;
fsl,qman-pfdr = <0x0 0x21000000 0x0 0x01000000>;
fsl,liodn = <0x1f>;
};
bman: bman@31a000 {
compatible = "fsl,bman";
reg = <0x31a000 0x1000>;
interrupts = <16 2 1 3>;
/* Same as fsl,qman-*, use default allocation */
/* fsl,bman-fbpr = <0x0 0x22000000 0x0 0x01000000>; */
};
pme: pme@316000 {
compatible = "fsl,p4080-pme", "fsl,pme";
reg = <0x316000 0x10000>;
fsl,pme-pdsr = <0x0 0x20000000 0x0 0x01000000>
fsl,pme-sre = <0x0 0x30000000 0x0 0x01000000>
};
Have a great day,
Yiping
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
I verified SDK 1.9 pre-built images on P5020DS, also produced the above message during Linux Kernel booting.
This is because Linux Kernel parses the <name> property to extract the memory location and size and memblock_reserve() it. If it isn't supplied, memblock_alloc() the default size, so it doesn't affect the normal function.
If you want to use these property, please refer to the following device tree definition.
qman: qman@318000 {
compatible = "fsl,qman";
reg = <0x318000 0x1000>;
fsl,qman-fqd = <0x0 0x22000000 0x0 0x00200000>;
fsl,qman-pfdr = <0x0 0x21000000 0x0 0x01000000>;
fsl,liodn = <0x1f>;
};
bman: bman@31a000 {
compatible = "fsl,bman";
reg = <0x31a000 0x1000>;
interrupts = <16 2 1 3>;
/* Same as fsl,qman-*, use default allocation */
/* fsl,bman-fbpr = <0x0 0x22000000 0x0 0x01000000>; */
};
pme: pme@316000 {
compatible = "fsl,p4080-pme", "fsl,pme";
reg = <0x316000 0x10000>;
fsl,pme-pdsr = <0x0 0x20000000 0x0 0x01000000>
fsl,pme-sre = <0x0 0x30000000 0x0 0x01000000>
};
Have a great day,
Yiping
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Thank you for your answer!
This helped me and now it works.
Hint: You might edit your post as you forgot some semicolons.
Please add the following in your dts file.
/include/ "qoriq-pme-0.dtsi"
/include/ "qoriq-qman1.dtsi"
/include/ "qoriq-bman1.dtsi"
For details, please refer to arch/powerpc/boot/dts/fsl/p5020si-post.dtsi in Kernel source.
Have a great day,
Yiping
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------