Сохранение переменных среды U-Boot без подключенного Flash-накопителя

Сохранение переменных среды U-Boot без подключенного Flash-накопителя

Я видел несколько сообщений в блогах о том, как люди обходят переменную окружения U-Boot bootdelay 0, чтобы получить доступ к U-Boot CLI. Пример:здесь. Общий процесс, как я понимаю, таков:

  1. Отпаяйте/коротко замкните чип, чтобы U-Boot не мог получить к нему доступ
  2. Включите устройство.
  3. U-Boot не может найти флэш-чип и переходит в CLI

    eth1 up
    eth0, eth1
    Qualcomm Atheros SPI NAND Driver, Version 0.1 (c) 2014  Qualcomm Atheros Inc.
    ath_spi_nand_ecc: Couldn't enable internal ECC
    Setting 0x181162c0 to 0x3061a100
    Hit any key to stop autoboot:  0 
    ** Device 0 not available
    ath>
    
  4. Измените bootdelay на ненулевое значение:

    ath> setenv bootdelay 3
    ath> saveenv
    Saving Environment to Flash...
    Protect off 9F040000 ... 9F04FFFF
    Un-Protecting sectors 4..4 in bank 1
    Un-Protected 1 sectors
    Protect off 9F050000 ... 9F05FFFF
    Un-Protecting sectors 5..5 in bank 1
    Un-Protected 1 sectors
    Erasing Flash... 9F050000 ... 9F05FFFF ...Erasing flash... 
    First 0x5 last 0x5 sector size 0x10000 5
    Erased 1 sectors
    Writing to Flash...  9F050005 ... 9F060000 ...write addr: 9f050000
    write addr: 9f040004
    done
    Protecting sectors 5..5 in bank 1
    Protected 1 sectors
    Protecting sectors 4..4 in bank 1
    Protected 1 sectors
    ath>
    
  5. Выключите устройство и заново подключите флэш-чип.

Насколько мне известно, U-Boot и его переменные окружения находятся во флэш-памяти. Если флэш-чип отключен от ЦП, как вообще загружается U-Boot и как можно сохранить переменную bootdelay в постоянном хранилище?

решение1

Это очень конкретный пример. В этом конкретном примере U-Boot находится во флэш-памяти NOR (один чип), а ядро ​​Linux находится во флэш-памяти NAND (второй чип). В указанном руководстве вам нужно удалить чип NAND с платы, чтобы загрузка не удалась, мы переходим в командную строку U-Boot, а затем вы можете изменить и сохранить задержку загрузки, поскольку в этом случае U-Boot также настроен на сохранение среды во флэш-памяти NOR.

Связанный контент