Hi Team,
vor mir steht eine DS410, bei der wohl ein Update schiefgegangen oder nach Stromausfall Schluckauf aufgetreten ist. Ich habe Sie als Briefbeschwerer und Challenge von Kleinanzeigen.
Das Gerät lässt sich einschalten, die LED blinken, dann geht es wieder aus, um dann erneut zu starten.
Verbindung über die serielle Schnittstelle klappt, hier der Output:
Nach Senden des Abort-Signal kann ich mit U-Boot kommunizieren und die verfügbaren Kommandos anzeigen:
Okay. Nach einigen Recherchen kann das passieren, bei doozan gibt es viel hilfreiches wissen.
Wie im Bootlog steht, scheint das RamDisk Image synology_ppc853x_410 5967 beschädigt und muss neu drauf. Das Binary habe ich aus einem alten Updatepaket extrahiert.
TFTPBoot funktioniert nicht, da die LAN-Schnittstelle nicht hochkommt, weder am Switch noch direkt am PC.
USB gibt dieses U-Boot nicht her.
Also habe ich versucht, das Image über die serielle Schnittstelle aufzuspielen, das klappt auch:
Allerdings lässt U-Boot nicht booten:
Auch direktes Anspringen klappt nicht:
Und jetzt weiß ich auch nicht. So richtig tief stecke ich noch nicht im Speicheraufbau und dessen Organisation, wie kriege ich das Image jetzt an die Stelle des beschädigten?
Beim kopieren mache ich wohl was falsch oder stelle es mir zu einfach vor:
Hat jemand Rat? Braucht es noch Infos?
Freut sich auf Tipps
Peter
vor mir steht eine DS410, bei der wohl ein Update schiefgegangen oder nach Stromausfall Schluckauf aufgetreten ist. Ich habe Sie als Briefbeschwerer und Challenge von Kleinanzeigen.
Das Gerät lässt sich einschalten, die LED blinken, dann geht es wieder aus, um dann erneut zu starten.
Verbindung über die serielle Schnittstelle klappt, hier der Output:
Code:
U-Boot 1.3.3 (Mar 17 2010 - 13:41:27)
CPU: 8533_E, Version: 1.1, (0x803c0011)
Core: E500, Version: 2.2, (0x80210022)
Clock Configuration:
CPU:1067 MHz, CCB: 534 MHz,
DDR: 267 MHz (534 MT/s data rate), LBC: 33 MHz
L1: D-cache 32 kB enabled
I-cache 32 kB enabled
I2C: ready
DRAM: Initializing
DDR: 512 MB
FLASH: 4 MB
L2 cache 256KB: enabled
Using default environment
In: serial
Out: serial
Err: serial
CPLD revision: 1.0
Synology Model: DS-410
DRAM Type: DIMM
Fan Status: Good
Net: No ethernet found.
Press Ctrl+C to abort autoboot in 2 second
## Booting image at ffc00000 ...
Image Name: Linux-2.6.32.12
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1930719 Bytes = 1.8 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
## Loading RAMDisk Image at ffe00000 ...
Image Name: synology_ppc853x_410 5967
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 959450 Bytes = 937 kB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... Bad Data CRC
OK
Booti
U-Boot 1.3.3 (Mar 17 2010 - 13:41:27)
CPU: 8533_E, Version: 1.1, (0x803c0011)
Core: E500, Version: 2.2, (0x80210022)
Clock Configuration:
CPU:1067 MHz, CCB: 534 MHz,
DDR: 267 MHz (534 MT/s data rate), LBC: 33 MHz
L1: D-cache 32 kB enabled
I-cache 32 kB enabled
I2C: ready
DRAM: Initializing
DDR: 512 MB
FLASH: 4 MB
L2 cache 256KB: enabled
Using default environment
In: serial
Out: serial
Err: serial
CPLD revision: 1.0
Synology Model: DS-410
DRAM Type: DIMM
Fan Status: Good
Net: No ethernet found.
Press Ctrl+C to abort autoboot in 2 second
Code:
DS410><INTERRUPT>
DS410>?
? - alias for 'help'
base - print or set address offset
bootm - boot application image from memory
bootp - boot image via network using BootP/TFTP protocol
cmp - memory compare
coninfo - print console devices and information
cp - memory copy
crc32 - checksum calculation
echo - echo args to console
erase - erase FLASH memory
exit - exit script
flinfo - print FLASH memory information
go - start application at address 'addr'
help - print online help
icrc32 - checksum calculation
iloop - infinite loop on address range
imd - i2c memory display
iminfo - print header information for application image
imls - list all images found in flash
imm - i2c memory modify (auto-incrementing)
imw - memory write (fill)
inm - memory modify (constant address)
iprobe - probe to discover valid I2C chip addresses
loadb - load binary file over serial line (kermit mode)
loady - load binary file over serial line (ymodem mode)
loop - infinite loop on address range
md - memory display
mm - memory modify (auto-incrementing)
mtest - simple RAM test
mw - memory write (fill)
nm - memory modify (constant address)
pci - list and access PCI Configuration Space
printenv- print environment variables
protect - enable or disable FLASH write protection
rarpboot- boot image via network using RARP/TFTP protocol
reset - Perform RESET of the CPU
setenv - set environment variables
test - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
version - print monitor version
Okay. Nach einigen Recherchen kann das passieren, bei doozan gibt es viel hilfreiches wissen.
Wie im Bootlog steht, scheint das RamDisk Image synology_ppc853x_410 5967 beschädigt und muss neu drauf. Das Binary habe ich aus einem alten Updatepaket extrahiert.
TFTPBoot funktioniert nicht, da die LAN-Schnittstelle nicht hochkommt, weder am Switch noch direkt am PC.
USB gibt dieses U-Boot nicht her.
Also habe ich versucht, das Image über die serielle Schnittstelle aufzuspielen, das klappt auch:
Code:
DS410>loady
## Ready for binary (ymodem) download to 0x01000000 at 115200 bps...
C(STX)/0(CAN) packets, 5 retries
## Total Size = 0x000ea41a = 959514 Bytes
DS410>iminfo
## Checking Image at 01000000 ...
Image Name: synology_ppc853x_410 5967
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 959450 Bytes = 937 kB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Allerdings lässt U-Boot nicht booten:
Code:
DS410>bootm
## Booting image at 01000000 ...
Image Name: synology_ppc853x_410 5967
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 959450 Bytes = 937 kB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Wrong Image Type for bootm command
Auch direktes Anspringen klappt nicht:
Code:
DS410>go 01000000
## Starting application at 0x01000000 ...
NIP: 01000000 XER: 20000000 LR: 1FFDDF24 REGS: 1ffadc38 TRAP: 0700 DAR: 00000000
MSR: 00029200 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 00
GPR00: 1FFDDFB8 1FFADD28 1FFADF88 00000001 1FFB0274 1FFB0274 FFFFFFFE 00000006
GPR08: 00000041 00000020 FFFFFFFF 1FFADAE8 00000000 5DF7BDAF 1FFFC400 20010000
GPR16: 00000000 00000000 00000000 00000000 00000000 1FFAE014 1FFB0290 00000000
GPR24: 1FFB01C0 1FFADDD0 00000000 00000002 00000000 01000000 1FFFC9B0 1FFB0274
** Illegal Instruction **
Call backtrace:
01000000 1FFDDFB8 1FFE83FC 1FFE8AA4 1FFE8C0C 1FFDD6A0 1FFD7F14
1FFD15FC
Program Check Exception
### ERROR ### Please RESET the board ###
Und jetzt weiß ich auch nicht. So richtig tief stecke ich noch nicht im Speicheraufbau und dessen Organisation, wie kriege ich das Image jetzt an die Stelle des beschädigten?
Beim kopieren mache ich wohl was falsch oder stelle es mir zu einfach vor:
Code:
DS410>cp 01000000 ffe00000 937000
Copy to Flash... Outside available Flash
Hat jemand Rat? Braucht es noch Infos?
Freut sich auf Tipps
Peter