T2-OLinuXino-LIME2-e16Gs16M-IND does not boot our image.

Started by fchk, July 19, 2024, 04:50:55 PM

Previous topic - Next topic

fchk

Hello world;

We started two years ago building a product with the A20/T2 LIME2 and have since then shipped several units with a custom image based on A20-OLinuXino-bullseye-minimal-20220928-143706.img. We have used A20-OLinuXino-LIME2-e16Gs16M and T2-OLinuXino-LIME2-e8Gs16M-IND. Recently we bought some T2-OLinuXino-LIME2-e16Gs16M-IND, and they won't boot our image. They do, however, boot the most recent image A20-OLinuXino-bullseye-minimal-20231106-081613.img

Short:
A20-OLinuXino-LIME2-e16Gs16M with A20-...-20220928-143706.img: boots fine
T2-OLinuXino-LIME2-e8Gs16M-IND with A20-...-20220928-143706.img: boots fine
T2-OLinuXino-LIME2-e16Gs16M-IND with A20-...-20220928-143706.img: error
All boards with A20-...-20231106-081613.img: boot fine.

We need to stay on our current codebase since this is what is tested and certified by the customer. So what exactly is our problem?

Thanks.

Failed Boot log (T2-OLinuXino-LIME2-e16Gs16M-IND Rev L1 with 2022 image):
U-Boot SPL 2021.04+olimex-1-20220927.105322 (Sep 27 2022 - 10:54:20 +0000)
DRAM: 1024 MiB
CPU: 912000000Hz, AXI/AHB/APB: 3/2/2
Loading configuration from EEPROM: OK
Verifying data: OK
Trying to boot from MMC1


U-Boot 2021.04+olimex-1-20220927.105322 (Sep 27 2022 - 10:54:20 +0000) Allwinner Technology

CPU:   Allwinner A20 (SUN7I)
ID:     Rev.L1
SN:    0002BC02
MAC:   30:1F:9A:D1:6E:FD
I2C:   ready
DRAM:  1 GiB
MMC:   mmc@1c0f000: 0, mmc@1c12000: 1
Loading Environment from EXT4... *** Warning - bad CRC, using default environment

Loading Environment from FAT... ** No device specified **
In:    serial
Out:   serial
Err:   serial
Allwinner mUSB OTG (Peripheral)
Net:   Could not get PHY for ethernet@1c50000: addr -1
eth1: usb_ether
starting USB...
Bus usb@1c14000: USB EHCI 1.00
Bus usb@1c14400: USB OHCI 1.0
Bus usb@1c1c000: USB EHCI 1.00
Bus usb@1c1c400: USB OHCI 1.0
scanning bus usb@1c14000 for devices... 1 USB Device(s) found
scanning bus usb@1c14400 for devices... 1 USB Device(s) found
scanning bus usb@1c1c000 for devices... 1 USB Device(s) found
scanning bus usb@1c1c400 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot/boot.scr
2274 bytes read in 3 ms (740.2 KiB/s)
## Executing script at 43100000
Boot script loaded from mmc
Checking for /uEnv.txt...
Checking for /boot/uEnv.txt...
1156 bytes read in 3 ms (376 KiB/s)
Loaded environment from /boot/uEnv.txt
Loading FIT image...
16195639 bytes read in 887 ms (17.4 MiB/s)
## Loading kernel from FIT Image at 58000000 ...
Could not find configuration node
ERROR: can't get kernel image!
SCRIPT FAILED: continuing...
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
Scanning disk [email protected]...
Card did not respond to voltage select! : -110
Scanning disk [email protected]...
Disk [email protected] not ready
Found 2 disks
No EFI system partition
Could not get PHY for ethernet@1c50000: addr -1
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/spi1-spidev.dtbo'...
408 bytes read in 6 ms (66.4 KiB/s)
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
Failed to apply overlay.
Restoring the original FDT blob...
BootOrder not defined
EFI boot manager: Cannot load any image
scanning bus for devices...
SATA link 0 timeout.
AHCI 0001.0100 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: ncq stag pm led clo only pmp pio slum part ccc apst

Device 0: unknown device

Device 0: unknown device
Could not get PHY for ethernet@1c50000: addr -1
Could not get PHY for ethernet@1c50000: addr -1
Could not get PHY for ethernet@1c50000: addr -1
Could not get PHY for ethernet@1c50000: addr -1
No ethernet found.
Could not get PHY for ethernet@1c50000: addr -1
missing environment variable: pxeuuid
Could not get PHY for ethernet@1c50000: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000000
Could not get PHY for ethernet@1c50000: addr -1
Could not get PHY for ethernet@1c50000: addr -1
Could not get PHY for ethernet@1c50000: addr -1
Could not get PHY for ethernet@1c50000: addr -1
No ethernet found.

Successful boot log: (same uSD card, T2-OLinuXino-LIME2-e8Gs16M-IND Rev.L)

U-Boot SPL 2021.04+olimex-1-20220927.105322 (Sep 27 2022 - 10:54:20 +0000)
DRAM: 1024 MiB
CPU: 912000000Hz, AXI/AHB/APB: 3/2/2
Loading configuration from EEPROM: OK
Verifying data: OK
Trying to boot from MMC1


U-Boot 2021.04+olimex-1-20220927.105322 (Sep 27 2022 - 10:54:20 +0000) Allwinner Technology

CPU:   Allwinner A20 (SUN7I)
ID:    T2-OLinuXino-LIME2-e8Gs16M-IND Rev.L
SN:    0002581B
MAC:   30:1F:9A:D1:36:B0
I2C:   ready
DRAM:  1 GiB
SF: Detected w25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
MMC:   mmc@1c0f000: 0, mmc@1c11000: 1
Loading Environment from EXT4... *** Warning - bad CRC, using default environment

Loading Environment from FAT... ** No device specified **
In:    serial
Out:   serial
Err:   serial
Allwinner mUSB OTG (Peripheral)
Net:   eth0: ethernet@1c50000, eth1: usb_ether
starting USB...
Bus usb@1c14000: USB EHCI 1.00
Bus usb@1c14400: USB OHCI 1.0
Bus usb@1c1c000: USB EHCI 1.00
Bus usb@1c1c400: USB OHCI 1.0
scanning bus usb@1c14000 for devices... 1 USB Device(s) found
scanning bus usb@1c14400 for devices... 1 USB Device(s) found
scanning bus usb@1c1c000 for devices... 1 USB Device(s) found
scanning bus usb@1c1c400 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot/boot.scr
2274 bytes read in 3 ms (740.2 KiB/s)
## Executing script at 43100000
Boot script loaded from mmc
Checking for /uEnv.txt...
Checking for /boot/uEnv.txt...
1156 bytes read in 3 ms (376 KiB/s)
Loaded environment from /boot/uEnv.txt
Loading FIT image...
16195639 bytes read in 885 ms (17.5 MiB/s)
## Loading kernel from FIT Image at 58000000 ...
   Using 'config-9243' configuration
   Trying 'kernel-1' kernel subimage
     Description:  Linux kernel 5.10.105-olimex
     Type:         Kernel Image
     Compression:  uncompressed
     Data Start:   0x580000d4
     Data Size:    6533568 Bytes = 6.2 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x40080000
     Entry Point:  0x40080000
     Hash algo:    crc32
     Hash value:   07bbff0b
     Hash algo:    sha1
     Hash value:   61e0951c1f96b692559776eea6464ee2d09fb02c
   Verifying Hash Integrity ... crc32+ sha1+ OK
## Loading ramdisk from FIT Image at 58000000 ...
   Using 'config-9243' configuration
   Trying 'ramdisk-1' ramdisk subimage
     Description:  Ramdisk for kernel 5.10.105-olimex
     Type:         RAMDisk Image
     Compression:  Unknown Compression
     Data Start:   0x5863b3c8
     Data Size:    9207270 Bytes = 8.8 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x4fe00000
     Entry Point:  0x4fe00000
     Hash algo:    crc32
     Hash value:   8f40935d
     Hash algo:    sha1
     Hash value:   0b60449019557afb130dcef5be3444d9acd1d98d
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Loading ramdisk from 0x5863b3c8 to 0x4fe00000
WARNING: 'compression' nodes for ramdisks are deprecated, please fix your .its file!
## Loading fdt from FIT Image at 58000000 ...
   Using 'config-9243' configuration
   Trying 'fdt-4' fdt subimage
     Description:  unavailable
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x58f22f68
     Data Size:    43643 Bytes = 42.6 KiB
     Architecture: ARM
     Load Address: 0x4fa00000
     Hash algo:    crc32
     Hash value:   36a64574
     Hash algo:    sha1
     Hash value:   16c904b58520be6ecf47b5482c59376f4aba068f
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Loading fdt from 0x58f22f68 to 0x4fa00000
## Loading fdt from FIT Image at 58000000 ...
   Trying 'overlay-1' fdt subimage
     Description:  unavailable
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x58f6e9b4
     Data Size:    1001 Bytes = 1001 Bytes
     Architecture: ARM
     Load Address: 0x4fa10000
     Hash algo:    crc32
     Hash value:   d1d51f29
     Hash algo:    sha1
     Hash value:   fa0c14efb55dbe4bdf8aa7241a3e600b486e3ef6
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Loading fdt from 0x58f6e9b4 to 0x4fa10000
## Loading fdt from FIT Image at 58000000 ...
   Trying 'overlay-2' fdt subimage
     Description:  unavailable
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x58f6ee80
     Data Size:    436 Bytes = 436 Bytes
     Architecture: ARM
     Load Address: 0x4fa20000
     Hash algo:    crc32
     Hash value:   00f3a93c
     Hash algo:    sha1
     Hash value:   efa518e1ffcc7c09a7d8010de6a7b363f1345b30
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Loading fdt from 0x58f6ee80 to 0x4fa20000
   Booting using the fdt blob at 0x4fa00000
EHCI failed to shut down host controller.
   Loading Kernel Image
   Loading Ramdisk to 49738000, end 49fffde6 ... OK
   Loading Device Tree to 4972a000, end 49737c59 ... OK
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/spi1-spidev.dtbo'...
408 bytes read in 5 ms (79.1 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/spi2-spidev.dtbo'...
408 bytes read in 6 ms (66.4 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-i2c2.dtbo'...
726 bytes read in 6 ms (118.2 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-spi1.dtbo'...
1005 bytes read in 6 ms (163.1 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-spi2.dtbo'...
1005 bytes read in 5 ms (196.3 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-uart3.dtbo'...
863 bytes read in 6 ms (139.6 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-uart4.dtbo'...
867 bytes read in 5 ms (168.9 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-uart5.dtbo'...
867 bytes read in 6 ms (140.6 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-uart6.dtbo'...
867 bytes read in 6 ms (140.6 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-uart7.dtbo'...
867 bytes read in 6 ms (140.6 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-spi0.dtbo'...
1001 bytes read in 6 ms (162.1 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-can.dtbo'...
732 bytes read in 6 ms (119.1 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/lime2-lcd-olinuxino.dtbo'...
2225 bytes read in 6 ms (361.3 KiB/s)

Starting kernel ...

[    0.004211] /cpus/cpu@0 missing clock-frequency property
[    0.004257] /cpus/cpu@1 missing clock-frequency property
[    0.993907] sun4i-usb-phy 1c13400.phy: Couldn't request ID GPIO
Loading, please wait...
Starting version 247.3-7+deb11u1
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... done.
Begin: Will now check root file system ... fsck from util-linux 2.36.1
[/sbin/fsck.ext4 (1) -- /dev/mmcblk0p1] fsck.ext4 -a -C0 /dev/mmcblk0p1
/dev/mmcblk0p1: recovering journal
/dev/mmcblk0p1: clean, 28369/935008 files, 233655/3976704 blocks
done.
done.
Begin: Running /scripts/local-bottom ... done.
Begin: Running /scripts/init-bottom ... done.

Welcome to Debian GNU/Linux 11 (bullseye)!
[...]

Successful Boot log (T2-OLinuXino-LIME2-e16Gs16M-IND Rev L1 with latest 2023 image):

U-Boot SPL 2021.04+olimex-1-20231103.141125 (Nov 03 2023 - 14:12:28 +0000)
DRAM: 1024 MiB
CPU: 912000000Hz, AXI/AHB/APB: 3/2/2
Loading configuration from EEPROM: OK
Verifying data: OK
Trying to boot from MMC1


U-Boot 2021.04+olimex-1-20231103.141125 (Nov 03 2023 - 14:12:28 +0000) Allwinner Technology

CPU:   Allwinner A20 (SUN7I)
ID:    T2-OLinuXino-LIME2-e16Gs16M-IND Rev.L1
SN:    0002BC02
MAC:   30:1F:9A:D1:6E:FD
I2C:   ready
DRAM:  1 GiB
SF: Detected w25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
MMC:   mmc@1c0f000: 0, mmc@1c11000: 1
Loading Environment from EXT4... *** Warning - bad CRC, using default environment

Loading Environment from FAT... ** No device specified **
In:    serial
Out:   serial
Err:   serial
Allwinner mUSB OTG (Peripheral)
Net:   eth0: ethernet@1c50000, eth1: usb_ether
starting USB...
Bus usb@1c14000: USB EHCI 1.00
Bus usb@1c14400: USB OHCI 1.0
Bus usb@1c1c000: USB EHCI 1.00
Bus usb@1c1c400: USB OHCI 1.0
scanning bus usb@1c14000 for devices... 1 USB Device(s) found
scanning bus usb@1c14400 for devices... 1 USB Device(s) found
scanning bus usb@1c1c000 for devices... 1 USB Device(s) found
scanning bus usb@1c1c400 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot/boot.scr
2274 bytes read in 3 ms (740.2 KiB/s)
## Executing script at 43100000
Boot script loaded from mmc
Checking for /uEnv.txt...
Checking for /boot/uEnv.txt...
1156 bytes read in 2 ms (564.5 KiB/s)
Loaded environment from /boot/uEnv.txt
Loading FIT image...
16233891 bytes read in 887 ms (17.5 MiB/s)
## Loading kernel from FIT Image at 58000000 ...
   Using 'config-11439' configuration
   Trying 'kernel-1' kernel subimage
     Description:  Linux kernel 5.10.180-olimex
     Type:         Kernel Image
     Compression:  uncompressed
     Data Start:   0x580000d4
     Data Size:    6571752 Bytes = 6.3 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x40080000
     Entry Point:  0x40080000
     Hash algo:    crc32
     Hash value:   ab9ddc5e
     Hash algo:    sha1
     Hash value:   987115694f4ebc9b887060eecd13d520820f53c4
   Verifying Hash Integrity ... crc32+ sha1+ OK
## Loading ramdisk from FIT Image at 58000000 ...
   Using 'config-11439' configuration
   Trying 'ramdisk-1' ramdisk subimage
     Description:  Ramdisk for kernel 5.10.180-olimex
     Type:         RAMDisk Image
     Compression:  Unknown Compression
     Data Start:   0x586448f0
     Data Size:    9205919 Bytes = 8.8 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x4fe00000
     Entry Point:  0x4fe00000
     Hash algo:    crc32
     Hash value:   4c6b4e35
     Hash algo:    sha1
     Hash value:   a15547e7de4fa160edafb409113f29e998a561b1
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Loading ramdisk from 0x586448f0 to 0x4fe00000
WARNING: 'compression' nodes for ramdisks are deprecated, please fix your .its file!
## Loading fdt from FIT Image at 58000000 ...
   Using 'config-11439' configuration
   Trying 'fdt-4' fdt subimage
     Description:  unavailable
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x58f2bf48
     Data Size:    43643 Bytes = 42.6 KiB
     Architecture: ARM
     Load Address: 0x4fa00000
     Hash algo:    crc32
     Hash value:   36a64574
     Hash algo:    sha1
     Hash value:   16c904b58520be6ecf47b5482c59376f4aba068f
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Loading fdt from 0x58f2bf48 to 0x4fa00000
## Loading fdt from FIT Image at 58000000 ...
   Trying 'overlay-1' fdt subimage
     Description:  unavailable
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x58f77994
     Data Size:    1001 Bytes = 1001 Bytes
     Architecture: ARM
     Load Address: 0x4fa10000
     Hash algo:    crc32
     Hash value:   d1d51f29
     Hash algo:    sha1
     Hash value:   fa0c14efb55dbe4bdf8aa7241a3e600b486e3ef6
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Loading fdt from 0x58f77994 to 0x4fa10000
## Loading fdt from FIT Image at 58000000 ...
   Trying 'overlay-2' fdt subimage
     Description:  unavailable
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x58f77e60
     Data Size:    436 Bytes = 436 Bytes
     Architecture: ARM
     Load Address: 0x4fa20000
     Hash algo:    crc32
     Hash value:   00f3a93c
     Hash algo:    sha1
     Hash value:   efa518e1ffcc7c09a7d8010de6a7b363f1345b30
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Loading fdt from 0x58f77e60 to 0x4fa20000
   Booting using the fdt blob at 0x4fa00000
EHCI failed to shut down host controller.
   Loading Kernel Image
   Loading Ramdisk to 49738000, end 49fff89f ... OK
   Loading Device Tree to 4972a000, end 49737c59 ... OK
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/spi1-spidev.dtbo'...
408 bytes read in 6 ms (66.4 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/spi2-spidev.dtbo'...
408 bytes read in 7 ms (56.6 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-i2c2.dtbo'...
726 bytes read in 7 ms (100.6 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-spi0.dtbo'...
1001 bytes read in 7 ms (139.6 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-spi1.dtbo'...
1005 bytes read in 7 ms (139.6 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-spi2.dtbo'...
1005 bytes read in 7 ms (139.6 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-uart3.dtbo'...
863 bytes read in 7 ms (120.1 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-uart4.dtbo'...
867 bytes read in 7 ms (120.1 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-uart5.dtbo'...
867 bytes read in 7 ms (120.1 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-uart6.dtbo'...
867 bytes read in 7 ms (120.1 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-uart7.dtbo'...
867 bytes read in 8 ms (105.5 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/sun7i-a20-can.dtbo'...
732 bytes read in 7 ms (101.6 KiB/s)
Applying overlay: '/usr/lib/olinuxino-overlays/sun7i-a20/lime2-lcd-olinuxino.dtbo'...
2225 bytes read in 6 ms (361.3 KiB/s)

Starting kernel ...

[    0.005826] /cpus/cpu@0 missing clock-frequency property
[    0.005873] /cpus/cpu@1 missing clock-frequency property
[    1.024436] sun4i-usb-phy 1c13400.phy: Couldn't request ID GPIO
Loading, please wait...
Starting version 247.3-7+deb11u4
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... done.
Begin: Will now check root file system ... fsck from util-linux 2.36.1
[/sbin/fsck.ext4 (1) -- /dev/mmcblk0p1] fsck.ext4 -a -C0 /dev/mmcblk0p1
/dev/mmcblk0p1: recovering journal
/dev/mmcblk0p1: clean, 28386/1827840 files, 290809/7786112 blocks
done.
done.
Begin: Running /scripts/local-bottom ... done.
Begin: Running /scripts/init-bottom ... done.

Welcome to Debian GNU/Linux 11 (bullseye)!

[...]

LubOlimex

It seems the ID for that board is missing from u-boot. See where failed boots says:

ID:     Rev.L1

where successful boot says:

ID:    T2-OLinuXino-LIME2-e16Gs16M-IND Rev.L1

The issue is that probably in the old image there was no ID for that version of the board (since that variant wasn't manufactured yet at that time, so no way to have ID).
Technical support and documentation manager at Olimex


LubOlimex

#3
The Linux image needs to have ID entry for T2-OLinuXino-LIME2-e16Gs16M-IND - older images have no ID entry for it simply because that variant fo the board didn't exist at that time.

Either add the entry and settings for ID 11444 or use latest official Olimage image (where such entry was added).

Edit: A little extra help if you wish to modify the u-boot of the image you already use. You can find how the ID entries that are added in u-boot here:

https://github.com/OLIMEX/u-boot-olinuxino/blob/release-20240312/board/olimex/common/boards.c

Find in the file 11444 to see what is the config for T2-OLinuXino-LIME-e16Gs16M-IND.

Maybe just to confim that is the issue, from the drop down menu check the older release (that you used in your own image) and see if there is entry for T2-OLinuXino-LIME2-e16Gs16M-IND but I am 99% sure there shouldn't be one or it was different.
Technical support and documentation manager at Olimex

Titomax

Hi Lub,
we are having the same problem.
Our product uses an old Armbian-based image (we cannot absolutely modify it).
Using old SOMs "T2-SOM204-1GS16ME8G-MC-I" all is working well but trying to use new P/N: "T2-SOM204-1GS16ME16G-MC-I" at startup the system cannot boot.

I understand that the solution is using an updated U-boot.

Can I make the modification to our Armbian image directly with "dd" Linux command ?

I tried this procedure:

1) Flash latest Olinuxino image on an SD
2) Use the following "dd" command to extract U-boot from that image:
#dd if=/dev/sdc of=/path/u-boot-sunxi-with-spl.bin bs=1024 skip=8 count=$((1024-8))

3) Use the following command to overwrite old U-boot on the Armbian image
#dd if=/path/u-boot-sunxi-with-spl.bin of=/dev/sdc bs=1024 seek=8
When I try to use the new custom image with the new U-boot on it the system hangs after printing this:

U-Boot SPL 2021.04+olimex-1-20231103.141125 (Nov 03 2023 - 14:12:28 +0000)
DRAM: 1024 MiB
CPU: 912000000Hz, AXI/AHB/APB: 3/2/2
Loading configuration from EEPROM: OK
Verifying data: OK
Trying to boot from MMC1

I'm doing something not allowed ? How can I exchange U-boot version in the right way ?

Thanks in advance for your support.

LubOlimex

It doesn't boot from the SD card? Or it doesn't boot form the eMMC?

What exactly is the boot log of a failed boot?

Notice that your issue is different form the issue of the poster above you. He used old Olimage, you use entirely different image (Armbian).

Armbian Linux has nothing to do with Olimage Linux.

I don't think there is ID recognition at all in Armbian which means that you'd have to configure the u-boot manually for the 16Gb eMMC.
Technical support and documentation manager at Olimex

Titomax

Hi Lub,
the system doesn't boot from the SD card.
The same SD card boots from the EVB but using the previous T2 board with 8GB eMMC.

The Armbian image we are using is using ID recognition and I verified that the ID for the T2 16 GB is missing.

We cannot touch the Armbian image. How can I make U-boot start correctly ?

Can I modify the EEPROM so that U-boot can recognize the board as a different one already managed ?
If I change the ID so the U-boot see the board as a "A20-SOM204-1Gs16Me16G-MC - 8958" ? May I encounter compatibility problem ?

See the output from the U-boot console using "olinuxino config list" command:

ARMBIAN IMAGE:
=> olinuxino config info
Model:  Rev.C2
Serial:0002AC2C
MAC:  30:1F:9A:D1:67:37
=> olinuxino config list

Supported boards:
----------------------------------------
A20-OLinuXino-LIME            - 7739
A20-OLinuXino-LIME-n4GB        - 7743
A20-OLinuXino-LIME-n8G        - 8934
A20-OLinuXino-LIME-s16MB      - 9076
A20-OLinuXino-LIME-e16Gs16M    - 9516
A20-OLinuXino-LIME-e4Gs16M    - 9696
T2-OLinuXino-LIME-IND          - 9211
T2-OLinuXino-LIME-s16M-IND    - 9215
T2-OLinuXino-LIME-e4G-IND      - 9219
T2-OLinuXino-LIME-e4Gs16M-IND  - 9734
A20-OLinuXino-LIME2            - 7701
A20-OLinuXino-LIME2-e4GB      - 8340
A20-OLinuXino-LIME2-e16GB      - 9166
A20-OLinuXino-LIME2-n4GB      - 7624
A20-OLinuXino-LIME2-n8GB      - 8910
A20-OLinuXino-LIME2-s16MB      - 8946
A20-OLinuXino-LIME2-e16Gs16M  - 9604
A20-OLinuXino-LIME2-e4Gs16M    - 9613
A20-OLinuXino-LIME2-G2        - 9905
T2-OLinuXino-LIME2-IND        - 9239
T2-OLinuXino-LIME2-s16MB-IND  - 9247
T2-OLinuXino-LIME2-e8Gs16M-IND - 9243
A20-OLinuXino-MICRO            - 4614
A20-OLinuXino-MICRO-n4GB      - 4615
A20-OLinuXino-MICRO-e4GB-IND  - 8661
A20-OLinuXino-MICRO-IND        - 8828
A20-OLinuXino-MICRO-e4GB      - 8832
A20-OLinuXino-MICRO-n8G        - 8918
A20-OLinuXino-MICRO-e16G      - 9042
A20-OLinuXino-MICRO-s16MB      - 9231
A20-OLinuXino-MICRO-e4Gs16M    - 9684
A20-OLinuXino-MICRO-e16Gs16M  - 9689
T2-OLinuXino-MICRO-IND        - 9223
T2-OLinuXino-MICRO-e4GB-IND    - 9227
T2-OLinuXino-MICRO-s16MB-IND  - 9235
T2-OLinuXino-MICRO-e4Gs16M-IND - 9739
T2-OLinuXino-MICRO-e4Gs16M-IND - 9789
A20-SOM-n4GB                  - 4673
A20-SOM                        - 7664
A20-SOM-IND                    - 8849
A20-SOM-n8GB                  - 8922
A20-SOM-e16GB                  - 9155
A20-SOM-e16GB-IND              - 9148
A20-SOM-e16Gs16M              - 9047
T2-SOM-IND                    - 9259
T2-SOM-e8Gs16M-IND            - 9827
A20-SOM204-1G                  - 8991
A20-SOM204-1Gs16Me16G-MC      - 8958
A20-SOM204-1G-M                - 10257
T2-SOM204-1Gs16Me4G-C-I        - 10157
T2-SOM204-1Gs16Me8G-MC-I      - 10234
T2-SOM204-1G-I                - 10238

LATEST OFFICIAL IMAGE:

=> olinuxino config info
ID:    T2-SOM204-1Gs16Me16G-MC-I Rev.C2
SN:    0002AC2C
MAC:  30:1F:9A:D1:67:37
=> olinuxino config list

Supported boards:
----------------------------------------
A20-OLinuXino-LIME            - 7739
A20-OLinuXino-LIME-n4GB        - 7743
A20-OLinuXino-LIME-n8G        - 8934
A20-OLinuXino-LIME-s16MB      - 9076
A20-OLinuXino-LIME-e4GB        - 9160
A20-OLinuXino-LIME-e16Gs16M    - 9516
A20-OLinuXino-LIME-e4Gs16M    - 9696
T2-OLinuXino-LIME-IND          - 9211
T2-OLinuXino-LIME-s16MB-IND    - 9215
T2-OLinuXino-LIME-e4G-IND      - 9219
T2-OLinuXino-LIME-e4Gs16M-IND  - 9734
T2-OLinuXino-LIME-e8Gs16M-IND  - 10481
T2-OLinuXino-LIME-e16Gs16M-IND - 11444
A20-OLinuXino-LIME2            - 7701
A20-OLinuXino-LIME2-e4GB      - 8340
A20-OLinuXino-LIME2-e16GB      - 9166
A20-OLinuXino-LIME2-n4GB      - 7624
A20-OLinuXino-LIME2-n8GB      - 8910
A20-OLinuXino-LIME2-s16M      - 8946
A20-OLinuXino-LIME2-e16Gs16M  - 9604
A20-OLinuXino-LIME2-e4Gs16M    - 9613
A20-OLinuXino-LIME2-G2        - 9905
T2-OLinuXino-LIME2-IND        - 9239
T2-OLinuXino-LIME2-s16M-IND    - 9247
T2-OLinuXino-LIME2-e8Gs16M-IND - 9243
T2-OLinuXino-LIME2-e16Gs16M-IND - 11439
A20-OLinuXino-MICRO            - 4614
A20-OLinuXino-MICRO-n4GB      - 4615
A20-OLinuXino-MICRO-e4GB-IND  - 8661
A20-OLinuXino-MICRO-IND        - 8828
A20-OLinuXino-MICRO-e4GB      - 8832
A20-OLinuXino-MICRO-n8G        - 8918
A20-OLinuXino-MICRO-e16G      - 9042
A20-OLinuXino-MICRO-s16M      - 9231
A20-OLinuXino-MICRO-e4Gs16M    - 9684
A20-OLinuXino-MICRO-e16Gs16M  - 9689
T2-OLinuXino-MICRO-IND        - 9223
T2-OLinuXino-MICRO-e4G-IND    - 9227
T2-OLinuXino-MICRO-s16M-IND    - 9235
T2-OLinuXino-MICRO-e4Gs16M-IND - 9739
T2-OLinuXino-MICRO-e8Gs16M-IND - 9789
T2-OLinuXino-MICRO-e16Gs16M-IND - 11449
A20-SOM-n4GB                  - 4673
A20-SOM                        - 7664
A20-SOM-IND                    - 8849
A20-SOM-n8GB                  - 8922
A20-SOM-e16GB                  - 9155
A20-SOM-e16GB-IND              - 9148
A20-SOM-e16Gs16M              - 9047
T2-SOM-IND                    - 9259
T2-SOM-e8Gs16M-IND            - 9827
T2-SOM-e16Gs16M-IND            - 11454
A20-SOM204-1G                  - 8991
A20-SOM204-1Gs16Me16G-MC      - 8958
A20-SOM204-1G-M                - 10257
T2-SOM204-1Gs16Me4G-C-I        - 10157
T2-SOM204-1Gs16Me8G-MC-I      - 10234
T2-SOM204-1Gs16Me16G-M-I      - 11458
T2-SOM204-1Gs16Me16G-MC-I      - 11462
T2-SOM204-1G-I                - 10238

FAILED BOOT LOG FROM ARMBIAN IMAGE :

U-Boot SPL 2019.04-armbian (Feb 22 2021 - 16:44:34 +0100)
DRAM: 1024 MiB
CPU: 912000000Hz, AXI/AHB/APB: 3/2/2
EEPROM: Ready
Config: Valid
Trying to boot from MMC1


U-Boot 2019.04-armbian (Feb 22 2021 - 16:44:34 +0100) Allwinner Technology

CPU:   Allwinner A20 (SUN7I)
Model:  Rev.C2
Serial:0002AC2C
MAC:   30:1F:9A:D1:67:37
I2C:   ready
DRAM:  1 GiB
NAND:  0 MiB
MMC:   mmc@1c0f000: 0, mmc@1c12000: 1
Loading Environment from EXT4... OK
Setting up a 800x480 lcd console (overscan 0x0)
In:    serial
Out:   vga
Err:   vga
Allwinner mUSB OTG (Peripheral)
Net:   eth0: ethernet@1c50000
starting USB...
USB0:   USB EHCI 1.00
USB1:   USB OHCI 1.0
USB2:   USB EHCI 1.00
USB3:   USB OHCI 1.0
scanning bus 0 for devices... 1 USB Device(s) found
scanning bus 1 for devices... 1 USB Device(s) found
scanning bus 2 for devices... 1 USB Device(s) found
scanning bus 3 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot/boot.scr
3798 bytes read in 4 ms (926.8 KiB/s)
## Executing script at 43100000
U-boot loaded from SD
Boot script loaded from mmc
204 bytes read in 2 ms (99.6 KiB/s)
8443205 bytes read in 472 ms (17.1 MiB/s)
7590712 bytes read in 424 ms (17.1 MiB/s)
Found mainline kernel configuration
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
## Loading init Ramdisk from Legacy Image at 43200000 ...
   Image Name:   uInitrd
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    8443141 Bytes = 8.1 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
ERROR: Did not find a cmdline Flattened Device Tree
Could not find a valid device tree
SCRIPT FAILED: continuing...
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot/boot.scr
3798 bytes read in 2 ms (1.8 MiB/s)
## Executing script at 43100000
U-boot loaded from SD
Boot script loaded from mmc
204 bytes read in 1 ms (199.2 KiB/s)
8443205 bytes read in 474 ms (17 MiB/s)
7590712 bytes read in 422 ms (17.2 MiB/s)
Found mainline kernel configuration
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
## Loading init Ramdisk from Legacy Image at 43200000 ...
   Image Name:   uInitrd
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    8443141 Bytes = 8.1 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
ERROR: Did not find a cmdline Flattened Device Tree
Could not find a valid device tree
SCRIPT FAILED: continuing...
NAND booting is temporary disabled.
scanning bus for devices...
SATA link 0 timeout.
AHCI 0001.0100 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: ncq stag pm led clo only pmp pio slum part ccc apst

Device 0: unknown device

Device 0: unknown device
DMA reset timeout
DMA reset timeout
=>

Titomax

Hi Lub,
just an update.

I modified EEPROM data from U-boot console using the command:

olinuxino config write 8958 c 11112222 aa:bb:cc:dd:ee:ff
I set the info from my specified SOM module changing only the ID from 11462 to 8958 so that the SOM is now identified as "A20-SOM204-1Gs16Me16G-MC".

Now all is working as expected.
I put a system under test to see if malfunctions appear.

What kind of modifications are present on the U-boot or image switching from COMMERCIAL to INDUSTRIAL grade ID ?
Are there any driver specific modifications to support different grade IC ?

Please let me know if this approach can be used without encountering stability issues.



LubOlimex

The problem is visible in the log - the board boot defaults to some generic config - this is pretty major problem.

The fast way to boot would probably be to try a workaround then, put some board that is nearly identical via the u-boot. Set is like the older board "T2-SOM204-1Gs16Me8G-MC-I". Do he following:

- run your Armbian image but interrupt u-boot

- type:

olinuxino config write 10234 C2 0002AC2C 30:1F:9A:D1:67:37

then type:

saveenv

then

reset

See if it boots.

Technical support and documentation manager at Olimex

LubOlimex

Technical support and documentation manager at Olimex

Titomax

Quote from: LubOlimex on November 20, 2024, 12:04:47 PMBetter try with the ID of T2-SOM204-1Gs16Me8G-MC-I.

Ok, I didn't use "T2-SOM204-1Gs16Me8G-MC-I" because I thought that wasn't possible specify a configuration with a different hardware mounted.

Let's me try also with ID you suggested.

I'll give you a feedback.

Titomax

Hi Lub,
I confirm that also using ID "10234" from "T2-SOM204-1Gs16Me8G-MC-I" all is working as expected.

As workaround for my issue I'll start using this procedure.

Thank you for your support.