Nand Grösse bei Spark-7111
Verfasst: Mo 11. Sep 2017, 14:06
Nach der 'regen' Diskussion im mChat über die Veränderung der NAND mtd´s, habe ich mir diverse Sachen mal angeschaut.
Ich bin der Meinung, dass die 'size' bei 'E2 RootFs' falsch war / ist .
Thomas hat mir vor einiger Zeit das mal zur Verfügung gestellt :
Das enspricht dem 'alten' Board Setup ( hier nur der NAND ab mtd3 ):
Das 'neue' Board Setup teilt einfach nur den 'E2 RootFs' in 2 gleiche Teile auf, und es gibt einen weiteren mtd: 'NAND DATA'
Wobei in Summe: .size = 0x5000000, entspricht: 83.886.080 Bytes mir zu wenig erscheint, immerhin hat die Box ja 512 MB Nand-Flash + 8 MB NOR-Flash ( lt. diverser Beschreibungen )
Als Vergleich der Board Setup Patch von E2 ( hier nur E2 RootFs ):
Diese Grösse : .size = 0x7700000, entspricht: 124.780.544 Bytes erscheint mit plausibler für den mtd.
Vorschlag von meiner Seite, die Grössen von E2 RootFs und NAND DATA wie folgend anzupassen:
Hier ein Patch dazu der den Board Setup Patch passend ändert :
Ich habe ja keine Spark-7111 um das selber zu testen, ich gehe aber davon aus das es klappt. 
Dann hat Thomas die 80 MB wieder für den 'E2 Root Fs' mit denen er seit Monaten die Spark baut.
Und die verlorenen / vergessenen 39 MB stehen als 'NAND DATA' zur Verfügung. ( die wohl keiner vermisst hat bis dato
)
Noch ein Hinweis der meine Theorie stützt.
Hier ein Screenshot von jemand, der mit dem yocto-bs Neutrino für ein Spark-7111 Modell gebaut hat: Die rootfs Grösse sowie die RAM Total ( dazu sag ich besser nichts
) lassen darauf schliessen, dass der Board Setup Patch von E2 verwendet wurde.
Ich bin der Meinung, dass die 'size' bei 'E2 RootFs' falsch war / ist .
Thomas hat mir vor einiger Zeit das mal zur Verfügung gestellt :
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"
Code: Alles auswählen
+ {
+ .name = "Spark Kernel",
+ .size = 0x0800000,
+ .offset = 0
+ }, {
+ .name = "Spark Rootfs",
+ .size = 0x17800000,
+ .offset = 0x800000
+ }, {
+ .name = "E2 Kernel",
+ .size = 0x800000,
+ .offset = 0x18000000
+ }, {
+ .name = "E2 RootFs",
+ .size = 0x5000000,
+ .offset = 0x18800000
+ },
Code: Alles auswählen
+ {
+ .name = "Spark Kernel",
+ .offset = 0,
+ .size = 0x0800000 //8M
+ }, {
+ .name = "Spark Userfs",
+ .offset = 0x800000,
+ .size = 0x17800000 //376M
+ }, {
+ .name = "E2 kernel",
+ .offset = 0x18000000,
+ .size = 0x00800000 //8M
+ }, {
+ .name = "E2 Userfs",
+ .offset = 0x18800000,
+ .size = 0x02800000 //40M
+ }, {
+ .name = "NAND DATA",
+ .offset = 0x1B000000,
+ .size = 0x02800000 //40M
+ },
Als Vergleich der Board Setup Patch von E2 ( hier nur E2 RootFs ):
Code: Alles auswählen
+ }, {
+ .name = "E2 RootFs",
+ .size = 0x7700000,
+ .offset = 0x18800000
+ },
Diese Grösse : .size = 0x7700000, entspricht: 124.780.544 Bytes erscheint mit plausibler für den mtd.
Vorschlag von meiner Seite, die Grössen von E2 RootFs und NAND DATA wie folgend anzupassen:
Code: Alles auswählen
+ .name = "E2 Userfs",
+ .offset = 0x18800000,
+ .size = 0x05000000 //80M
+ }, {
+ .name = "NAND DATA",
+ .offset = 0x1D800000,
+ .size = 0x02700000 //39M

Dann hat Thomas die 80 MB wieder für den 'E2 Root Fs' mit denen er seit Monaten die Spark baut.
Und die verlorenen / vergessenen 39 MB stehen als 'NAND DATA' zur Verfügung. ( die wohl keiner vermisst hat bis dato

Noch ein Hinweis der meine Theorie stützt.
Hier ein Screenshot von jemand, der mit dem yocto-bs Neutrino für ein Spark-7111 Modell gebaut hat: Die rootfs Grösse sowie die RAM Total ( dazu sag ich besser nichts
