DS218J blinkt blau nach gescheitertem FW Update - full unbrick user story

radium

Benutzer
Mitglied seit
19. Okt 2012
Beiträge
8
Punkte für Reaktionen
12
Punkte
59
Hallo Freunde der Embedded SOCs,

heute möchte ich meine Erfahrungen bei der Reparatur einer DS218J mit euch teilen. November Sonntag - grau in grau Langeweile - im Nachbarort bei Kleinanzeigen gab es günstig eine defekte DS218J ohne Datenträger, die nach einem gescheiterten FW Update nur noch blinkte. Webinterface nicht erreichbar, Synology Assistant findet im LAN die Diskstation nicht , eine schöne Herausforderung für kalte Winterabende :coffee:

Disclaimer : Ich bin kein Synology, NAS, Linux sonstwas Experte, arbeite jedoch schon viele Jahre in der IT Branche und kann mich in Themen schnell einlesen, deswegen sorry wenn ich hier unverständliches Wording verwende. Dies ist keine Step by Step Anleitung für Anfänger und erhebt kein Anspruch auf Vollständigkeit. Benutzung auf eigene Gefahr!


Nachdem ich mir Zugriff über die serielle Konsole verschafft hatte und der Bootloader noch intakt war, ergab sich folgendes Fehlerbild :


SF: Detected MX25L6405D with page size 64 KiB, total 8 MiB
*** Warning - bad CRC, using default environment
.
.
.
Wrong Image Format for bootm command
ERROR: can't get kernel image!


Das war also die Ausgangssituation, ich musste jetzt dafür sorgen, dass die DS218J "irgendwie" einen Kernel bootet. Mangels Hardware Flasher für den MX25L6405D suchte ich nach Alternativen. Ich prüfte ob booten über USB möglich war, gab dann aber nach viel Lesen in einschlägigen Foren (auch hier ;)) die Idee wieder auf und verfolgte einem anderen Lösungsansatz.
Dieser bestand darin, Teile des fehlenden Flashimages via TFTP in eine Ramdisk zu schreiben, von dieser Ramdisk den Kernel zu booten und dann den Synology Assistant dazu zu bringen, der DS218J eine neue DMS Version zu verpassen incl. Flashvorgang des MX25L6405D.
Ich lud mir testweise verschiedene DMS Versionen für die DS218J von der Synology Seite herunter und zerlegte die *.pat Files mit 7zip um mir eine Übersicht über deren Inhalt zu verschaffen. Dann installierte ich auf einem Windows 10 Rechner mit deaktivierter Firewall SolarWinds TFTP Server und legte die zuvor extrahierten Dateien "zImage" und "rd.bin" ins TFTP Stammverzeichnis ab. Ich setzte die fettgedruckten Befehle in Putty über die serielle Konsole ab...

Marvell>> setenv ipaddr 192.168.178.233
Marvell>> setenv serverip 192.168.178.99
Marvell>> tftpboot 0x1000000 zImage
Using egiga0 device
TFTP from server 192.168.178.99; our IP address is 192.168.178.233
Filename 'zImage'.
Load address: 0x1000000
Loading: *#################################################################
#################################################################
########################
3 MiB/s
done
Bytes transferred = 2247064 (224998 hex)
Marvell>> tftpboot 0x2000000 rd.bin
Using egiga0 device
TFTP from server 192.168.178.99; our IP address is 192.168.178.233
Filename 'rd.bin'.
Load address: 0x2000000
Loading: *#################################################################
#################################################################
#################################################################
#########################################
3.3 MiB/s
done
Bytes transferred = 3463920 (34daf0 hex)
Marvell>> bootm 1000000 2000000
## Booting kernel from Legacy Image at 01000000 ...
Image Name: Linux-3.10.108
Created: 2021-10-18 11:15:28 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2247000 Bytes = 2.1 MiB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 02000000 ...
Image Name: synology_armada38x_ds218j 42218
Created: 2021-10-18 13:15:33 UTC
Image Type: ARM Linux RAMDisk Image (uncompressed)
Data Size: 3463856 Bytes = 3.3 MiB
Load Address: 08000000
Entry Point: 08000000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
no ATAGS support: can't continue

.. doch irgendwas war noch faul :unsure:Die Suchanfrage "no ATAGS support: can't continue" bei Google führte mich schließlich dem Ziel näher. Ich verstand nun, dass ich noch eine weitere Datei benötigte um den Bootvorgang erfolgreich abschließen zu können, eine *.dtb Datei. Diese fand ich bei doozan, jedoch von einer DS216J. Glücklicherweise haben die DS216J und DS218J einen SOC aus der gleichen Marvell Familie :cool:

Marvell>> setenv ipaddr 192.168.178.233
Marvell>> setenv serverip 192.168.178.99
Marvell>> tftpboot 0x1000000 zImage
Using egiga0 device
TFTP from server 192.168.178.99; our IP address is 192.168.178.233
Filename 'zImage'.
Load address: 0x1000000
Loading: *#################################################################
#################################################################
########################
3.1 MiB/s
done
Bytes transferred = 2247064 (224998 hex)
Marvell>> tftpboot 0x2000000 rd.bin
Using egiga0 device
TFTP from server 192.168.178.99; our IP address is 192.168.178.233
Filename 'rd.bin'.
Load address: 0x2000000
Loading: *#################################################################
#################################################################
#################################################################
#########################################
2.8 MiB/s
done
Bytes transferred = 3463920 (34daf0 hex)
Marvell>> tftpboot 0x3000000 dtb.dtb
Using egiga0 device
TFTP from server 192.168.178.99; our IP address is 192.168.178.233
Filename 'dtb.dtb'.
Load address: 0x3000000
Loading: *#####
1.9 MiB/s
done
Bytes transferred = 65536 (10000 hex)
Marvell>> bootm
Wrong Image Format for bootm command
ERROR: can't get kernel image!
Marvell>> bootm 1000000 2000000 3000000
## Booting kernel from Legacy Image at 01000000 ...
Image Name: Linux-3.10.108
Created: 2021-10-18 11:15:28 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2247000 Bytes = 2.1 MiB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 02000000 ...
Image Name: synology_armada38x_ds218j 42218
Created: 2021-10-18 13:15:33 UTC
Image Type: ARM Linux RAMDisk Image (uncompressed)
Data Size: 3463856 Bytes = 3.3 MiB
Load Address: 08000000
Entry Point: 08000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 03000000
Booting using the fdt blob at 0x03000000
Loading Kernel Image ... OK
OK
Loading Ramdisk to 1f6d9000, end 1fa26ab0 ... OK
Loading Device Tree to 00ff9000, end 00fffa9b ... OK

Skipping Device Tree update ('fdt_skip_update' = yes)

Limit DDR size at 3GB due to power of 2 requirement of Address decoding

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 3.10.108 (root@build16) (gcc version 7.5.0 (GCC) ) #42218 SMP Mon Oct 18 19:14:53 CST 2021

Ich freute mich sehr, als die DS218J aufhörte blau zu blinken :D und im Anschluss der Synology Assistant die Box im Netzwerk finden konnte :cool:
Hier der komplette Log mit Extras ;) https://pastebin.com/HCQQmBfV
 
Zuletzt bearbeitet:

rouven97

Benutzer
Mitglied seit
23. Dez 2022
Beiträge
5
Punkte für Reaktionen
0
Punkte
1
Hallo radium,
vielen Dank für das Teilen deiner erfolgreichen Reparatur, das verschafft mir noch Hoffnung. Ich habe auch eine gebrauchte DS 218 erworben und habe die selbe Ausgangsproblematik. Ich habe schon einiges versucht, aber sie leider noch nicht ans laufen bekommen. Wenn ich den Bootvorgang abbreche, dann komme ich auch in die "u-boot Oberfläche," allerdings habe ich hier andere Befehle. Alle Onlinebeitrage, die ich bisher gefunden habe, verwenden "tftpboot adresse dateiname." Bei mir lautet der Befehl "tftp," aber die Dateien kann ich darüber auch laden. Das booten von dem geladenen zImage und rd.bin schlägt allerdings fehl.
Wie finde ich denn heraus, welche DSM Version ich entpacken muss und zu welcher Adresse ich die Dateien per TFTP ziehen muss?
Vielleicht kann mir da einer weiterhelfen. Ich kann auch gerne ein Log aus der Konsole ziehen, wenn das von nöten ist. Ich bin nur nicht sicher, welche Stellen ich dann lieber unkenntlich machen sollte.

Grüße Rouven
 

peterhoffmann

Benutzer
Sehr erfahren
Mitglied seit
17. Dez 2014
Beiträge
6.057
Punkte für Reaktionen
1.855
Punkte
254

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.341
Punkte für Reaktionen
633
Punkte
174

rouven97

Benutzer
Mitglied seit
23. Dez 2022
Beiträge
5
Punkte für Reaktionen
0
Punkte
1
Hey @peterhoffmann und @AndiHeitzer Danke für die schnelle Antwort. Den Link konnte ich öffnen und runterladen.
Ich kann es damit versuchen, aber ich habe eine normale DS218, ohne das J.
Ich kann mir DSM für meine DS218 ja selber herunterladen und entpacken, aber Ist die Version entscheidend, bzw. abhängig von der installierten Version auf der defekten DS218? Fehlen würde mir dann noch die dtb Datei für meine DS218, die hat doch einen anderen SoC?
Welche RAM-Adresse muss ich beim tftp dann verwenden, ist das grundsätzlich egal?
Grüße Rouven
 
Zuletzt bearbeitet:

radium

Benutzer
Mitglied seit
19. Okt 2012
Beiträge
8
Punkte für Reaktionen
12
Punkte
59
Hallo @rouven97 . Du musst vorsichtig sein, außer einem ähnlichen Namen haben DS218 und DS218J nichts gemeinsam. Die DS218 nutzt einen Realtek Prozessor und ein aarch64 Linux, die DS218J einen Marvell Prozessor mit einem 32 Bit Linux. Es handelt sich um komplett verschiedene CPU Architekturen. Die Files von Onedrive kannst du in deinem Fall leider nicht verwenden. Bitte poste ein Log, damit wir sehen können, an welcher Stelle es klemmt, Danke.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: peterhoffmann

rouven97

Benutzer
Mitglied seit
23. Dez 2022
Beiträge
5
Punkte für Reaktionen
0
Punkte
1
Hey,
anbei stelle ich mal ein paar Logs ein, ich hoffe das war gemeint...
Folgendes läuft durch, wenn ich den Bootprozess nicht unterbreche:
Code:
C1:80000000
C2
?
C3h
hwsetting size: 00000B94
C4
f
5-5
Goto FSBL: 0x10100000
<=============================================>
fsbl_main: sys_secure_type = 0x0000BEEE
fsbl_main: sys_boot_type = 0x00000001
fsbl_main: sys_boot_enc = 0x00000000
fsbl_main: sys_bisr_done = 0x00000000
sys_hwsetting_size:00000BC0
sys_bootcode_size:00062C80
sys_secure_fsbl_size:00010B00
sys_secure_os_size:00000000
sys_bl31_size:00000000
sys_rsa_key_fw_size:00000000
sys_rsa_key_tee_size:00000000
sys_rescue_size:00026388

HwSetting:
hwsetting_blk_no:88120800
hwsetting_total_size:00000C40
hwsetting_blk_count:00000C40

Bootcode:
bootcode_blk_no:88121440
bootcode_total_size:00062CA0
bootcode_blk_count:00062CA0

FSBL:
secure_fsbl_blk_no:881840E0
secure_fsbl_total_size:00010B20
secure_fsbl_blk_count:00010B20

TEE OS:
secure_os_blk_no:88194C00
secure_os_total_size:00000000
secure_os_blk_count:00000000

BL31:
bl31_blk_no:88194C00
bl31_total_size:00000000
bl31_blk_count:00000000

RSA Key Fw:
rsa_key_fw_blk_no:88194C00
rsa_key_fw_total_size:00000000
rsa_key_fw_blk_count:00000000

RSA Key TEE:
rsa_key_tee_blk_no:88194C00
rsa_key_tee_total_size:00000000
rsa_key_tee_blk_count:00000000

Rescue:
rescue_blk_no:88194C00
rescue_total_size:000263A8
rescue_blk_count:000263A8
********** FW_TYPE_BOOTCODE **********
fwInfo->fwType: 00000001
fwInfo->isGolden: 00000001
fwInfo->ddrReadAddr: 00520000
fwInfo->ddrDestAddr: 00020000
fwInfo->flashType: 00000001
fwInfo->flashUnitSize: 00000001
fwInfo->flashOffset: 88121440
fwInfo->dataSize: 00062CA0
body_size:00062C80
flash_unit_no:88121440
flash_unit_count:00062CA0
real_size:00062C68
sha256 Fw
j bootcode jump address:00020000
64b


U-Boot 2012.07-gcde0b30 (Oct 18 2018 - 14:09:16)

CPU  : Cortex-A53 quad core - AARCH32
Board: Realtek QA Board
DRAM:  2 GiB
Watchdog: Disabled
Cache: Enabled
Non-Cache Region: 1 MB@0x07900000
nor flash id [0x00c22017]
sector 256k en: 0
sector  64k en: 1
sector  32k en: 0
sector   4k en: 1
page_program  : 1
max capacity  : 0x00800000
spi type name : MX 64Mbit
Factory: NOR
Factory: pp:0, seq#:0x3, size:0x2400
------------can't find tmp/factory/000BootParam.h
In:    serial
Out:   serial
Err:   serial
RTK_set_power_saving_config:Default POWERE_ON_S5 not set

Synology Model: DS218

SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
Net:   Realtek PCIe GBE Family Controller mcfg = 0024
dev->name=r8168#0
*** Reboot-Action invalid ***
Hit Esc or Tab key to enter console mode or rescue linux:  0
------------can't find tmp/factory/recovery
======== Checking into android recovery ====

check_acpu_boot_notification, boot-reason : 0x00044200
check_rtc_expire:RTC not detected in factory
customize_check_normal_boot: power up by button

SPI start addr(remap) = 0x88200000
DDR start addr        = 0x0b000000
reading byte size     = 0x002f0000

SPI start addr(remap) = 0x881c0000
DDR start addr        = 0x0b000000
reading byte size     = 0x00040000
Uncompressed size: 785544 = 0xBFC88

SPI start addr(remap) = 0x88100000
DDR start addr        = 0x01f00000
reading byte size     = 0x00010000

SPI start addr(remap) = 0x884f0000
DDR start addr        = 0x02200000
reading byte size     = 0x003ff000
Start Boot Setup ...
Start Audio Firmware ...
Start A/V Firmware ...
sdbocdncd1i_nmgo] d1e2 [950x 0c7h:i p
xhiCflta:s si6f yleBongndthi:n g2  ]0
 P00008gm0t0_,t enusmt in= g  0rext0u0r00n0s0 0010
  B (PAc)u
r_[vFaWl]k:y l[0inx0_b0]r ianug tuop
0nhweswe_vttali:n g[
bx0F2i]n ifsohrc ke_yplwimn_
 ring_temp hwsetting
[ACPU] Set protect, start: 0x00000000 end: 0x00001000 moduleid:6
HDMI Raw Enable: AC3 DTS MPEG2 AAC DDP

SPDIF Raw Enable: AC3 DTS MPEG2 AAC

Force 2ch Format: DTS DTSHD AC3 DDP MLP AAC WMAPRO


@@@@@@@One Step TV System magic number = 0xffffffff, addr = 0xa001f800@@@@@@@

@@@@One Step magic number not match! use fw default TV System!
HDMIOff = 0
[VO]vo->is_hdmi_off_clock_on:0
[VO_SetVideoStandard]st 25 p 1 1 0
[VO_SetVideoStandard]dp_standard:1067002368 data0  0x00000004 data1  0x00000000
[VO_SetVideoStandard]HDMIoff 0 is_tve_on 0 user_cvbs_off 1
lvds.format 0 port_setting  0x00000381 lvds_wb 0
[VO setTVStandard 25 3D 0 0]

(TVE) TVE_DAC_mode 0,cmd->enProg 1!!
~~comp 0, ch2 0, mode_3D 0!!
SetVideoStandard return!

(VO_ConfigHDMI_InfoFrame) L:264, is_hdmi_plugin 1, hdmiMode 1!!Mode 1 dataByte1  0x00000040  0x000000a8  0x00000000
dataByte4  0x00000000  0x00000000 int0  0x00000001

(HDMI_3D) mode 1, HDMI_gen 1, En_3D 0, Format_3D 0 scramble:0!!RGB_or_YCbCr:2 Pixel_Colocrt:2 Deep_Color:0 Deep_Depth:0
@@vo->hdr_ctrl.trans:0 HDMI_gen_dynamic_range_master_infoframe
@@set C1C0 to 2(BT709),set EC2EC1EC0 to 0

 go back SET_HDMI!!boot_info  0xa0000000 magic  0xffffffff en 255


EXPORT ENV AT 0x10000000, ENV size info:0x00002000,0x00001ffc,0x00000004
rtk_preload_bootimages_spi : header info
 0x00000bc0 0x00062c80 0x00010b00 0x00000000
 0x00000000 0x00000000 0x00000000 0x00026388
 0x00000000
rtk_preload_bootimages_spi : load U-Boot 64 from 0x88194c00 to 0x01500000 with size 0x00026388
check factory flag
copy_2nd_bootloader_and_run : src:0x01500000, dst:0x00021000, size:0x00028000
Jumping to 2nd bootloader...


U-Boot 2015.07-g428cfe7-dirty (May 16 2018 - 10:29:38 +0800)

CPU  : Cortex-A53 Quad Core
Board: Realtek QA Board
DRAM:  2 GiB
mapping memory 0x20000000-0x40000000 non-cached
In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  0
rtk_plat_set_fw not port yet, use default configs
## Flattened Device Tree blob at 01f00000
   Booting using the fdt blob at 0x1f00000
   reserving fdt memory region: addr=2c00000 size=8c00000
   reserving fdt memory region: addr=2600000 size=600000
   reserving fdt memory region: addr=11000000 size=8c00000
   reserving fdt memory region: addr=2200000 size=3ff000
   reserving fdt memory region: addr=0 size=30000
   reserving fdt memory region: addr=1f000 size=1000
   reserving fdt memory region: addr=1b00000 size=400000
   reserving fdt memory region: addr=1ffe000 size=4000
   reserving fdt memory region: addr=10000000 size=14000
   Using Device Tree in place at 0000000001f00000, end 0000000001f10bae
Bring UP slave CPUs

Starting Kernel ...

"Synchronous Abort" handler, esr 0x02000000
ELR:     292b40
LR:      280044
x0 : 0000000000a42080 x1 : 0000000000a420a0
x2 : 0000000000000000 x3 : 0000000000000000
x4 : 0000000000280000 x5 : 0000000001f0c000
x6 : 0000000001f00000 x7 : 0000000001f0bd29
x8 : 0000000001f000d8 x9 : 0000000001008000
x10: 000000000a200023 x11: 0000000000000002
x12: 0000000000000002 x13: 00000000000fec10
x14: 0000000001f0c000 x15: 00000000000228e4
x16: 0000000000022b8c x17: 25da6d11fa6fc887
x18: 000000007ff80ea8 x19: 0000000000000400
x20: 0000000000000400 x21: 0000000001f00000
x22: 0000000000000003 x23: 00000000000ffd50
x24: 0000000000000000 x25: 0000000000000000
x26: 0000000001400000 x27: 0000000000023df0
x28: 0000000000000000 x29: 00000000000ffba0

Resetting CPU ...

resetting ...
"Synchronous Abort" handler, esr 0x96000021
ELR:     233dc
LR:      24114
x0 : 00000000000000a5 x1 : 0000000000afa1c4
x2 : 0000000000afa1c4 x3 : 0000000000000001
x4 : 000000009801b50c x5 : ffffffff00000000
x6 : 000000000003b000 x7 : 000000000000000f
x8 : 0000000001f000d8 x9 : 0000000001008000
x10: 000000000a200023 x11: 0000000000000008
x12: 0000000000000002 x13: 00000000000fec10
x14: 0000000001f0c000 x15: 00000000000228e4
x16: 0000000000022b8c x17: 25da6d11fa6fc887
x18: 000000007ff80ea8 x19: 00000000000ffaa0
x20: 0000000000000400 x21: 0000000001f00000
x22: 0000000000000003 x23: 00000000000ffd50
x24: 0000000000000000 x25: 0000000000000000
x26: 0000000001400000 x27: 0000000000023df0
x28: 0000000000000000 x29: 00000000000ff950

Resetting CPU ...

resetting ...
"Synchronous Abort" handler, esr 0x96000021
ELR:     233dc
LR:      24114
x0 : 00000000000000a5 x1 : 00000000010a3f84
x2 : 00000000010a3f84 x3 : 0000000000000001
x4 : 000000009801b50c x5 : ffffffff00000000
x6 : 000000000003b000 x7 : 000000000000000f
x8 : 0000000001f000d8 x9 : 0000000001008000
x10: 000000000a200023 x11: 0000000000000008
x12: 0000000000000002 x13: 00000000000fec10
x14: 0000000001f0c000 x15: 00000000000228e4
x16: 0000000000022b8c x17: 25da6d11fa6fc887
x18: 000000007ff80ea8 x19: 00000000000ff850
x20: 0000000000000400 x21: 0000000001f00000
x22: 0000000000000003 x23: 00000000000ffd50
x24: 0000000000000000 x25: 0000000000000000
x26: 0000000001400000 x27: 0000000000023df0
x28: 0000000000000000 x29: 00000000000ff700

Resetting CPU ...

So sieht es aus, wenn ich:
- den Boot-Prozess abbreche
- über TFTP das zImage und rd.bin aus der akutellen DSM-Version (7.1.1) hochlade
- davon versuche zu booten

Code:
C1:80000000
C2
?
C3h
hwsetting size: 00000B94
C4
f
5-5
Goto FSBL: 0x10100000
<=============================================>
fsbl_main: sys_secure_type = 0x0000BEEE
fsbl_main: sys_boot_type = 0x00000001
fsbl_main: sys_boot_enc = 0x00000000
fsbl_main: sys_bisr_done = 0x00000000
sys_hwsetting_size:00000BC0
sys_bootcode_size:00062C80
sys_secure_fsbl_size:00010B00
sys_secure_os_size:00000000
sys_bl31_size:00000000
sys_rsa_key_fw_size:00000000
sys_rsa_key_tee_size:00000000
sys_rescue_size:00026388

HwSetting:
hwsetting_blk_no:88120800
hwsetting_total_size:00000C40
hwsetting_blk_count:00000C40

Bootcode:
bootcode_blk_no:88121440
bootcode_total_size:00062CA0
bootcode_blk_count:00062CA0

FSBL:
secure_fsbl_blk_no:881840E0
secure_fsbl_total_size:00010B20
secure_fsbl_blk_count:00010B20

TEE OS:
secure_os_blk_no:88194C00
secure_os_total_size:00000000
secure_os_blk_count:00000000

BL31:
bl31_blk_no:88194C00
bl31_total_size:00000000
bl31_blk_count:00000000

RSA Key Fw:
rsa_key_fw_blk_no:88194C00
rsa_key_fw_total_size:00000000
rsa_key_fw_blk_count:00000000

RSA Key TEE:
rsa_key_tee_blk_no:88194C00
rsa_key_tee_total_size:00000000
rsa_key_tee_blk_count:00000000

Rescue:
rescue_blk_no:88194C00
rescue_total_size:000263A8
rescue_blk_count:000263A8
********** FW_TYPE_BOOTCODE **********
fwInfo->fwType: 00000001
fwInfo->isGolden: 00000001
fwInfo->ddrReadAddr: 00520000
fwInfo->ddrDestAddr: 00020000
fwInfo->flashType: 00000001
fwInfo->flashUnitSize: 00000001
fwInfo->flashOffset: 88121440
fwInfo->dataSize: 00062CA0
body_size:00062C80
flash_unit_no:88121440
flash_unit_count:00062CA0
real_size:00062C68
sha256 Fw
j bootcode jump address:00020000
64b


U-Boot 2012.07-gcde0b30 (Oct 18 2018 - 14:09:16)

CPU  : Cortex-A53 quad core - AARCH32
Board: Realtek QA Board
DRAM:  2 GiB
Watchdog: Disabled
Cache: Enabled
Non-Cache Region: 1 MB@0x07900000
nor flash id [0x00c22017]
sector 256k en: 0
sector  64k en: 1
sector  32k en: 0
sector   4k en: 1
page_program  : 1
max capacity  : 0x00800000
spi type name : MX 64Mbit
Factory: NOR
Factory: pp:0, seq#:0x3, size:0x2400
------------can't find tmp/factory/000BootParam.h
In:    serial
Out:   serial
Err:   serial
RTK_set_power_saving_config:Default POWERE_ON_S5 not set

Synology Model: DS218

SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
Net:   Realtek PCIe GBE Family Controller mcfg = 0024
dev->name=r8168#0
*** Reboot-Action invalid ***
Hit Esc or Tab key to enter console mode or rescue linux:  0
------------can't find tmp/factory/recovery

Press Space Key

Start Boot Setup ...
Start Audio Firmware ...
[Skip A] boot manual mode
[Skip K] boot manual mode (execute "go all")
Enter console mode, disable watchdog ...

Realtek> help
b2ndbc  - load 2nd stage bootcode
bdinfo  - print Board Info structure
bootm   - boot application image from memory
bootr   - boot realtek platform
crc32   - checksum calculation
date    - get/set/reset date & time
dcache  - enable or disable data cache
env     - environment handling commands
factory - FACTORY sub system
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls   - list files in a directory (default /)
fatwrite- write file into a dos filesystem
fdt     - flattened device tree utility commands
gettime - get timer val elapsed
go      - start application at address 'addr' or start running fw
goru    - start rescue linux from usb
gpt     - GUID Partition Table
help    - print command description/usage
i2c     - I2C sub-system
icache  - enable or disable instruction cache
keyset  - keyset - write keyset file into factory area
loady   - load binary file over serial line (ymodem mode)
lzmadec - lzma Decompress from mem to mem
md      - memory display
mtest   - simple RAM read/write test
mtest2  - simple RAM read/write test
mw      - memory write (fill)
ping    - send ICMP ECHO_REQUEST to network host
pmic    - GMT-G2227 PMIC commands
pwm     - Control PWM 0,1,2,3
reset   - Perform RESET of the CPU
rtkrng  - rng utility
rtkspi  - spi flash utility
run     - run commands in an environment variable
saveenv - save environment variables to persistent storage
source  - run script from memory
syno_pwoff- bring the system down

tftp    - download image from TFTP server
tftpput - TFTP put command, for uploading files to a server
uart_write- for uart mp tool burn mac and sn key

unzip   - unzip a memory region
usb     - USB sub-system
Realtek> tftp 0x1000000 zImage
TFTP from server 192.168.188.21; our IP address is 192.168.188.15
Filename 'zImage'.
Load address: 0x1000000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ############################
done
Bytes transferred = 2970850 (2d54e2 hex)
Realt
Realtek> tftp 0x2000000 rd.bin
TFTP from server 192.168.188.21; our IP address is 192.168.188.15
Filename 'rd.bin'.
Load address: 0x2000000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ########
done
Bytes transferred = 4190208 (3ff000 hex)
Realtek> bootm 1000000 2000000
Wrong Image Format for bootm command
ERROR: can't get kernel image!
Realtek> bootm 0x1000000 0x2000000
Wrong Image Format for bootm command

Vielen Dank schonmal für eure Hilfe,
Grüße

Rouven
 

rouven97

Benutzer
Mitglied seit
23. Dez 2022
Beiträge
5
Punkte für Reaktionen
0
Punkte
1
Hey @radium
Ich habe die Adressen angepasst, die Datei "rd.bin" in "rd.bin.gz" gepackt und umbenannt in "rd.gz".
Leider mit dem gleichen Ergebnis:
Code:
C1:80000000
C2
?
C3h
hwsetting size: 00000B94
C4
f
5-5
Goto FSBL: 0x10100000
<=============================================>
fsbl_main: sys_secure_type = 0x0000BEEE
fsbl_main: sys_boot_type = 0x00000001
fsbl_main: sys_boot_enc = 0x00000000
fsbl_main: sys_bisr_done = 0x00000000
sys_hwsetting_size:00000BC0
sys_bootcode_size:00062C80
sys_secure_fsbl_size:00010B00
sys_secure_os_size:00000000
sys_bl31_size:00000000
sys_rsa_key_fw_size:00000000
sys_rsa_key_tee_size:00000000
sys_rescue_size:00026388

HwSetting:
hwsetting_blk_no:88120800
hwsetting_total_size:00000C40
hwsetting_blk_count:00000C40

Bootcode:
bootcode_blk_no:88121440
bootcode_total_size:00062CA0
bootcode_blk_count:00062CA0

FSBL:
secure_fsbl_blk_no:881840E0
secure_fsbl_total_size:00010B20
secure_fsbl_blk_count:00010B20

TEE OS:
secure_os_blk_no:88194C00
secure_os_total_size:00000000
secure_os_blk_count:00000000

BL31:
bl31_blk_no:88194C00
bl31_total_size:00000000
bl31_blk_count:00000000

RSA Key Fw:
rsa_key_fw_blk_no:88194C00
rsa_key_fw_total_size:00000000
rsa_key_fw_blk_count:00000000

RSA Key TEE:
rsa_key_tee_blk_no:88194C00
rsa_key_tee_total_size:00000000
rsa_key_tee_blk_count:00000000

Rescue:
rescue_blk_no:88194C00
rescue_total_size:000263A8
rescue_blk_count:000263A8
********** FW_TYPE_BOOTCODE **********
fwInfo->fwType: 00000001
fwInfo->isGolden: 00000001
fwInfo->ddrReadAddr: 00520000
fwInfo->ddrDestAddr: 00020000
fwInfo->flashType: 00000001
fwInfo->flashUnitSize: 00000001
fwInfo->flashOffset: 88121440
fwInfo->dataSize: 00062CA0
body_size:00062C80
flash_unit_no:88121440
flash_unit_count:00062CA0
real_size:00062C68
sha256 Fw
j bootcode jump address:00020000
64b


U-Boot 2012.07-gcde0b30 (Oct 18 2018 - 14:09:16)

CPU  : Cortex-A53 quad core - AARCH32
Board: Realtek QA Board
DRAM:  2 GiB
Watchdog: Disabled
Cache: Enabled
Non-Cache Region: 1 MB@0x07900000
nor flash id [0x00c22017]
sector 256k en: 0
sector  64k en: 1
sector  32k en: 0
sector   4k en: 1
page_program  : 1
max capacity  : 0x00800000
spi type name : MX 64Mbit
Factory: NOR
Factory: pp:0, seq#:0x3, size:0x2400
------------can't find tmp/factory/000BootParam.h
In:    serial
Out:   serial
Err:   serial
RTK_set_power_saving_config:Default POWERE_ON_S5 not set

Synology Model: DS218

SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
SYNO_CTRL_FAN_PERSISTER Pin not implement
Net:   Realtek PCIe GBE Family Controller mcfg = 0024
dev->name=r8168#0
*** Reboot-Action invalid ***
Hit Esc or Tab key to enter console mode or rescue linux:  0
------------can't find tmp/factory/recovery

Press Space Key

Start Boot Setup ...
Start Audio Firmware ...
[Skip A] boot manual mode
[Skip K] boot manual mode (execute "go all")
Enter console mode, disable watchdog ...

Realtek> tftp 0x00100000 zImage
TFTP from server 192.168.188.21; our IP address is 192.168.188.15
Filename 'zImage'.
Load address: 0x100000
Loading: #################################################################
         #################################################################
         #################################################################
         #########################T ########################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ############################
done
Bytes transferred = 2970850 (2d54e2 hex)
Realtek> tftp 0x003F0000 rd.bin
TFTP from server 192.168.188.21; our IP address is 192.168.188.15
Filename 'rd.bin'.
Load address: 0x3f0000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ############T #####################################################
         #################################################################
         #################################################################
         ###########################T ######################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ########
done
Bytes transferred = 4190208 (3ff000 hex)
Realtek> bootm 0x00100000 0x003F0000
Wrong Image Format for bootm command
ERROR: can't get kernel image!
Realtek> tftp 0x003F0000 rd.gz
TFTP from server 192.168.188.21; our IP address is 192.168.188.15
Filename 'rd.gz'.
Load address: 0x3f0000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ######################################T ###########################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ##############################################################
done
Bytes transferred = 3885492 (3b49b4 hex)
Realtek> bootm 0x00100000 0x003F0000
Wrong Image Format for bootm command
ERROR: can't get kernel image!
Realtek> bootm 00100000 003F0000
Wrong Image Format for bootm command
ERROR: can't get kernel image!

Woran könnte es dann liegen?

Grüße
Rouven
 

Kurt-oe1kyw

Benutzer
Sehr erfahren
Mitglied seit
10. Mai 2015
Beiträge
9.139
Punkte für Reaktionen
1.799
Punkte
314

rouven97

Benutzer
Mitglied seit
23. Dez 2022
Beiträge
5
Punkte für Reaktionen
0
Punkte
1
Hallo nochmal,
ich würde mich riesig freuen, wenn noch jemand eine Idee hat. Ich tappe da echt im Dunkeln. Zu der DS218 finde ich nicht mehr im Internet/ Forum, als ich schon probiert habe. Speicher entfernen und neu flashen würde ich nicht wagen, mangels Erfahrung.

@TN-Notebooks und @goetz konnten schon häufig helfen, wie ich gesehen habe.

Wenn keiner weiter weiß, dann muss ich das ganze wohl leider aufgeben. Schade drum, aber dann kann man ja nichts machen.

Grüße Rouven
 

TN-Notebooks

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
30. Mai 2019
Beiträge
278
Punkte für Reaktionen
264
Punkte
113
Hallo

man kann prinzipiell mit 2 Varianten arbeiten.
1. Bios chip auslöten , auslesen wegen serial , mac und checksummen,
Ein Spenderfile mit den Daten modifizieren und chip wieder einlöten.
Das hat gute Erfolschancen.
oder sofern man über Terminal noch zugriff hat könnte man so etwas ggf Probieren.
Stammt eigentlich aus einer Downgrade Anleitung

es geht darum diese Files
checksum.syno
grub_cksum.syno
rd.gz
zImage
neu zu schreiben wenn der Bootloader noch ok ist.

Ich hoffe das gibt der die ein oder andere Idee oder einen Ansatz denn wie beschrieben kann man die Station ja nicht mehr booten.
Evtl die Daten auf einen USB Stick und diesen dann mounten

Aber Vorsicht ..... du kannst dir das Gerät dabei vollständig ins nirvana schießen - dann hilf nur noch die Version Spenderfile.
Für die DS218 habe ich Files


some times this works

https://www.reddit.com/r/synology/comments/64eu39/downgrading_synology_dsm_61_to_52_and_then_to_602/

if not use this way --- tested and works

https://www.youtube.com/watch?v=DFtOmEv63n4

https://www.synology.com/en-global/support/download/DS1813+?version=5.2#system
https://www.synology.com/en-us/support/download/DS1813+?version=5.2#system

to downgrade :

Boot device
create a folder named "test" on Volume1

download the DSM 5.2_5644 PAT from Synology Download
make a copy of the file and rename it to DSM_DS1813+_5644.tar
unpack this file with Win RAR
extract the files :
checksum.syno
grub_cksum.syno
rd.gz
zImage

copy them to the "test" folder on the synology

Telnet or terminal log in as admin or root

DS1813 login:
Password:
-- ich: /var/services/homes/ich: change directory failed: No such file or directory
Logging in with home = "/".
ich@DS1813:/$ sudo su

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.

Password:
ash-4.3# cd /dev
ash-4.3# ls

ash-4.3# mkdir /mnt/synoboot
ash-4.3# mount synoboot2 /mnt/synoboot
[ 2902.820192] FAT-fs (synoboot2): FAT: nls_disk load default table
[ 2902.820192]
[ 2902.830447] FAT-fs (synoboot2): FAT: nls_io load default table
[ 2902.830447]
ash-4.3# cd /mnt/synoboot
ash-4.3# ls
checksum.syno DONE.fd grub_cksum.syno rd.gz vender zImage

ash-4.3# cp /volume1/test/checksum.syno /mnt/synoboot
ash-4.3# cp /volume1/test/grub_cksum.syno /mnt/synoboot
ash-4.3# cp /volume1/test/rd.gz /mnt/synoboot
ash-4.3# cp /volume1/test/zImage /mnt/synoboot

shut down Unit

!!!! remove HDD and delete all Partitions !!!!!

maybe you can also try a double reset - not tested yet


reinstall Hdd and boot Station - in SA you see DSM 5.2 version 5644 not installed

select Manual during installation and search for DSM_DS1813+_5644.pat
and click install
ready
 
  • Like
Reaktionen: peterhoffmann

TN-Notebooks

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
30. Mai 2019
Beiträge
278
Punkte für Reaktionen
264
Punkte
113
Hallo

das war Ray in den USA - ein Bekannter von mir der dort geholfen hat. Das 218 Test und BIOS File stammt von mir. Repariert wurde aber eine 418.
Das Schreiben des Files war sehr umständlich. Man kann das auch auf einem Hex editor auf einem Windows Rechner machen.
Die Berechnungen der Check Summen für die Serial und Mac Adressen ist allerdings aufwendig. Ich habe mir dazu einen Calculator erstellt.

Die benötigten Files kann man nicht aus einer DSM7 Pat extrahieren - es hat bisher niemand herausgefunden wie diese extrahiert wird.
Also Files aus einer DSM6 Pat verwenden.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat