尝试启动新的 uImage

Attempting to boot new uImage

我正在尝试通过 uboot 启动 uImage,但我收到了一些看似矛盾的日志信息:

update Kernel1 tftp uImage-2.5 6.35. -digi-armv7a.LONEPEAK-Ver-4_33

Using FEC0 device

TFTP from server 10.12.1.77; our IP address is 10.12.1.205

Filename 'uImage-2.6.35-digi-armv7a.LONEPEAK-Ver-4_33'.

Load address: 0x94000000

Loading: #################################################################

     #################################################################

     ###########################################

done

Bytes transferred = 2533360 (26a7f0 hex)

Calculated checksum = 0x49669c61

Updating partition 'Kernel1'

Erasing 128 KiB @ 0x08540000:  0%          
Erasing 128 KiB @ 0x085e0000: 20%          
Erasing 128 KiB @ 0x08680000: 41%          
Erasing 128 KiB @ 0x08720000: 62%          
Erasing 128 KiB @ 0x087c0000: 83%          

Erasing:   complete                                      

Writing:  0%          
Writing: 51%          

Writing:   complete                                      

Verifying:  0%          
Verifying: 51%          

Verifying: complete                                      

Writing Parameters to NVRAM

Update successful

上面显示更新成功,但是当发出重启命令时,我得到:

scanning bus for devices... 1 USB Device(s) found

       scanning bus for storage devices... 0 Storage Device(s) found


** Invalid boot device **

Booting partition 'Kernel0'

## Booting kernel from Legacy Image at 90007fc0 ...

   Image Name:   Linux-2.6.35.14-tjerbmx51_0005+

   Created:      2018-10-16  21:35:37 UTC

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    2533296 Bytes =  2.4 MB

   Load Address: 90008000

   Entry Point:  90008000

   Loading Kernel Image ... OK

OK


Starting kernel ...

所以我的问题是:

有没有一种方法可以让我在构建内核时对其进行版本控制 s/t 我可以设置 'Image Name' 以便我知道它是我的内核正在加载而不是某种类型的遗留映像? ?

也许 Linux 内核 .config 文件的 CONFIG_LOCALVERSION 选项可以帮助您。

来自Kernel.org

Keep a backup kernel handy in case something goes wrong. This is especially true for the development releases, since each new release contains new code which has not been debugged. Make sure you keep a backup of the modules corresponding to that kernel, as well. If you are installing a new kernel with the same version number as your working kernel, make a backup of your modules directory before you do a make modules_install.

Alternatively, before compiling, use the kernel config option “LOCALVERSION” to append a unique suffix to the regular kernel version. LOCALVERSION can be set in the “General Setup” menu.

因此在内核配置期间,您可以为内核添加一些明确的后缀,例如CONFIG_LOCALVERSION="-test_some_stuff".

一些有用的链接:1 and 2.