by tilator » Thu Feb 07, 2013 7:25 pm
$this->bbcode_second_pass_quote('nurio', '@')tilator, although it probably won’t help me solve my problem, can you share with us this information?
Thanks
I fully agree with WarheadsSE. Stage1 is most definitely your trouble.
I have Silverstone DC01 but I have installed Akitio Mycloud Mini software in it, because it's updated lately. Kernel version is 2.6.31.14, boot's totally from hard drive (Samsung 1TB) having GPT partition table in it.
This device has 256MB ram. There are different Stage1 and u-boot files for nand boot and sata boot as well as for different ram amount. So, there are quite many of them and you must have right one for it to work correctly.
This device boots entirely from sata drive with gpt partition table by doing these steps:
1. make hard disk gpt label.
2. make partitions (I have 4. First is 33MB unformatted partition for stage1, u-boot and kernel uImage. Secong is 2GB ext3 partition for rest of the OS. Third is swap and last is for data.
My partition table looks like this:
Model: ATA SAMSUNG HN-M101M (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number Start End Size File system Name Flags
1 33.6MB 2181MB 2147MB ext3 primary
2 2181MB 2718MB 537MB linux-swap(v1) primary
3 2718MB 1000GB 997GB ntfs msftres
3. make the disk bootable using the perl script you can find at the start of this thread.
4. write stage1, u-boot and kernel in the first partition.
You can find all important things from the commands under:
dd if=$stage1File of="$disk" bs=512 seek=34
dd if=$ubootFile of="$disk" bs=512 seek=154
dd if=$kernelFile of="$disk" bs=512 seek=1290
dd if=$stage1File of="$disk" bs=512 seek=57088
dd if=$ubootFile of="$disk" bs=512 seek=57208
dd if=$kernelFile of="$disk" bs=512 seek=58344
"$disk" might be /dev/sda none of the files will be written to formatted partitions (sda1, sda2 etc) but directly to the device. They will end up to the unformatted part of the disk, because with this installation sda1 starts from sector 65536.
5. put rest of the OS where you like it to be. Mine is SDA1.
6. reboot and set environment settings for u-boot.
Mine is here:
$ printenv
bootcmd=run dload1 boot || run dload2 boot || lightled
bootdelay=2
baudrate=115200
ethaddr=00:30:e0:00:00:01
ipaddr=192.168.50.100
serverip=192.168.50.59
autoload=n
netmask=255.255.0.0
bootfile="uImage"
select0=ide dev 0
select1=ide dev 1
lightled=ledfail 1
extinguishled=ledfail 0
boot=bootm 60500000
dload1=
ide read 0x60500000 50a 1644dload2=
ide read 0x60500000 e3e8 1644stdin=serial
stdout=serial
stderr=serial
bootargs=root=/dev/sda1 console=ttyS0,115200 elevator=cfq mac_adr=0x00,0x30,0xe0,0x00,0x00,0x01 rootwait ubi.mtd=2,512 mem=256M poweroutage=yes
IDE READ 50a match disk sector 1290 and e3e8 sector 58344. Hex number 1644 match 5700 sectors. So UImage can be up to 5700*512=2918400 bytes with these settings. If uImage is bigger, the last number must be changed bigger too. Stage1, u-boot and uImage are all twice on the disk. Obviously second copy should work if first one might get broken.
That's it as long as booting this device. I also got today the rest of it working. Last thing was to make the power button to bring it totally down too. I made a tiny SW to read power button state and a perl script to power the device down as it's supposed to be done.