Hey david, Why are you kwboot'ing the replacement uboot? Is the factory uboot locked? Getting it booting on the factory uboot will make it more likely to operate correctly.by jdwl101 - Debian
Looks like it would be straightforward to boot from usb or sata, and there’s a exposed serial header. You going to pick one up?by jdwl101 - Debian
Congratulations! Another ix2 saved from the rubbish bin! Well doneby jdwl101 - Debian
My ix2 could be fairly picky with the type of drive. Seemed to prefer 4gb or less and only usb2 drives. I’m not clear what your uboot envs are intended to do though. The ix2 requires the dtb to be appended to the kernel, it won’t work if you load it separately as the uboot ver is too old.by jdwl101 - Debian
Sorry if this muddies the water, but you can reduce the size of your mdadm raid to get space for a set of ext3 boot and root partitions. Process is reasonably straightforward, however any disk modification comes with risks. Howtoby jdwl101 - Debian
Hi Ray, Thanks for raising, I didn’t have a name on the link so it wasn’t visible. There are two repositories, the linked one is just the files that need to be updated to build openwrt successfully but I also have a fork of the full wrt source with an ix2-dl branch added.by jdwl101 - Debian
Openwrt files and pre-built images for 19.07 and 21.02 are now available on my GitHub; github link Huge thanks to Bodhi, Luo and Hippi-viking for needed info. I'm not going to attempt to upstream again, however anyone is free to take the files from GitHub and send their own pull request to openwrt.by jdwl101 - Debian
Hi All, My ix2-dl now appears to be functioning correctly. I needed to completely disconnect my TTL-serial adapter, including the leads, from the mainboard to get reliable boots. If anyone else sees strange behaviour disconnecting from the board is worth a try.by jdwl101 - Debian
Yeah the exposed header is the uart1. Mine just stops with no response as well.by jdwl101 - Debian
Thanks Luo, That’s what I got as well. Also, the openwrt team have asked that the full 1GiB of nand be used. Can anyone suggest what the nand settings in the dts and the mtdparts in the command line should be to do that? I’ve tried with 0x3f800000 however the root partition isn’t found at boot.by jdwl101 - Debian
Hey, if I try to boot with usb connected to the header, but not to my USB port, the unit just sits there - led on but not booting until I connect the usb-serial to my pc and issue a reset in uboot. Really appears Iomega/lenovo did something daft with the factory uboot, with the problems Luo and I have seen with this box. I think as long as it boots then that's as good as it can be.by jdwl101 - Debian
Ok - now it seems to be booting correctly. Looks like my cheap usb to serial (CH340) was causing the boot failures - if the serial adapter is connected to the IX2 but not to my PC then uboot freaks out. Weird!by jdwl101 - Debian
Thanks Bodhi, I've tried that, created the envs image and flashed it, on a dump it read back fine - but the IX2 then loaded its default envs on a reboot. I'm thinking even more that uboot is corrupt. I have a backup mtd0 that's been previously shared here on the forum. Can you advise what the nandwrite command would be to flash it? mtd partitions are; [ 0.446415] nby jdwl101 - Debian
Thanks Bodhi, I opened it in my hex editor and there's a big section of repeated variables at the end - is that unusual? Can I just delete the duplicated sections and write it back to nand? (if so, how?) Here's extracts from hex, the repeated 'kernel start' and 'initrd start' stand out. kernel_start=0x100000�initrd_start=0x400000�disaMvPnp=no�enaAuby jdwl101 - Debian
Sorry for that, this box has 2 env partitions. Here's the contents of mtd1 �ѡ29baudrate=115200loads_echo=0rootpath=/srv/ubuntunetmask=255.255.255.0MALLOC_len=1ethprime=egiga0image_name=uImageethmtu=1500usb0Mode=hostyuk_ethaddr=00:00:00:EE:51:81nandEcc=1bitnetretry=norcvrip=169.254.100.100loadaddr=0x02000000autoload=noimage_multi=yesethact=egiga0kernel_size=0x300000console=console=by jdwl101 - Debian
A copy of mtd1 would also be useful, I've dumped my env partitions and they look corrupted, with a group of envs repeated at the end: nanddump -a /dev/mtd2 ECC failed: 0 ECC corrected: 0 Number of bad blocks: 0 Number of bbt blocks: 0 Block size 131072, page size 2048, OOB size 64 Dumping data starting at 0x00000000 and ending at 0x00020000... �ѡ28baudrate=115200loads_echo=0roby jdwl101 - Debian
Thanks Luo, I'm starting to think something is corrupted in uboot. Can you make a backup of your mtd0 and share so I can try a reflash? Annoyingly I set uboot to be read only in the dts so will need to change the dts and recompile.by jdwl101 - Debian
Here's the bootlog: Marvell>> Marvell>> Marvell>> reset __ __ _ _ | \/ | __ _ _ ____ _____| | | | |\/| |/ _` | '__\ \ / / _ \ | | | | | | (_| | | \ V / __/ | | |_| |_|\__,_|_| \_/ \___|_|_| _ _ ____ _ | | | | | __ ) ___ ___ | |_ | | | |___| _ \ / _ \ /by jdwl101 - Debian
Great, ok I've removed that one but it still doesn't boot without serial connected. Could I just erase the env partitions and start again?by jdwl101 - Debian
Hi Bodhi, Ok, there is a corrupt entry - an extra bootcmd that starts with ^V. Any idea how I remove it? baudrate=115200 loads_echo=0 rootpath=/srv/ubuntu netmask=255.255.255.0 run_diag=yes MALLOC_len=1 ethprime=egiga0 image_name=uImage ethmtu=1500 usb0Mode=host yuk_ethaddr=00:00:00:EE:51:81 nandEcc=1bit netretry=no rcvrip=169.254.100.100 loadaddr=0x02000000 autoload=no imby jdwl101 - Debian
Hey, I can see the garbage character errors by connecting the serial console when it fails to boot. I’ll try exporting the uboot variables and report back, thanks again!by jdwl101 - Debian
And the bad blocks from dmesg; [ 0.649583] nand: device found, Manufacturer ID: 0xec, Chip ID: 0xd3 [ 0.655960] nand: Samsung NAND 1GiB 3,3V 8-bit [ 0.660439] nand: 1024 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64 [ 0.668145] Scanning device for bad blocks [ 0.676556] Bad eraseblock 54 at 0x0000006c0000 [ 0.864226] Bad eraseblock 2380 at 0x000012980000by jdwl101 - Debian
Hi Bodhi, I've used the ix2-common dtsi and the minimal ix2-dl dts from hippi-viking; IX2-DL /* Device tree file for the Lenovo IOMEGA IX2-dl NAS box. * * Copyright (c) 2017, Daniel Helgason <daniel.k.helgason @ gmail.com> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published bby jdwl101 - Debian
Ok, dts' has been redone and pull request correct for the openwrt team. It's available here; ix2-dl for openwrt I think all the flashes may have wounded my ix2 though, it's started failing to complete uboot with odd errors Unknown command 'úõÒõ$š' - try 'help' Oddly it happens only when the serial console isn't connected. USB is also flaky inby jdwl101 - Debian
Ahh snap - I've just uploaded a revised version! The one above will compile however network and power off don't function. Thanks for looking at it!by jdwl101 - Debian
Hey bodhi & Luo, I've bashed on the dts this morning trying to modify it to the required file format. Basically they use includes to import many of the functions so the individual dts can be much smaller. I've gotten the dts to compile and openwrt boots successfully. However, ethernet isn't functional and power off doesn't work. If you have a minute could you havby jdwl101 - Debian
For anyone who reads this, unfortunately the DTS we're using does not meet the code requirements of the OpenWRT folks, merge was rejected (and that's fair enough - it's their project and they make the guidelines). If anyone wants to build OpenWRT to run on an IX2-DL this is the guide I included with the pull request; kirkwood: add support for Lenovo ix2-dl Lenovo ixby jdwl101 - Debian
ok, patch worked fine in OpenWrt v21 / kernel 5.4. I've sent them the pull request for the changes to be merged.by jdwl101 - Debian