I have an Ionics-EMS Nimbus 100, which is a repackaged version of the Marvell 
Kirkwood ARMEL SheevaPlug.  It has been running fine for years.  I have to 
update Linux to support TLS 1.2.

The current Kirkwood ARMEL installer for Debian 12 "bookworm" does not work: it 
does not recognize the USB installation drive.  I found that the previous 
Kirkwood ARMEL installer for Debian 11 "bullseye" works fine.

The Debian 11 installer (from console port #2) enumerates both the USB EHCI 
controller and the LEXAR 4GB USB drive:

~ # cat /sys/bus/usb/devices/*/product
JD FIREFLY
EHCI Host Controller

I installed Kirkwood ARMEL Debian 11 to my USB drive using a single ext4 rootfs 
partition.  It works fine.

However, the Kirkwood ARMEL Debian 12 installer only enumerates the USB EHCI 
controller, not the LEXAR 4GB USB drive:

~ # cat /sys/bus/usb/devices/*/product
EHCI Host Controller

Hence, the Kirkwood ARMEL Debian 12 installer fails when it cannot find a 
suitable drive for the installation.  (It does not support installs to the 
internal eMMC flash drive.)

I also have a Marvell SheevaPlug, which does not have this problem.

U-Boot info:

Marvell>> version

U-Boot 1.1.4 (Dec 27 2009 - 22:03:21) Marvell version: 3.4.27 - pingtoo patch.01

The Debian 11 installer (from console port #2) enumerates both the USB EHCI 
controller and the LEXAR 4GB USB drive:

~ # cat /sys/bus/usb/devices/*/product
JD FIREFLY
EHCI Host Controller

The Debian 12 installer also enumerates both the USB EHCI controller and the 
LEXAR 4GB USB drive:

~ # cat /sys/bus/usb/devices/*/product
JD FIREFLY
EHCI Host Controller

Note, as for my Nimbus 100, I was able to boot the Debian installers from the 
Marvell U-Boot that I have been using for years on my ARM PlugPCs.  I tried 
both the vendor U-Boot and the updated U-Boot recommend by Martin Michlmayr on 
the Nimbus, which did not help Debian 12 to enumerate the USB drive.  I 
restored my old Nimbus system and then began experimenting with other Debian 
installers, which is how I discovered that the Debian 11 installer works.

Instead of booting the Debian 11 and 12 installers, I have made myself a Debian 
12 UBI flash rootfs (which won't boot yet), and then I have told U-Boot to boot 
it using the Debian 11 kernel and initramfs from my USB rootfs (my running 
Debian 11 system) as well as the Debian 12 kernel and initramfs from my UBI 
flash rootfs system.  Neither boot actually works because neither kernel has 
built-in UBIFS support to mount the ubi0:rootfs rootfs.  But, I do land in the 
initramfs both times.  Thus, the Debian installer is out of the picture and I 
am running a bare-bones Linux kernel at that point.

The Debian 11 Linux 5.10.0-32-marvell kernel enumerates the USB LEXAR FIREFLY 
drive:

(initramfs) cat /sys/bus/usb/devices/*/product
JD FIREFLY
EHCI Host Controller
(initramfs) uname -a
Linux (none) 5.10.0-32-marvell #1 Debian 5.10.223-1 (2024-08-10) armv5tel 
GNU/Linux

whereas the Debian 12 Linux 6.1.0-25-marvell kernel does not:

(initramfs) cat /sys/bus/usb/devices/*/product
EHCI Host Controller
(initramfs) uname -a
Linux (none) 6.1.0-25-marvell #1 Debian 6.1.106-3 (2024-08-26) armv5tel 
GNU/Linux

That makes me think the bug is likely in the Linux kernel, not the Debian 12 
installer.

I compared the two kernel config files, but I don't see anything obvious in any 
USB settings.  I am guessing the bug is in the kernel code itself, not anything 
to do with the CONFIG choices.  Maybe someone knows what changed affecting 
ARMEL Linux kernels between V5 and V6.

Larry Baker
US Geological Survey (Ret.)
c. 650-784-9650
[email protected]



Reply via email to