Spark-7111 vom Stick flashen und NAND DATA erhalten

Antworten
Benutzeravatar
DboxOldie
Co-Admin
Co-Admin
Beiträge: 5421
Registriert: Sa 6. Aug 2011, 15:21
Hat sich bedankt: 79 Mal
Danksagung erhalten: 295 Mal

Spark-7111 vom Stick flashen und NAND DATA erhalten

#1

Beitrag von DboxOldie »

Vorweg :
Ich habe keine Box aus dieser Modellreihe, aber vieles ist ähnlich den 7162 Modellen.
Der E2 RootFs Bereich ist nun, wenn man aus dem DDT-Git baut nun auch augeteilt im Verhältnis 80 MB RootFS und 39 MB NAND DATA.
Das stellt sich nun so dar.
Alter Zustand:

Code: Alles auswählen

spark:~# cat /proc/mtd
dev: size erasesize name
mtd0: 00080000 00010000 "Boot firmware"
mtd1: 00700000 00010000 "Kernel"
mtd2: 00080000 00010000 "Reserve"
mtd3: 00800000 00020000 "Spark Kernel"
mtd4: 17800000 00020000 "Spark Rootfs"
mtd5: 00800000 00020000 "E2 Kernel"
mtd6: 07700000 00020000 "E2 RootFs"
spark:~#
Aktueller Zustand:

Code: Alles auswählen

spark:~# cat /proc/mtd
dev: size erasesize name
mtd0: 00080000 00010000 "Boot firmware"
mtd1: 00700000 00010000 "Kernel"
mtd2: 00080000 00010000 "Reserve"
mtd3: 00800000 00020000 "Spark Kernel"
mtd4: 17800000 00020000 "Spark Rootfs"
mtd5: 00800000 00020000 "E2 Kernel"
mtd6: 05000000 00020000 "E2 RootFs"
mtd7: 02700000 00020000 "NAND DATA"
spark:~#
Wenn man ausschliesslich Image mit NAND Data verwendet ist es natürlich ärgerlich, wenn man mal per USB-Stick flashen muss und der NAND Data dadurch gelöscht wird.
Mit einer Bootarg Änderung, ählich wie bei den 7162 Modellen, sollte man das ändern können.
Man kann auch hier das Tool ( im Image enthalten ) fw_printenv / fw_setenv benutzen.
Bei diesen Modellen muss im Gegensatz zu den 7162ern KEIN extra Modul geladen werden > das Tool funktioniert direkt.
Aber auch mal in dem Thema lesen : Nutzung von fw_printenv und fw_setenv bei spark7162 Boxen
Es gelten auch hier die Hinweise zur Vorsicht usw.
Man kann auch den Bootvorgang unterbrechen und per serieller Verbindung die Bootargs direkt in der U-Boot Konsole ändern.

Hier beschreibe ich das Ändern per Telnet mit den o.g. Tool.

Die fw_env.config ist mit richtigem Offset im Image enthalten.
Also einfach mal im Telnet : fw_printenv
Dann sollten alle Bootargs aufgelistet werden in der Form:

Code: Alles auswählen

bootdelay=3
baudrate=115200
board=mb618
monitor_base=0xA0000000
monitor_len=0x00080000
monitor_sec=0xa0000000 0xa007ffff
load_addr=0x80000000
unprot=protect off $monitor_sec
update=protect off $monitor_sec;erase $monitor_sec;cp.b $load_addr $monitor_base $monitor_len;protect on $monitor_sec
HOSTNAME=LINUX7109
ethaddr=00:80:E1:12:06:38
ipaddr=192.168.40.63
netmask=255.255.255.0
gatewayip=192.168.3.1
serverip=192.168.40.19
kernel_base_spark= 0xa0080000
kernel_base_enigma2=0x18000000
kernel_sec= a0080000 a077ffff
kernel_len= 0x00700000
...
...
usw. es sind noch einige Zeilen mehr
Es kommt auf diese beiden Args an die die Länge enthalten für den Flash Löschvorgang, der vor dem Flash Beschreiben ausgeführt wird:

Code: Alles auswählen

userfs_len_enigma2=7700000
userfs_len=7700000
Die einfach ändern auf die Neue Länge des RootFs:
(Die Kommandos sind zum direkten zeilenweisen rein kopieren in das Telnetfenster gedacht)

Code: Alles auswählen

fw_setenv userfs_len_enigma2 '5000000'
fw_setenv userfs_len '5000000'
Damit ist das per Telnet schon erledigt.
Zur Kontrolle dann mit : fw_printenv mal anschauen

Analog dazu, wer es per U-Boot Konsole mit serieller Verbindung ändern will:

Code: Alles auswählen

set userfs_len_enigma2 '5000000'
set userfs_len '5000000'
Danach noch : save dann werden die neuen Werte dauerhaft gespeichert.
Hier zu Kontrolle mit : print mal anzeigen lassen.

Soweit die Theorie, da ich es selber nicht probieren kann.
Da es bei den 7162er Modellen ähnlich funktioniert hat, warum nicht auch hier.
Im schlimmsten Fall nimmt der U-Boot die Args von intern :
In seinem Code sind alle Bootargs nochmal aus Sicherheitsgründen enthalten,
falls die Bootarg Sektoren im Flash mal gelöscht werden.
Dann wird eben der komplette RootFs, wie ohne Änderung auch, vor dem Flashen gelöscht. :wink:
Folgende Benutzer bedankten sich beim Autor DboxOldie für den Beitrag:
BPanther (So 17. Dez 2017, 06:44)
Bewertung: 7.69%
MfG DboxOldie

KEIN SUPPORT PER PN > Bitte das Forum benutzen und ins Wiki schauen

Bild
Benutzeravatar
DboxOldie
Co-Admin
Co-Admin
Beiträge: 5421
Registriert: Sa 6. Aug 2011, 15:21
Hat sich bedankt: 79 Mal
Danksagung erhalten: 295 Mal

Re: Spark-7111 vom Stick flashen und NAND DATA erhalten

#2

Beitrag von DboxOldie »

Ich habe gerade eine Rückmeldung bekommen zu dem Thema.

Es hat jemand die Bootargs geändert so wie oben beschrieben.
Der fw_printenv Auszug sieht am Ende so aus:

Code: Alles auswählen

...
stdin=serial
stdout=serial
stderr=serial
filesize=14E0000
fuseburned=true
userfs_len=5000000
userfs_len_enigma2=5000000
spark:~#
Das Flashen hat funktioniert, der NAND DATA ist erhalten geblieben. :)
Folgende Benutzer bedankten sich beim Autor DboxOldie für den Beitrag:
BPanther (So 17. Dez 2017, 06:43)
Bewertung: 7.69%
MfG DboxOldie

KEIN SUPPORT PER PN > Bitte das Forum benutzen und ins Wiki schauen

Bild
Antworten

Zurück zu „Allgemeines/Anleitungen/FAQ“