Перейти к содержанию
    

идентификация ядра загрузчиком

On 2/19/2021 at 9:35 PM, do_not_know_Linux said:

на днях попытаюсь пересобрать ядро в попытке загрузиться без initramfs. потому что сейчас загрузка ядра обрывается как раз на сообщении 


(initramfs) file system .....

и все, ни вперед ни назад.

Приведите скрипт uboot : загрузка ОС.

Если uboot не найдет initfamfs, что uboot будет делать ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проверьте, что ранние сообщения ядра разрешены в конфигурации ядра:
https://www.kernel.org/doc/html/latest/x86/earlyprintk.html

Может что-то подскажут.
Ядро стартует, но непонятно по какой причине падает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость do_not_know_Linux
On 2/21/2021 at 4:03 PM, Tarbal said:

Проверьте, что ранние сообщения ядра разрешены в конфигурации ядра:
https://www.kernel.org/doc/html/latest/x86/earlyprintk.html

Может что-то подскажут.
Ядро стартует, но непонятно по какой причине падает.

спасибо

On 2/21/2021 at 7:28 AM, gosha said:

Приведите скрипт uboot : загрузка ОС.

Если uboot не найдет initfamfs, что uboot будет делать ?

надо пересобрать u-boot чтобы грузил без initramfs

 

ok, немного позже закину вывод загрузки ядра без initramfs

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость do_not_know_Linux
On 2/21/2021 at 7:28 AM, gosha said:

Приведите скрипт uboot : загрузка ОС.

Если uboot не найдет initfamfs, что uboot будет делать ?

U-Boot SPL 2020.10-armbian (Feb 22 2021 - 21:44:40 +0300)
DRAM: 2048 MiB
Trying to boot from MMC1
NOTICE:  BL31: v2.4(debug):c36e2d4-dirty
NOTICE:  BL31: Built : 21:44:30, Feb 22 2021
NOTICE:  BL31: Detected Allwinner A64/H64/R18 SoC (1689)
NOTICE:  BL31: Found U-Boot DTB at 0x408ccb8, model: OrangePi Win/Win Plus
INFO:    ARM GICv2 driver initialized
INFO:    Configuring SPC Controller
INFO:    PMIC: Probing AXP803 on RSB
INFO:    PMIC: dcdc1 voltage: 3.300V
INFO:    PMIC: dcdc5 voltage: 1.500V
INFO:    PMIC: dcdc6 voltage: 1.100V
INFO:    PMIC: dldo1 voltage: 3.300V
INFO:    PMIC: dldo2 voltage: 3.300V
INFO:    PMIC: dldo3 voltage: 3.300V
INFO:    PMIC: dldo4 voltage: 3.300V
INFO:    PMIC: fldo1 voltage: 1.200V
INFO:    PMIC: Enabling DC SW
INFO:    BL31: Platform setup done
INFO:    BL31: Initializing runtime services
INFO:    BL31: cortex_a53: CPU workaround for 843419 was applied
INFO:    BL31: cortex_a53: CPU workaround for 855873 was applied
INFO:    BL31: cortex_a53: CPU workaround for 1530924 was applied
INFO:    PSCI: Suspend is unavailable
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0x4a000000
INFO:    SPSR = 0x3c9


U-Boot 2020.10-armbian (Feb 22 2021 - 21:44:40 +0300) Allwinner Technology

CPU:   Allwinner A64 (SUN50I)
Model: OrangePi Win/Win Plus
DRAM:  2 GiB
MMC:   mmc@1c0f000: 0, mmc@1c10000: 2, mmc@1c11000: 1
Loading Environment from FAT... Card did not respond to voltage select!
In:    serial@1c28000
Out:   serial@1c28000
Err:   serial@1c28000
Net:   phy interface7
eth0: ethernet@1c30000
starting USB...
Bus usb@1c1a000: USB EHCI 1.00
Bus usb@1c1a400: USB OHCI 1.0
Bus usb@1c1b000: USB EHCI 1.00
Bus usb@1c1b400: USB OHCI 1.0
scanning bus usb@1c1a000 for devices... 1 USB Device(s) found
scanning bus usb@1c1a400 for devices... 1 USB Device(s) found
scanning bus usb@1c1b000 for devices... Device NOT ready
   Request Sense returned 02 3A 00
5 USB Device(s) found
scanning bus usb@1c1b400 for devices... 1 USB Device(s) found
  Autoboot in 1 seconds, press <Space> to stop
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot/boot.scr
3173 bytes read in 5 ms (619.1 KiB/s)
## Executing script at 4fc00000
U-boot loaded from SD
Boot script loaded from mmc
155 bytes read in 5 ms (30.3 KiB/s)
39706 bytes read in 9 ms (4.2 MiB/s)
3821 bytes read in 9 ms (414.1 KiB/s)
Applying kernel provided DT fixup script (sun50i-a64-fixup.scr)
## Executing script at 45000000
11002591 bytes read in 531 ms (19.8 MiB/s)
18881024 bytes read in 908 ms (19.8 MiB/s)
## Loading init Ramdisk from Legacy Image at 4fe00000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    11002527 Bytes = 10.5 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 4fa00000
   Booting using the fdt blob at 0x4fa00000
EHCI failed to shut down host controller.
   Loading Ramdisk to 49581000, end 49fff29f ... OK
   Loading Device Tree to 000000004950e000, end 0000000049580fff ... OK

Starting kernel ...

 

тут я попытался стартануть без initramfs. как вы думаете почему не вышло?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 minutes ago, do_not_know_Linux said:

 

тут я попытался стартануть без initramfs. как вы думаете почему не вышло?

Я полагаю, что не было возможности монтировать корневую файловую систему. Идея initramfs в том, чтобы уметь смонтировать файловую систему любого формата ext3, ext4 и т.д., драйверы которой можно подгрузить с диска. Нужен начальный диск с поддерживаемым по умолчанию форматом.
Но в вашем случае до этого не дошло даже. Ваше ядро упало на более ранней стадии.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость do_not_know_Linux
2 hours ago, Tarbal said:

 

[*] ext2
  [*] ext4
  [*] btrfs
  

вобщем все, как мне показалось важные файловые системы я включил прямо в ядро. ладно, если больше нет мыслей по этому поводу, то пойду делать глупости дальше. может повезет и ядро стартанет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, do_not_know_Linux said:

[*] ext2
  [*] ext4
  [*] btrfs
  

вобщем все, как мне показалось важные файловые системы я включил прямо в ядро. ладно, если больше нет мыслей по этому поводу, то пойду делать глупости дальше. может повезет и ядро стартанет.

Это будет доступно, когда смонтируется файловая система, а без нее не будет. Вопрос о курице и яйце. initramfs позволяет решить этот вопрос.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость do_not_know_Linux
On 2/24/2021 at 1:33 AM, Tarbal said:

Это будет доступно, когда смонтируется файловая система, а без нее не будет. Вопрос о курице и яйце. initramfs позволяет решить этот вопрос.

вы хотите сказать, что без  initramfs нельзя загрузиться?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно и без initramfs, зависит от разбиения диска на разделы. В интернете есть информация зачем и как используется initramfs.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость do_not_know_Linux
1 hour ago, mdmitry said:

Можно и без initramfs, зависит от разбиения диска на разделы. В интернете есть информация зачем и как используется initramfs.

да, это очень важно

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 2/23/2021 at 10:39 PM, do_not_know_Linux said:


   Load Address: 00000000
   Entry Point:  00000000

 

тут я попытался стартануть без initramfs. как вы думаете почему не вышло?

Это .log uboot

Приведите скрипт (исходный текст скрипта uboot) загрузки.

И .log загрузки успешного ядра.

Там такой же Entry_point ? Всё по нулям ??

Уже плохе помню: uboot грузит .elf .bin .img ?

 

Что говорит утилита readelf от кросскомпилятора на успешном и неуспешном ядре ?

https://www.opennet.ru/man.shtml?topic=readelf&category=1&russian=1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость do_not_know_Linux
13 hours ago, gosha said:

Это .log uboot

Приведите скрипт (исходный текст скрипта uboot) загрузки.

И .log загрузки успешного ядра.

Там такой же Entry_point ? Всё по нулям ??

Уже плохе помню: uboot грузит .elf .bin .img ?

 

Что говорит утилита readelf от кросскомпилятора на успешном и неуспешном ядре ?

https://www.opennet.ru/man.shtml?topic=readelf&category=1&russian=1


U-Boot SPL 2020.10-armbian (Feb 17 2021 - 05:45:53 +0300)
DRAM: 2048 MiB
Trying to boot from MMC1
NOTICE:  BL31: v2.4(debug):6630681-dirty
NOTICE:  BL31: Built : 05:45:43, Feb 17 2021
NOTICE:  BL31: Detected Allwinner A64/H64/R18 SoC (1689)
NOTICE:  BL31: Found U-Boot DTB at 0x408ccb8, model: OrangePi Win/Win Plus
INFO:    ARM GICv2 driver initialized
INFO:    Configuring SPC Controller
INFO:    PMIC: Probing AXP803 on RSB
INFO:    PMIC: dcdc1 voltage: 3.300V
INFO:    PMIC: dcdc5 voltage: 1.500V
INFO:    PMIC: dcdc6 voltage: 1.100V
INFO:    PMIC: dldo1 voltage: 3.300V
INFO:    PMIC: dldo2 voltage: 3.300V
INFO:    PMIC: dldo3 voltage: 3.300V
INFO:    PMIC: dldo4 voltage: 3.300V
INFO:    PMIC: fldo1 voltage: 1.200V
INFO:    PMIC: Enabling DC SW
INFO:    BL31: Platform setup done
INFO:    BL31: Initializing runtime services
INFO:    BL31: cortex_a53: CPU workaround for 843419 was applied
INFO:    BL31: cortex_a53: CPU workaround for 855873 was applied
INFO:    BL31: cortex_a53: CPU workaround for 1530924 was applied
NOTICE:  PSCI: System suspend is unavailable
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0x4a000000
INFO:    SPSR = 0x3c9


U-Boot 2020.10-armbian (Feb 17 2021 - 05:45:53 +0300) Allwinner Technology

CPU:   Allwinner A64 (SUN50I)
Model: OrangePi Win/Win Plus
DRAM:  2 GiB
MMC:   mmc@1c0f000: 0, mmc@1c10000: 2, mmc@1c11000: 1
Loading Environment from FAT... Card did not respond to voltage select!
In:    serial@1c28000
Out:   serial@1c28000
Err:   serial@1c28000
Net:   phy interface7
eth0: ethernet@1c30000
starting USB...
Bus usb@1c1a000: USB EHCI 1.00
Bus usb@1c1a400: USB OHCI 1.0
Bus usb@1c1b000: USB EHCI 1.00
Bus usb@1c1b400: USB OHCI 1.0
scanning bus usb@1c1a000 for devices... 1 USB Device(s) found
scanning bus usb@1c1a400 for devices... 1 USB Device(s) found
scanning bus usb@1c1b000 for devices... Device NOT ready
   Request Sense returned 02 3A 00
5 USB Device(s) found
scanning bus usb@1c1b400 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Autoboot in 1 seconds, press <Space> to stop
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot/boot.scr
3173 bytes read in 3 ms (1 MiB/s)
## Executing script at 4fc00000
U-boot loaded from SD
Boot script loaded from mmc
204 bytes read in 3 ms (66.4 KiB/s)
39706 bytes read in 8 ms (4.7 MiB/s)
3821 bytes read in 5 ms (746.1 KiB/s)
Applying kernel provided DT fixup script (sun50i-a64-fixup.scr)
## Executing script at 45000000
11126389 bytes read in 534 ms (19.9 MiB/s)
18201088 bytes read in 873 ms (19.9 MiB/s)
## Loading init Ramdisk from Legacy Image at 4fe00000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    11126325 Bytes = 10.6 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 4fa00000
   Booting using the fdt blob at 0x4fa00000
EHCI failed to shut down host controller.
   Loading Ramdisk to 49563000, end 49fff635 ... OK
   Loading Device Tree to 00000000494f0000, end 0000000049562fff ... OK

Starting kernel ...



Armbian 21.02.0-trunk Buster ttyS0 

Arm login:

так стартует рабочая система с initramfs

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

11 hours ago, do_not_know_Linux said:


Applying kernel provided DT fixup script (sun50i-a64-fixup.scr)
## Executing script at 45000000
11126389 bytes read in 534 ms (19.9 MiB/s)
18201088 bytes read in 873 ms (19.9 MiB/s)
## Loading init Ramdisk from Legacy Image at 4fe00000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    11126325 Bytes = 10.6 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 4fa00000
   Booting using the fdt blob at 0x4fa00000
EHCI failed to shut down host controller.
   Loading Ramdisk to 49563000, end 49fff635 ... OK
   Loading Device Tree to 00000000494f0000, end 0000000049562fff ... OK

Starting kernel ...



Armbian 21.02.0-trunk Buster ttyS0 

Arm login:

так стартует рабочая система с initramfs

.dtb и ramdisk точно от нового ядра ??

Они грузятся по другим адресам по сравнению с успешным стартом из - за разницы длины kernel.

Если нет, уверены, что новый kernel по этим адресам их найдет ?

Или вставлять отладочные puts_rs232(""); в ядро трассировку.

 

Что говорит команда uboot :

http://www.denx.de/wiki/publish/DULG/to-delete/UBootCmdGroupEnvironment.html

printenv

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость do_not_know_Linux
10 hours ago, gosha said:

.dtb и ramdisk точно от нового ядра ??

 


printenv

 

щас попытаюсь объяснить. есть рабочая система с ramdisk. вот ее вывод только что предоставил. есть ядро без initramfs , там ядро конечно же не грузится, там вы еще сказали, если u-boot найдет initramfs что тогда u-boot будет делать.  что uart вывел в файл, то я вам и предоставил.  теоретически, что нужно бы сейчас сделать чтобы это все стартануло без initramfs?  на ваш вгляд? имея все это

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 3/3/2021 at 12:02 AM, do_not_know_Linux said:

щас попытаюсь объяснить. есть рабочая система с ramdisk. вот ее вывод только что предоставил. есть ядро без initramfs , там ядро конечно же не грузится, там вы еще сказали, если u-boot найдет initramfs что тогда u-boot будет делать.  что uart вывел в файл, то я вам и предоставил.  теоретически, что нужно бы сейчас сделать чтобы это все стартануло без initramfs?  на ваш вгляд? имея все это

Что говорит команда uboot : printenv ?

Надо остановить автозагрузку ОС из uboot,

изменить параметры setenv в uboot

И загрузить linux руками из командной строки uboot

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...