goflex:start
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
goflex:start [2011/05/02 18:46] – neutronscott | goflex:start [2023/11/04 22:30] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Seagate GoFlex Home Hacks // Debian ====== | ||
+ | |||
+ | Lots of people working on this. But the information is scattered, and I've not seen the point to some of it... Guess if you want something done right, you have to do it yourself? ;) | ||
+ | |||
I started this 4/23 so this is a work-in-progress, | I started this 4/23 so this is a work-in-progress, | ||
+ | |||
+ | [edit: 8/1] I guess it'll be some time. This project was short lived. I got debian on it and then it's done. ha. been running fine just another computer on the network now... | ||
+ | |||
+ | ===== bootrom disassembly ===== | ||
+ | someone with dockstar-like device (bootrom 1.11) asked for my dump to compare and see why they cannot boot from serial as we can. my results: | ||
+ | |||
+ | ASCII dump from U-boot: http:// | ||
+ | Binary file: http:// | ||
+ | Simple objdump disassemble: | ||
+ | |||
===== external serial port ===== | ===== external serial port ===== | ||
- | ok i had to put it back together before the kids come home for the weekend. what can carry 3-wire serial and be small? RadioShack catalog #274-0245 is 3-conductor stereo submini audio jack, and #274-244 is submini phone plug (3/ | + | first thing you'll want is serial console access to the device. i soldered my Nokia cable onto the board almost directly after opening the device, but then i had to put it back together before the kids came home for the weekend. what can carry 3-wire serial and be small? RadioShack catalog #274-0245 is 3-conductor stereo submini audio jack, and #274-244 is submini phone plug (3/ |
- | ===== goflex mods ===== | + | ===== debian |
- | Lots of people working on this. But the information is scattered, and I' | + | only thing missing is our arch type in the kernel. let's start with debian stable kernel sources and rebuild with goflex patch. |
+ | http:// | ||
+ | |||
+ | it says it includes | ||
+ | I added a bit also to arch/ | ||
+ | |||
+ | We can start serial commands at u-boot | ||
+ | |||
+ | < | ||
+ | usb start; | ||
+ | </ | ||
+ | |||
+ | Here is full clean boot. | ||
+ | [[goflex: | ||
+ | |||
+ | Creation | ||
+ | |||
+ | http:// | ||
+ | http:// | ||
+ | |||
+ | You can download debootstrap .deb from whatever Linux you are booted hopefully, and extract it with "ar x debootstrap.deb" | ||
+ | |||
+ | < | ||
+ | cdebootstrap --foreign --arch armel --include=linux-image-2.6-kirkwood squeeze /mnt http:// | ||
+ | </ | ||
+ | |||
+ | including kirkwood image ensures you get all the modules and initramfs things, you can use my uMulti | ||
+ | |||
+ | ===== openwrt ===== | ||
+ | i built this too as backup. the tiny rootfs lives in my ext2 /boot partition for now. maybe will flash to NAND some time. i also mirrored snapshot of trunk packages for the day, in case libraries change or whatever. even placed a jfs.ko there to access the jfs share if i need to. i didn't make it a kmod opkg, sorry. | ||
+ | |||
+ | http:// | ||
+ | |||
+ | ===== consistent nand map between kernels ===== | ||
+ | first set the two mtdids/ | ||
+ | < | ||
+ | set mtdids nand0=orion_nand | ||
+ | set mtdparts mtdparts=orion_nand: | ||
+ | mtdparts add nand0 6M uImage | ||
+ | mtdparts add nand0 - rootfs | ||
+ | </ | ||
+ | |||
+ | That is my nand's layout inside factory firmware. You'll also need to mention $(mtdparts) inside bootargs. | ||
+ | |||
+ | Then I was hoping that using **mtdparts del nand0,0** and removing the uboot partition would suffice on making normal kernels ignore the 4-bit ECC and printing a screen-full of bad block messages upon boot. :\ | ||
+ | ===== mods to official firmware ===== | ||
Just captured this: [[http:// | Just captured this: [[http:// | ||
Line 28: | Line 87: | ||
really don't want to have to JTAG this. i'm scurred. took about 30min to do 64kB on my router. would probably take all day to do 512kB on this.. | really don't want to have to JTAG this. i'm scurred. took about 30min to do 64kB on my router. would probably take all day to do 512kB on this.. | ||
- | This is example only. Probably you want to change it some. This example uses FAT on partition 1, and sets root to be partition 2. You maybe want ext2 on 1 partition. Replace ' | + | This is example only. Probably you want to change it some. This example uses FAT on partition 1, and sets root to be partition 2. You maybe want ext2 on 1 partition. Replace ' |
< | < | ||
- | set boot_nand $(bootcmd) | + | usb_start=usb start; fatload usb 0:1 $(loadaddr) /uImage |
- | set usb_start | + | usb_boot=echo usb success; set bootargs $(console) root=/ |
- | set boot_usb 'echo usb success; set bootargs $(console) root=/ | + | ide_start=set filesize; |
- | set ide_start | + | ide_if_loaded=print filesize |
- | set ide_boot | + | ide_boot=echo ide success;set bootargs $(console) root=/ |
- | set bootcmd | + | boot_nand=nand read.e 0x800000 0x100000 0x300000; setenv bootargs $(console) $(bootargs_root); |
+ | bootcmd=run usb_start | ||
</ | </ | ||
- | Look at it all first with ' | + | **NOTE** I noticed last night that 'ext2load' |
- | ===== debian ===== | + | |
- | only thing missing | + | |
- | http:// | + | |
- | it says it includes the debian patches, but it comes up as normal 2.6.32... meh. | + | ===== cross compiling toolchain ===== |
- | I added a bit also to arch/arm/ | + | Ubuntu already has: apt-get install gcc-arm-linux-gnueabi |
- | We can start serial commands at u-boot to load USB key with [[http:// | + | Very handy if you're using x86_64 |
- | + | ||
- | < | + | |
- | usb start; | + | |
- | </ | + | |
- | + | ||
- | Here is full clean boot. | + | |
- | [[goflex: | + | |
- | + | ||
- | Creation of the USB key or even ext2 partition on the SATA can be easy with debootstrap. I will attempt emdebian' | + | |
- | + | ||
- | http:// | + | |
- | http:// | + | |
- | + | ||
- | You can download debootstrap .deb from whatever Linux you are booted hopefully, | + | |
- | + | ||
- | ===== x86_64 binary toolchain ===== | + | |
- | Ubuntu 10.10 has: apt-get install gcc-arm-linux-gnueabi | + | |
===== serial recovery ===== | ===== serial recovery ===== | ||
Line 74: | Line 114: | ||
As you see from this log, the header must be changed to boot from serial: [[goflex: | As you see from this log, the header must be changed to boot from serial: [[goflex: | ||
+ | |||
+ | ===== lcd4linux ===== | ||
+ | Somewhat unrelated, but I attached a Coby DP-152 I got for $5. Edited the example a bit. Here's [[http:// | ||
+ | |||
+ |
goflex/start.1304361989.txt.gz · Last modified: 2023/11/04 22:29 (external edit)