Quotebodhi And then try various sub-commands to see if you can read or set the register to change boot mode. No joy I'm afraid: Marvell>> SatR read mvBoardSatRRead: Error: Read from S@R failed Error reading from TWSI mvBoardSatRRead: Error: Read from S@R failed Error reading from TWSI mvBoardSatRRead: Error: Read from S@R failed Error reading from TWSI mvBoardSatRRead: Errby hmartin - Debian
Quotebodhi The exception to the Armada boxes (this EX4100/2100 and the NAS326): we cannot boot with UART running kwboot yet. It is not possible to test new u-boot without being able to run kwboot. It is just too risky to replace stock u-boot with something I am still testing. The risk of bricking is too high. You make good points. I looked today about chain loading u-boot. I couldn't getby hmartin - Debian
Quotebodhi 2. Plug in the USB rootfs to the rear USB port, power up, interrupt serial console and This time with uInitrd ;-) Still a kernel panic: Marvell>> setenv bootdev usb Marvell>> setenv device '0:1' Marvell>> setenv load_initrd_addr 0xf00000 Marvell>> setenv load_image_addr 0xa00000 Marvell>> setenv load_initrd 'echo loading uInitrby hmartin - Debian
Quotebodhi This stock u-boot really sucks :) Exists in here was a ramdisk relocation problem that was solved in 2016. And this bootm has a limitation of 8M (so that caused me to abandon a really good booting scheme). Quotebodhi But we'll need to flash new stock u-boot. So it is not recommended without being able to kwboot it first. Once we can kwboot the box, then I'll develop aby hmartin - Debian
Quotesaschadd ## Booting image at 00a00000 ... ## Booting kernel from Legacy Image at 00a00000 ... Image Name: Linux-4.9.0-mvebu-tld-12 Created: 2017-06-04 8:57:41 UTC Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 3919261 Bytes = 3.7 MiB Load Address: 00008000 Entry Point: 00008000 Verifying Checksum ... OK ### Ramdisk error, Loading Rby hmartin - Debian
Quotesaschadd @saschadd, use the back USB port? Is there any way to map the USB bus layout from within Linux or u-boot? I'm curious, since the front USB port doesn't work for me, if perhaps there is a USB hub located somewhere in the device. I'm thinking that perhaps the rear USB port on the EX2100 is directly off the SoC, and the front port is off a USB hub. Or maybe they arby hmartin - Debian
Hi bodhi, I followed your instructions, but there is a Ramdisk error and u-boot falls back to loading rescue environment from NAND: Marvell>> setenv bootdev usb Marvell>> setenv device '0:1' Marvell>> setenv load_initrd_addr 0xf00000 Marvell>> setenv load_image_addr 0xa00000 Marvell>> setenv load_initrd 'echo loading uInitrd ...; ext2load $boby hmartin - Debian
Quotehmartin Updating in a bit when I've tested your zImage and the uInitrd from cschil. Bodhi, the issue seems to be with your kernel, not the initrd. Booting your zImage/dtb with cschil's uInitrd, panic: Marvell>> usb reset (Re)start USB... USB0: Port (usbActive) : 0 Interface (usbType = 3) : USB XHCI 1.00 scanning bus 0 for devices... 2 USB Device(s) foundby hmartin - Debian
Quotebodhi Could you boot my uImage/zImage and peacemaker's uInitrd? Okay... I mean the uInitrd from cschil doesn't include any kernel modules. I'm happy to experiment, but this is akin to me suggesting you remove modules ;-) It's also LZMA compressed, yours is gzip compressed: DECIMAL HEXADECIMAL DESCRIPTION ------------------------------------------------by hmartin - Debian
Quotebodhi but we (this forum) need a Debian style uInitrd which has all the modules so we can run all MVEBU Armada boxes using the same kernel. I understand. But the initrd only needs to contain the modules necessary to boot. The remainder of the modules (e.g. to support things like NFS, iSCSI, USB cameras, etc) can live on the rootfs, since they're only needed after booting. I took aby hmartin - Debian
Quotebodhi OK :) you should have posted this log. I was under the impression that you and saschadd could not do this. So the USB power activation by u-boot was enough to let the kernel mounting the rootfs. Sorry, before I only tried booting it with tftp, but since your feedback I wondered why not try booting from USB since that is the major issue we face? I'm not sure which filesystemby hmartin - Debian
Quotebodhi but I'd prefer to work on that only after we booted Debian on USB Sorry if I'm being really dense, but haven't we already done that? Peacemaker's kernel and initrd works. I can load it and boot to Debian all on a USB 2.0 stick plugged into the rear USB 3.0 port on my EX2100. Marvell>> usb reset (Re)start USB... USB0: Port (usbActive) : 0 Interfaby hmartin - Debian
I did some comparison between the WD u-boot source and the mainline u-boot source. Perhaps I am too simplistic, but it seems like you could add saveenv by editing include/config/armada_38x.h to add: #define CONFIG_CMD_SAVEENV Since it seems not possible to uart boot u-boot, I haven't tested this yet. However, the resulting u-boot image is larger than if you build it without the above deby hmartin - Debian
Quotebodhi The WD Mycloud EXx100 might be different from the Xyzel. So try: > ./kwboot -t -B 115200 /dev/ttyUSB0 -b u-boot-spl.kwb -p I already tried. It doesn't work. I will continue the discussion in the Debian thread!by hmartin - uBoot
Does anyone know the logistics to boot an mvebu device via uart? In the GPL source code from Western Digital for the EX2100, building u-boot generates the following files: u-boot-a38x-Yosemite_2014T3_PQ-nand.bin u-boot-a38x-Yosemite_2014T3_PQ-nand-uart.bin However, trying to boot the u-boot-a38x-Yosemite_2014T3_PQ-nand-uart.bin using kwboot doesn't work, the boot process is never inby hmartin - uBoot
Courtesy of the WD u-boot source code, I have figured out what Yosemite and Yellowstone are referring to: http://www.businesswire.com/news/home/20061030005307/en/AMCCs-Expanded-Family-PowerPC-Evaluation-Kits-Accelerates Why are these seemingly the code name for Western Digital's products? Who knows! Yosemite and Yellowstone are for a completely different CPU architecture (PPC) from a difby hmartin - Debian
QuoteWhy are vendor GPL archives always crap?! :)) They are crap because they paid cheap wages to people who modified SoC manufactor GPL code to make it work. Marvell GPLs are decent (old code, old SW design but quite good). It's vendors like Xyzel and WD that made it worse.by hmartin - Debian
Quotebodhi please take better pic that show the connection for the pins Here's an annotated photo.by hmartin - Debian
QuotePeacemaker Sound's good! But just to make sure: you booted the debian installer not he custom initrd; With the initrd debian should be booting as well. Yes, I realized this once I got into it. However if you go back enough with the Debian installer, it will eventually allow you to drop to a shell.by hmartin - Debian
Just as a note to anyone else working with the EX2100 who doesn't want to open up the case and void their warranty (*cough*). You can get a functional uart connection without *any* soldering! Just requires kapton tape, alligator clips, and a lot of patience. On the edge connector with 3 contacts, cover the two outer contacts with kapton tape. These are (from left) 3.3v, Tx, and GND. Since thby hmartin - Debian
QuotePeacemaker Just a small guess, maybe you can try booting my initrd via tftp https://themm.net/public/ex2u/start Yup, this boots to busybox for me. Nice! I will need to compile this kernel with a new DTS to enable the second Gigabit interface on the EX2100... Marvell>> tftpboot 0xa00000 uimage.bin Using egiga0 device TFTP from server 192.168.11.114; our IP address is 192.16by hmartin - Debian
Hey bodhi, grepped through the WD kernel source and u-boot source, and couldn't find PWREN_USB_REG_OFFSET anywhere. Is it possible it's under a different name?by hmartin - Debian
Quotebodhi So this current DTS and one from hmartin zip file will not power up the USB ports. I'll modify the DTS and upload it. I also noticed that the DTS from WD source does not find any mtd device, so it would seem the nand definition is incorrect. Reviewing the boot log from saschadd and my own, no mtdblocks are found on either the EX2100 or EX4100 with the DTB from WD source.by hmartin - Debian
Quotebodhi I see. Does this EX4100 have USB 2.0 port? You are using USB 3.0. Neither EX2100 or EX4100 have a USB 2.0 port, all populated USB ports are USB 3.0 Is this simply a problem because the xhci module isn't loaded soon enough in the boot process to find the USB stick? Or is there a more fundamental reason USB 3.0 isn't working?by hmartin - Debian
Quotebodhi Now the issue is how to mount the rootfs. Without initrd, the kernel can't mount the rootfs with LABEL. So let do this if you can: - Temporarily remove any HDD that you have attached. - and revise the uboot envs to boot this way ... Let me modify this post again in a moment. No problem, I am booting from tftp, so there are no SATA drives anyway. Hence I could put theby hmartin - Debian
Veeeery interesting. Two different tests and two different results! Every QA tester's best nightmare. Since my output stopped after the first SATA controller was initialized, and saschadd's output clearly shows successful initialization, I'm wondering if the issue is that the dtb you've provided is intended for the EX4100 with 2 SATA controllers, and I've got the EX210by hmartin - Debian
Hi bodhi, That was pretty anti-climactic... Marvell>> tftpboot 0x02000000 zImage-4.9.0-mvebu-tld-12 Using egiga0 device TFTP from server 192.168.11.114; our IP address is 192.168.11.110 Filename 'zImage-4.9.0-mvebu-tld-12'. Load address: 0x2000000 Loading: ################################################################# ##############################################by hmartin - Debian
> The panic might be the initrd load address (I modified it above to see if it was the reason). This error occurs during the unpacking initramfs. Nope, still dies even if I use 0x3900000 for initrd. Here's how I'm booting: tftpboot 0x2000000 zImage-4.9.0-mvebu-tld-12 tftpboot 0x3900000 uInitrd-4.9.0-mvebu-tld-12 tftpboot 0x1000000 armada-385-wd-ex4100.dtb setenv bootargsby hmartin - Debian
Hi all, This might be common knowledge already, but I think I found the dtb that Western Digital is using for the EX2100/4100: if [ "$PROJECT_NAME" = "Yellowstone" ]; then echo -e "\033[32m ***********************\033[0m" echo -e "\033[32m * build Yellowstone *\033[0m" echo -e "\033[32m ***********************\033[0m"by hmartin - Debian