[Letux-kernel] X1600 / LX16 support - here: fw_getenv() issue

H. Nikolaus Schaller hns at goldelico.com
Wed Feb 7 16:55:44 CET 2024



> Am 07.02.2024 um 15:44 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
> 
> I think adding print statements to this code could show if and why a
> bad linux_env is passed to the kernel.

First log:

linux_params_init: env=a1f64440 idx=0 envp=linux_env_p
linux_env_set: name=memsize val=32 idx=0 envp=linux_env_p
linux_env_set: name=initrd_start val=0xA0000000 idx=1 envp=linux_env_p
linux_env_set: name=initrd_size val=0x0 idx=2 envp=linux_env_p
linux_env_set: name=flash_start val=0x00000000 idx=3 envp=linux_env_p
linux_env_set: name=flash_size val=0x0 idx=4 envp=linux_env_p
linux_env_set: name=ethaddr val=00:11:22:33:44:55 idx=5 envp=linux_env_p

Starting kernel ...

boot_jump_linux: theKernel=806d8af8 linux_argc=7 linux_argv=a1f64000 linux_env=a1f64440

boot_jump_linux: linux_env[0]=333d6d65
boot_jump_linux: linux_env[1]=30404d32
boot_jump_linux: linux_env[2]=a1003078
boot_jump_linux: linux_env[3]=a1f64873
^^^ this is from U-Boot
vvv this is from kernel
start_kernel: fw_arg1=a1f64000 fw_arg2=a1f64440 fw_arg3=00000000
start_kernel: fw_arg1[0] 00000000
start_kernel: fw_arg1[1] a1f64400
start_kernel: fw_arg1[2] a1f64417
start_kernel: fw_arg1[3] a1f64418
start_kernel: fw_arg2[0] 333d6d65
start_kernel: fw_arg2[1] 30404d32
start_kernel: fw_arg2[2] a1003078
start_kernel: fw_arg2[3] a1f64873
start_kernel: start


So it already gets damaged inside U-Boot before (*theKernel)()
is called...

BR,
Nikolaus



More information about the Letux-kernel mailing list