Hi.
I'm compiling the Linux kernel for the i.mx6 from github.com/torvalds/linux (version 4.14).
I have the .dtb files for both version.
It will run on an i.MX6D but when I try to run the same kernel on an i.MX6QP, the kernel won't start.
If I compile in Yocto (Rocko version, it will run on both types).
Is there something I need to enable in the kernel code for it to run on an i.MX6QP?
Thanks,
Niklas
Solved! Go to Solution.
I managed to figure it out.
I had to update the u-boot to 2017 (used 2015).
Please refer to this:i.MX6: Using kernel from Linus mainline instead of Freescale git
I tried linux 4.18-rc3 from torvalds, and found that there are some clock missing in cpu node in device tree! that's why it failed to start!
I'm confused to NXP, why they are not so open to mainline linux source code?
Can you explain what you had to add to the cpu node? As I'm also trying linux 4.18 on my imx6q board, but it doesn't boot... My uboot is old (2016.03) but I prefer to keep it, as it's working...
Well, sorry I forget the details, but following steps would help us to find what we need exactly.
And, it's better to remove phandle=xxx in dtc file generated in step2, since they should be different in different versions and result in a mess in diff view
how did you compile the kernel for mx6d and imx6qp? if you need to build the kernel for imx6qp, when you bitbake, you need to choose the imx6qp board, then compile and build again, did you try this?
I managed to figure it out.
I had to update the u-boot to 2017 (used 2015).
Why? Why does the bootloader version makes a difference?