bodhi, First, I really appreciate the time you are taking to find the right answer. You are much more familiar with ARM SoC DTBs than I am. > How about poking a GPIO, and then plug in the drive? Will do. Read what I am attaching first, in case it informs you better what GPIO pins to poke. > Also, I don't recall seeing stock boot log. Do you have one? I don't knowby mossbeachlarry - Debian
bodhi, I don't really know what I'm doing, but here goes: # # # NO USB DRIVE PLUGGED IN # # lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub # # # PLUG IN USB DRIVE # # # NOTHING # # # POKE GPIO PIN 16 # # /bin/echo 16 > /sys/class/gpio/export # /bin/echo "out" > /sys/class/gpio/gpio16/direction # /bin/echo 1 > /sys/class/by mossbeachlarry - Debian
bodhi, > Plug in the USB drive, and check dmesg each time you poke the GPIO 16, 18, and 19. > See if the kernel will spin up the drive. LOL! I know what you are talking about, but I have no idea how to do it! Please give me the commands to issue from Linux. :) Thank you, Larry Bakerby mossbeachlarry - Debian
bodhi, On a SheevaPlug: Marvell>> ver U-Boot 1.1.4 (Dec 27 2009 - 22:03:21) Marvell version: 3.4.27 - pingtoo patch.01 Marvell>> md.l 0xF1010100 1 f1010100: 20000000 ... Marvell>> md.l 0xF1010140 1 f1010140: fffc7fff .... USB drive inserted: Marvell>> md.l 0xF1010100 1 f1010100: 20000000 ... Marvell>> md.l 0xF1010140 1 f1010140: ffby mossbeachlarry - Debian
bodhi, > Please do these 2 peeks again before and after init_ionics. Perhaps they set the GPIOs in there. Very interesting: Marvell>> ver U-Boot 2011.03-rc1 (Jun 23 2011 - 14:26:27) IONICS-PlugComputer NIMBUS E0 arm-none-linux-gnueabi-gcc (GCC) 4.2.1 GNU ld (GNU Binutils) 2.18.50.20070820 Marvell>> md.l 0xF1010100 1 f1010100: dfffffff .... Marvell>> mby mossbeachlarry - Debian
bodhi, > I hope the most recent log was correct. The GPIO numbers would make more sense. > I suspect the GPIOs on the Nimbus are different from Sheevaplug. No such luck. :( I found the reason for the change in the numbers is that it matters whether the hex is written 0x vs. 0X: Marvell>> md.l 0xF1010100 1 f1010100: dfffffff .... Marvell>> md.l 0xF1010140 1 f10by mossbeachlarry - Debian
bodhi, > Are you running the Sheevaplug or the Nimbus above? Always on my Nimbus. I'll have a go at it again. Plus, at times I have used a 4-port powered USB hub, but at the moment I am not using that. I'll find out whether that matters. Larry Bakerby mossbeachlarry - Debian
bodhi, > No idea how! but why not continue with git bisect? It's tedious, but usually > it is a no brainer when you get to the commit that causes the problem. The USB problem as it first appeared in Linux v5.15 is not the same USB problem now. Back then, the USB drive was not even found. As I wrote in my Oct 15 post, by the time of your v5.18.6 and later the behavior had changby mossbeachlarry - Debian
bodhi, > Could you get this info: As requested: > Without any USB drive attached, power up, interrupt serial console, and Marvell>> md.l 0XF1010100 1 00000000: 08008000 .... Marvell>> md.l 0XF1010140 1 00000000: 08008000 .... Marvell>> usb info USB is stopped. Please issue 'usb start' first. Marvell>> usb start (Re)start USB... USBby mossbeachlarry - Debian
bodhi, I found out about the Function Tracer facility in the Linux kernel, known as ftrace. I thought that would relieve me of having to add code to print a traceback whenever usb_disconnect() is called. It looks like it works fine when I try it, but I have not been able to get it to work during boot up. I found these four useful web pages: https://billauer.co.il/blog/2020/04/ftrace-prby mossbeachlarry - Debian
bodhi, If it is not too late, can you also add kernel module compression: $ scripts/config --disable MODULE_COMPRESS_NONE $ scripts/config --enable MODULE_COMPRESS $ scripts/config --enable MODULE_COMPRESS_XZ That reduces the disk space for the modules from ~90 MB to ~30 MB! Every bit helps on a small rootfs. :) Thank you, Larry Bakerby mossbeachlarry - Debian
bodhi, The v5.15-rc1 candidate fails to find the USB drive. That is the same behavior as your v5.15.5 kernel. But, your v5.18.6 (and later) finds the drive, enumerates the partitions, then immediately disconnects the USB bus (including the powered USB hub I bought) like I showed you in these message in a previous post: [ 6.380104][ T8] usb 1-1: New USB device found, idVendor=1a40, iby mossbeachlarry - Debian
bodhi, I am going to test the v5.15-rc1 candidate next to find out whether the USB drive enumeration problem was in the very first v5.15 "release". That will help narrow where to set the git bisect good and bad versions. v5.15-rc1 should compile and run properly. I'll apply all your patches to v5.15-rc1. When I start using git bisect, I might not do that until git bisect finby mossbeachlarry - Debian
bodhi, The failure first appears for Linux version 5.15. I don't know how much help that is to know the precise cause. I suppose now it is time to learn how to use git bisect. That will require finding out what the commit IDs are for Linux versions 5.14.21 and 5.15. I think that should be straightforward. For another day. It is 2:00 am here. :) Good night, Larry Bakerby mossbeachlarry - Debian
bodhi, > IIRC, it actually was both ops tables. Each has a separated mod. Good to know. > You probably don't need to apply my patch at all to do bisect Updating the patch is relatively easy. Getting the config file straightened out as kernel options came and went takes more time. I have tested Linux 5.12.19. It does not have the USB drive problem. I am working on 5.13by mossbeachlarry - Debian
bodhi, I am slowly making progress on the Linux mainline kernel bisection to find when the USB drive enumeration problem began. I have to figure out what patches to apply and then configure each kernel, which takes a long time. I am puzzled by your 5.15.5 patch for drivers/net/dsa/mv88e6xxx/chip.c: diff -Naur --no-dereference a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxby mossbeachlarry - Debian
> And you meant 5.10.7 <--> 5.15.5? Yes.by mossbeachlarry - Debian
bodhi, I'll do a methodical bisection between the 5.10.7 and the 5.10.15 kernels. I'll build my own 5.10.7 from your config that should work, and I'll build my own 5.10.15 from your config that should fail. Then I'll try the mainline 5.10.11 source with your 5.10.7 patches, and keep splitting the interval one direction or the other until I find what kernel version the proby mossbeachlarry - Debian
bodhi, Your linux-5.10.7-kirkwood-tld-1-bodhi.tar.bz2 package works! Attached are the minicom capture logs running my cross-compiled Debian 11 kernel, 5.10.223-marvell-UBIFS, and your 5.10.7-kirkwood-tld-1, both booted from the internal flash UBIFS rootfs on my Nimbus 100. My Debian 11 USB rootfs is plugged into one port of a 4-port powered USB hub. I ran lsusb, removed the Debian 11 USby mossbeachlarry - Debian
bodhi, > Stock kernel is old,and might have patches on top (we cannot see what changed on top of mainline without GPL source). I have patched kernel sources from Debian for their linux-5.10.226 and I can make them for your releases using your patch files. But, those are different kernel versions, so I can't easily compare the source trees looking for differences. > Old u-bootby mossbeachlarry - Debian
bodhi, I did a fresh install of linux-6.9.6-kirkwood-tld-1-bodhi.tar.bz2 on the flash UBIFS rootfs. Attached is the minicom capture log file following your instructions. > This box has a different u-boot. And stock kernel is also not Sheevaplug kernel. I don't understand how either of these matter. I tried the new U-Boot from http://ftp.debian.org/debian/dists/bookworm/main/iby mossbeachlarry - Debian
bodhi, Before I carefully follow your most recent request, here is a copy of the dtb file from the Debian 11 5.10.0-32-marvell kernel. It is different than the one in your 6.10.11 package. I will decompile it and compare it to the dtb files in your 6.9.6 and 6.10.11 packages. As far as the old Nimbus U-Boot, I do not think that is an issue. When I tried to install Debian 12 on a USB drivby mossbeachlarry - Debian
Continuation of my previous post to add the last two files.by mossbeachlarry - Debian
Continuation of my previous post to add three more files.by mossbeachlarry - Debian
bodhi, (I just noticed you replied to my previous post while I was composing this. I'll read what you wrote as soon as I post this.) (I also just found out I can only attach three files. I will attach the remaining files in subsequent posts.) Attached are the minicom capture log files and their assiciated kernel configuration files from four boots of my Nimbus 100: Trials: Boby mossbeachlarry - Debian
bodhi, Here's some information about my setup. I issued the commands below from the console, so they include console messages as well as command output. I do all my configuration of the internal flash UBIFS rootfs from a Debian 11 system running on USB: # uname -a Linux comlogger 5.10.0-32-marvell #1 Debian 5.10.223-1 (2024-08-10) armv5tel GNU/Linux I always pass the cmdlinepart.mby mossbeachlarry - Debian
bodhi, I am sorry to have confused things. > OK. Then the kernel and rootfs should be on USB drive. No, not on the USB drive. The kernel uImage and its optional initramfs uInitrd are in the /boot directory of the UBIFS flash rootfs, the same way a kernel uImage and its optional initramfs uInitrd are in the /boot directory on a USB ext2/3/4 rootfs. The factory U-Boot on a Nimbus suppby mossbeachlarry - Debian
bodhi, Feel free to edit what I wrote to remove "eMMC" from the title and the text so it won't cause any confusion. Thanks, Larry Bakerby mossbeachlarry - Debian
bodhi, I may have misspoken about the Nimbus having eMMC. I think I was thinking of the BeagleBone Black. The internal flash on the Nimbus is an MTD device, which is a NAND or NOR device, I can't remember which. It should be identical to the Marvell SheevaPlug (it uses the SheevaPlug DTB file). I have no trouble reading and writing to the UBIFS rootfs I am targeting to run Debian 12by mossbeachlarry - Debian
I am trying to update an Ionics Nimbus 100 SoC from Debian 6 (UBIFS flash rootfs) to Debian "stable". (The Ionics Nimbus 100 is a repackaged version of the Marvell SheevaPlug.) I am stuck at the point where my UBIFS rootfs fails to mount because none of the Linux Kirkwood kernel packages I have tried support UBIFS in the kernel, which is required to boot a UBIFS rootfs. From "by mossbeachlarry - Debian