bodhi, Whatever you think best is fine by me. Thank you so much for all your help. You have been more than generous with all the time you have spent on this. Sincerely, Larry Bakerby mossbeachlarry - Debian
bodhi, The Nimbus 100 has only one LED (see the attached photos). However, it is a chameleon. :) It is either green, red, or orange/yellow! Page 31 in the attached SOFTWARE DEVELOPMENT KIT v6.1 - NIMBUS says this about the "LEDs" (I have no idea how to preserve spaces in this markup language, sigh): QuotePage 31 VIII. Software Features 1. LEDS Indicators 1.1 Controby mossbeachlarry - Debian
Bodhi, > Here is the updated DTB. I followed my notes to install Debian 12 on Nimbus using your latest kirkwood-nimbus-100.dtb. Everything went well. I can verify I was using the new DTB: # tr '\0' '\n' < /sys/firmware/devicetree/base/compatible ionics,nimbus-100 globalscale,sheevaplug marvell,kirkwood-88f6281 marvell,kirkwood > Have you tested the LEDsby mossbeachlarry - Debian
bodhi, FYI, attached are the Debian installer's archdetect C code. Because it is a C program, it was possible to break out of the Debian 12 installation to replace it while the installer's huge shell script was still running. (The installer shell script sources its "libraries" of functions. Because of that, I could not patch any part of that to add Nimbus 100 support whiby mossbeachlarry - Debian
bodhi, > Here is the updated DTB. I'll update my notes with the new download URL. I will post my notes here then repeat my installation using your updated Nimbus DTB. I'm kind of compulsive that way. I like my documentation to be fully tested so there are no surprises either if I ever have to return to it or I give it to someone else. If I have to change anything, I'by mossbeachlarry - Debian
bodhi, > Have you tested the LEDs yet? No, but that is a good idea. I have been working on hacking the Debian installer itself to work with the Nimbus 100 DTB. I am finishing the edit of my own documentation and then I am going to edit the post I made earlier with the complete details. After that I'll test the LEDs from Linux. More later. Larry Bakerby mossbeachlarry - Debian
bodhi, > Nimbus 100 is not supported in mainline. So I would think archdetect will not find its architecture. Right. I'm just having a devil of a time finding the source to it. Once I see what it's doing, I'll know how to fix it. For one thing, it is not inside that massive installer shell script web, but it is an executable. If nothing else, I can break out of the insby mossbeachlarry - Debian
bodhi, > Arch Kirkwood is correct. It's should be defined in the kernel config. > The DTB does not define the board architecture. Well, something fishy is going on and the evidence points to the Nimbus DTB file. Why? I don't know yet. I created two Debian 12 installer uImage's using their Kirkwood vmlinuz file, one with their SheevaPlug DTB and one with the Nimbusby mossbeachlarry - Debian
bodhi, I assumed the Debian 12 kernel I downloaded from http://ftp.debian.org/debian/dists/bookworm/main/installer-armel/current/images/kirkwood/netboot/vmlinuz-6.1.0-25-marvell is the same kernel in the Debian 12 installer at http://ftp.debian.org/debian/dists/bookworm/main/installer-armel/current/images/kirkwood/netboot/marvell/sheevaplug/uImage. Perhaps that was a mistake. I'll boby mossbeachlarry - Debian
bodhi, I ran archdetect on console #2 immediately after the Debian 12 installer screen appeared on both my SheevaPlug and my Nimbus. On SheevaPlug: ~ # archdetect armel/kirkwood On Nimbus: ~ # archdetect armel/generic This explains why the Debian 12 insby mossbeachlarry - Debian
bodhi, > fatload usb 0:1 0x02100000 bookworm-sheevaplug-installer-uinitrd The Debian kernel is only 2.5 MB. It's their initramfs that is HUGE! (A consequence of their driver policy, as you know.) The load address I used is from Martin Michlmayer's instructions. It is fine for Debian's kernel, but not for yours. I did have a hiccup in the Debian 12 installation on Niby mossbeachlarry - Debian
bodhi, I have created a Debian 12 Nimbus installer uImage using your Nimbus 100 DTB and hacked the Debian installer to support the Nimbus 100. Here are my notes. (I have attached a PDF of my own installation documentation that is specific to my application and includes my customizations to create a basic Linux system ready for the installation of my application, esp. to install ntp for tiby mossbeachlarry - Debian
Ray, By the way, if you don't already have a copy of Marvell's 88F6180, 88F6190, 88F6192, and 88F6281 Integrated Controller Functional Specifications, you can download it from the Internet Way-Back machine at https://web.archive.org/web/20140327024228/http://www.marvell.com/embedded-processors/kirkwood/assets/FS_88F6180_9x_6281_OpenSource.pdf. Regards, Larry Bakerby mossbeachlarry - Debian
Ray, > I knew there would be no DTB as the source is too old. I was looking for the patches as > that would potentially provide the information needed to create an appropriate device tree. bodhi has taken care of that for us. It seems to be working well for the newer Linux kernels that are more actively managing USB power. The Nimbus GPIO data output are all active low, so he changby mossbeachlarry - Debian
Bodhi, > Perhaps there is a bug somewhere in the regulator code. Or that regulator code had not been fully implemented in the 6.0.x kernel. That status message about setting the USB Power active low does not appear until the 6.2 kernel. I plan to use your 6.10.11 kernel until you come out with your 6.11.x kernel. I can see what happens pairing the 6.10.11 kernel with the wrong DTB.by mossbeachlarry - Debian
bodhi, Fair enough. > initrd is required when you use the partition LABEL option for root device. When booting from UBIFS flash rootfs, there is only one choice for root=ubi0:rootfs (or whatever you have named the MTD partition), so LABEL= is not really helpful. > But I always discourage people from all-flash solution if their boxes have low NAND capacity and trying to squeeze tby mossbeachlarry - Debian
Nanode, You did everything right ... almost. Debian ARMEL on a SheevaPlug boots with a kernel uImage and an initramfs uInitrd. You never loaded the initramfs in U-Boot and handed it to the kernel. Also, there is no need to flash the kernel. Both the kernel uImage and its uInitrd are in the /boot directory of the UBIFS. Load them directly from there and away you go. Something like this:by mossbeachlarry - Debian
bodhi, Here's what I have learned this weekend. I installed Debian 12 to USB on a SheevaPlug, Linux version 6.1.0-26-marvell. It booted fine (kernel image plus initrd) on the SheevaPlug. I renamed the Debian 12 uImage (with their kirkwood-sheevaplug.dtb) to uImage-sheevaplug. I created a uImage-nimbus from their vmlinuz-6.1.0-26-marvell and your kirkwood-nimbus-100.dtb. I cby mossbeachlarry - Debian
Ray, In case your Ionics Kirkwood devices are bricked, attached are my notes to backup and restore my Ionics Nimbus. Instead of overwriting the rootfs on the recovery USB, you can leave the original factory rootfs alone and restore the system the way it came from the factory. Of course, it will be the Nimbus rootfs. I have no idea how that may work on your boxes. Regards, Larry Bakerby mossbeachlarry - Debian
bodhi, > During boot, there is not enough power so the USB storage got disconnected. > Later, the DT regulator kicks in, and that's when full power is applied again to the USB port. Yet, what puzzles me is when I run Debian 11 on USB, the 5.10.0-32-marvell kernel comes up just fine with init_ionics mode bootup. The USB drive is enumerated early and there is no disconnect. Shouby mossbeachlarry - Debian
Ray, > Can I ask where you found this? I have 2 different Ionics Kirkwood Devices > I'd like to get supported and the source would be very helpful. > I have the Ionics Stratus and Ionics Cirrus. I have had the Nimbus SDK since I bought the Nimbus over 10 years ago. I put it on my Google Drive: Nimbus 101 SDK v6.1-p1.tar.bz2 You can grab it from there. I have no ideaby mossbeachlarry - Debian
bodhi, > This is a better version. Yes, it boots. This time I left the USB drive plugged in when I booted from the UBIFS. I noticed that the USB disconnect still occurs early in the boot. But, later in the boot, the USB drive is re-enumerated and appears in lsusb when I login. So does a generic SCSI device, /dev/sg0: Marvell>> run ubi_boot ## Booting kernel from Legacy Imby mossbeachlarry - Debian
bodhi, > Please also rename this thread subject (1st post) to "Debian on Ionics Nimbus 100". > That way it's easier for people to find. Done. > This is a better version. Good, because the other one did not boot. It hung at "Starting kernel ...". Larry Bakerby mossbeachlarry - Debian
bodhi, You have cracked the code! You are amazing. > Please try these 3 different flavors of the Sheevaplug DTB. > > 1. The original DTB > 2. kirkwood-sheevaplug_no_regulator.dtb > 3. kirkwood-sheevaplug_active_low.dtb > > Run each it with kernel 5.10.7 and kernel 6.10.11. > > And do not run init_ionics mode bootup before boot. See below. > Anby mossbeachlarry - Debian
bodhi, > If you can run kwboot successfully, then your box is unbrickable. I don't think I need to do that. I can (and have) restore any U-Boot and rootfs over the JTAG connection using the OpenOCD tools on the Nimbus SDK. I have already tested a more recent version of U-Boot than 2017.07. Attached are my notes (Install Debian Kirkwood ARMEL Linux.docx) for flashing the Debianby mossbeachlarry - Debian
bodi, > The stock boot log is the log captured over serial console when you first boot > the box into stock FW (OS). Usually there is a wealth of information about > anything out of the ordinary that stock OS does. I attached log files in earlier posts with full minicom captures of the console output. Those are not as far back as the original OEM Linux, which I wiped out. Iby mossbeachlarry - Debian
bodhi, I do think you are on the right track to look at the USB Power management. Of course, that may be a side effect of some difference in the behaivor of the hardware between the Nimbus and a SheevaPlug, and cutting USB power is the result of that. I plugged in a USB RS-232 adapter instead of a USB disk. As the Nimbus is booting the 6.10.11 kernel, the red LED in the head of the RS-232by mossbeachlarry - Debian
bodhi, As far as I can tell from reading the Nimbus U-Boot cmd_ionics.c and the SheevaPlug kirkwood-sheevaplug-common.dtsi, GPIO pin 29 is USB Power on both the SheevaPlug and the Nimbus. I can see the code in the Nimbus U-Boot sheevaplug.c where the GPIO Data Out registers are initialized to 0xdfffffff and 0xfffdffff on power up and changed to 0xfffdffff and 0xdfffffff by init_ionics mode boby mossbeachlarry - Debian
bodhi, > How about poking a GPIO, and then plug in the drive? Did not help. Poking GPIO pins 16 and 18 was uneventful, poking GPIO pin 19 froze the terminal when I typed dmesg | tail. I had to reset the Apple Terminal window and close and reopen my minicom connection to the Nimbus USB tty console port. Definitely not the same experience older Linux kernels have hot-plugging USB drivesby mossbeachlarry - Debian
bodhi, I uploaded Nimbus 101 SDK v6.1-p1.tar.bz2 to my Google Drive for you. Here's the link: https://drive.google.com/file/d/1dGnPQuPU-7rBPw_mr9_GyrzOvZdlE8q9/view?usp=sharing Larry Bakerby mossbeachlarry - Debian