Kernel bump from 3.0.35 to 5.10

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Kernel bump from 3.0.35 to 5.10

Jump to solution
815 Views
habib_farahani
Contributor II

Hello All,  I am embarking on a kernel bump from 3.0.35 to 5.10 using this link https://github.com/Freescale/linux-fslc/tree/5.10.x+fslc

I am using gcc 12.2.0 and using LOADADDR 0x10008000 and concatenating DTB to my uImage for a single image to load by u-boot.

After boot kernel hangs, have no idea where and even though I have enabled low level UART debugs, no print is produces.

Would anyone have any suggestions?

 

Best,

Habib

0 Kudos
1 Solution
787 Views
joanxie
NXP TechSupport
NXP TechSupport

you can refer to the linux user guide from link as below, different processor has different address, pls check by yourself

"https://www.nxp.com/design/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applicat..."

View solution in original post

0 Kudos
4 Replies
791 Views
habib_farahani
Contributor II

Thanks @joanxie Where do I find the correct address to load the DTB?
At the moment, I just concatenate .dtb file  to the end of the image (uImage). Which worked fine in 4.19 but not in 5.10.  As I said, I use a very old u-boot that I cannot upgrade and does not even support "fdt" command.  But If I know the correct address to load DTB then I can use load it from mmc into memory.

0 Kudos
788 Views
joanxie
NXP TechSupport
NXP TechSupport

you can refer to the linux user guide from link as below, different processor has different address, pls check by yourself

"https://www.nxp.com/design/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applicat..."

0 Kudos
800 Views
habib_farahani
Contributor II

After enabling early printk, it seems that kernel loads but has problems finding dtb.

 

I am using a older u-boot and the ability to upgrade u-boot is not an option.  Can anyone suggest a  work around

## Booting kernel from Legacy Image at 10800000 ...
Image Name: linux-5.10.120(XPHUB)
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 8757153 Bytes = 8.4 MB
Load Address: 10008000
Entry Point: 10008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK

Starting kernel ...


Error: invalid dtb and unrecognized/unsupported machine ID
r1=0x00000f8c, r2=0x10000100
r2[]=05 00 00 00 01 00 41 54 00 00 00 00 00 00 00 00
Available machine support:

ID (hex) NAME
ffffffff Generic DT based system
ffffffff Freescale i.MX6 Quad/DualLite (Device Tree)
ffffffff SCI XPHUB (Device Tree)
ffffffff Freescale i.MX6 SoloLite (Device Tree)
ffffffff Freescale i.MX6 SoloX (Device Tree)
ffffffff Freescale i.MX6 Ultralite (Device Tree)
ffffffff Freescale i.MX7 Dual (Device Tree)
ffffffff Freescale i.MX50 (Device Tree Support)
ffffffff Freescale i.MX51 (Device Tree Support)
ffffffff Freescale i.MX53 (Device Tree Support)
ffffffff Freescale Vybrid VF5xx/VF6xx (Device Tree)
ffffffff Freescale LS1021A
ffffffff ARM-Versatile Express

Please check your kernel config and/or bootloader.

0 Kudos
797 Views
joanxie
NXP TechSupport
NXP TechSupport

it seems that put the dtb int he wrong address, you can use mmc read command to put the devicetree file to the correct address, then boot again

0 Kudos