[Letux-kernel] jz4730-i2c - clocksource

H. Nikolaus Schaller hns at goldelico.com
Sun Mar 7 18:11:42 CET 2021


Hi Paul,

> Am 07.03.2021 um 17:06 schrieb Paul Boddie <paul at boddie.org.uk>:
> 
> On Sunday, 7 March 2021 14:37:40 CET H. Nikolaus Schaller wrote:
>> 
>>> Am 07.03.2021 um 14:05 schrieb Paul Boddie <paul at boddie.org.uk>:
>>> 
>>> The uImage file should go in the first (FAT) partition, of course.
>> 
>> Yes. Exact names depends on what U-Boot expects. On my system it should be
>> named "Image" without the "u".
> 
> Mine works with uImage since my L4Re payloads work fine with that name.
> 
> However, I am using the legacy U-Boot here. Will that support some of the 
> features you are using, such as bootargs.scr and loading device tree files?

Ah, I see. The legacy u-boot does neither support loading DTB nor is it able
to uncompress bigger uImages.

This is why I use the two-staged approach where legacy u-boot loads the
new u-boot by Ludomir which then can do everything. Loading bootargs.scr
is done by a boot.scr that I provide.

I think this is the reason why I have named it "Image". Because legacy-u-boot
has hard-coded to load an "uImage". So the second phase u-boot is called
"uImage" and that it does not try to load itself the kernel is named "Image".

> 
> [...]
> 
>>> ingenic/alpha400.dtb
>>> 
>>> Where would this be unpacked? Should it be on the first partition? What
>>> happened to the dtbs/5.12.0-rc2-letux-l400+ part of the path?
>> 
>> It should go to /boot and dtbs/5.12.0-rc2-letux-l400+ should be stripped
>> off. The reason is that this is loaded by U-Boot which does not know the
>> exact kernel name. Only the kernel knows its name and can search modules
>> in /lib/modules/5.12.0-rc2-letux-l400+/
>> 
>> This means the .dtb must be located where U-Boot (or a boot.scr) is looking
>> for it.
>> 
>> So I have:
>> 
>> root at letux:~# ls -lR /boot
>> /boot:
>> total 5136
>> -rw-r--r-- 1 root root 5232705 Mar  4  2021 Image
>> -rw-r--r-- 1 root root      96 Mar  4  2021 Image.info
>> -rw-r--r-- 1 root root    2108 Mar  4  2021 bootargs.scr
>> drwxr-xr-x 2 root root    4096 Mar  4  2021 ingenic
> 
> So this is in the FAT partition?

Ah, sorry.

That was an older /boot without having mounted the FAT
partition. The FAT partition looks like:

root at letux:~# ls -lR /boot
/boot:
total 5880
-rwxr-xr-x 1 root root 5233921 Mar  7  2021 Image
-rwxr-xr-x 1 root root      79 Mar  7  2021 Image.info
-rwxr-xr-x 1 root root    2156 Jan 31  2021 boot.scr
-rwxr-xr-x 1 root root    2108 Mar  7  2021 bootargs.scr
drwxr-xr-x 2 root root    8192 Mar  7  2021 ingenic
-rwxr-xr-x 1 root root     843 Jan 31  2021 makesd.info
-rwxr-xr-x 1 root root  500979 Jan 31  2021 u-boot.bin
-rwxr-xr-x 1 root root  234810 Jan 31  2021 uImage

/boot/ingenic:
total 16
-rwxr-xr-x 1 root root 12078 Mar  7  2021 alpha400.dtb
root at letux:~# 

here we see that both, uImage and Image exist plus
the u-boot.bin for the second phase U-Boot.

And I have a boot.scr (for the second phase u-boot)
which loads DTB and Image and runs bootargs.scr before
starting the kernel:

	https://download.goldelico.com/letux-u-boot/Mipsbook400/latest/

I have developed that once last year and the boot process
is a "never touch a running system unless absolutely necessary"
thing for me :)

What you can also see is that my installation process
has updated Image (+.info), bootargs.scr and ingenic/alpha400.dtb
from my kernel build today. The others are untouched.

Hope this is helpful.

BR,
Nikolaus





More information about the Letux-kernel mailing list