Меняй рег, не жалей. Он свое отработал, проблема со встроенной памятью. Постоянный нагрев и отслоение *флешки* сделали свое делоpvb писал(а): ↑09 июн 2025, 13:05Update! Похоже "цыган умирает" - после очередного рестарта сбросился в заводские настройки и не запоминает изменений. Куда ни тычь - всё принимает, выходишь в меню, входишь снова, а там всё в дефолтах. Даже айпи поменять не могу.
Это что, раздел покосило с конфигом?
П.С.на пробу перезалил с флэшки последним Jufeng-ом по ссылке на сайте в табличке. Перезалилось, работает, конфиг не сохраняет.
XM Самопроизвольное изменение настроек рега
- AlexLider
- Специалист
- Сообщения: 1215
- Зарегистрирован: 01 авг 2016, 01:11
- Откуда: Россия, Пермь
- Контактная информация:
Re: XM Самопроизвольное изменение настроек рега
Re: XM Самопроизвольное изменение настроек рега
Некрофилия победила! Позанимался вчера с "телом":
нашёл причину несохранения настроек - бэды на NAND как раз в области MTD
fastboot# nand read 0x2000000 0 0x8000000
NAND read: device 0 whole chip
pure data length is 134217728, len_incl_bad is 134217728
Skip bad block 0x03700000
Skip bad block 0x03720000
Skip bad block 0x03740000
Skip bad block 0x03760000
Skip bad block 0x03780000
Skip bad block 0x037a0000
Skip bad block 0x037c0000
Skip bad block 0x037e0000
Skip bad block 0x03800000
Skip bad block 0x03820000
Skip bad block 0x03840000
Skip bad block 0x03860000
Skip bad block 0x03880000
Skip bad block 0x038a0000
Skip bad block 0x038c0000
Skip bad block 0x038e0000
Skip bad block 0x03900000
Skip bad block 0x03920000
Skip bad block 0x03940000
Skip bad block 0x03960000
Skip bad block 0x03980000
Skip bad block 0x039a0000
Skip bad block 0x039c0000
Skip bad block 0x039e0000
Skip bad block 0x03a00000
Skip bad block 0x03a20000
Skip bad block 0x03a40000
Skip bad block 0x03a60000
Skip bad block 0x03a80000
Skip bad block 0x03aa0000
Skip bad block 0x03ac0000
Skip bad block 0x03ae0000
Skip bad block 0x03b00000
Skip bad block 0x03b20000
Skip bad block 0x03b60000
Skip bad block 0x03b80000
Skip bad block 0x03ba0000
Skip bad block 0x03bc0000
Skip bad block 0x03be0000
Skip bad block 0x03c00000
Skip bad block 0x03c20000
Skip bad block 0x03c40000
Skip bad block 0x03c60000
Skip bad block 0x03c80000
Skip bad block 0x03ca0000
Skip bad block 0x03cc0000
Skip bad block 0x03ce0000
WARNING: Attempt read beyond end of device. offset(0x0) + length(0x8000000) beyond flash size(0x8000000), truncated length(0x7a20000).
128057344 bytes read: OK
оно и понятно - частые обращения только в эту область, всё остальное вообще поди "ro"
сделал nand erase этой области, отработала с матерками про бэды
при запуске рега, в самом конце загрузки, ругается на невозможность создать каталог и файлы в /mnt/mtd/...
mkdir: can't create directory '/mnt/mtd/Config': Cannot allocate memory
mkdir: can't create directory '/mnt/mtd/Log': Cannot allocate memory
mkdir: can't create directory '/mnt/mtd/Config/': Cannot allocate memory
mkdir: can't create directory '/mnt/mtd/Config/': Cannot allocate memory
...
sed: /mnt/mtd/Config/HvrMode: No such file or directory
...
cp: can't create '/mnt/mtd/Config/ppp/3gdigal': No such file or directory
"на дуру" дописал в bootargs ещё один раздел MTD в самый конец, а старый переименовал из MTD в bad. На удивление, ядро это схавало, но также валит ошибками про невозможность работы с /mnt/mtd/...
Оригинал: bootargs=mem=512M console=ttyAMA0,115200 root=/dev/romblock1 rootfstype=squashfs mtdparts=hinand:3M(boot),20M(rootfs),20M(user),4M(web),6M(custom),2M(logo),6M(mtd),2M(baseparam),1M(startlogo) mmz=ddr,0,0,324M coherent_pool=2M
0x000000000000-0x000000300000 : "boot"
0x000000300000-0x000001700000 : "rootfs"
0x000001700000-0x000002b00000 : "user"
0x000002b00000-0x000002f00000 : "web"
0x000002f00000-0x000003500000 : "custom"
0x000003500000-0x000003700000 : "logo"
0x000003700000-0x000003d00000 : "mtd"
0x000003d00000-0x000003f00000 : "baseparam"
0x000003f00000-0x000004000000 : "startlogo"
Исправлен: bootargs=mem=512M console=ttyAMA0,115200 root=/dev/romblock1 rootfstype=squashfs mtdparts=hinand:3M(boot),20M(rootfs),20M(user),4M(web),6M(custom),2M(logo),6M(bad),2M(baseparam),1M(startlogo),6M(mtd) mmz=ddr,0,0,324M coherent_pool=2M
0x000000000000-0x000000300000 : "boot"
0x000000300000-0x000001700000 : "rootfs"
0x000001700000-0x000002b00000 : "user"
0x000002b00000-0x000002f00000 : "web"
0x000002f00000-0x000003500000 : "custom"
0x000003500000-0x000003700000 : "logo"
0x000003700000-0x000003d00000 : "bad"
0x000003d00000-0x000003f00000 : "baseparam"
0x000003f00000-0x000004000000 : "startlogo"
0x000004000000-0x000004600000 : "mtd"
попробовал залить в новый раздел копию старого из бэкапа - та же фигня. При тестовом считывании новой области и сравнении с бэкапом, nand read ошибок по бэдам не даёт, побайтовое сравнение файлов говорит об идентичности.
Засада в том, что нет бэкапа с живым разделом MTD - я сливал уже порченный бэдами.
Почему система не хочет пересоздать конфиг на новом месте? Или она хочет, но раздел почему-то заблокирован?
Может у кого-то появится мыслишка, куда копнуть?
П.С. обидно, ска, что NAND 128М, а разделы занимают всего 64!!! Полфлэшки никогда вообще не работало!
нашёл причину несохранения настроек - бэды на NAND как раз в области MTD
fastboot# nand read 0x2000000 0 0x8000000
NAND read: device 0 whole chip
pure data length is 134217728, len_incl_bad is 134217728
Skip bad block 0x03700000
Skip bad block 0x03720000
Skip bad block 0x03740000
Skip bad block 0x03760000
Skip bad block 0x03780000
Skip bad block 0x037a0000
Skip bad block 0x037c0000
Skip bad block 0x037e0000
Skip bad block 0x03800000
Skip bad block 0x03820000
Skip bad block 0x03840000
Skip bad block 0x03860000
Skip bad block 0x03880000
Skip bad block 0x038a0000
Skip bad block 0x038c0000
Skip bad block 0x038e0000
Skip bad block 0x03900000
Skip bad block 0x03920000
Skip bad block 0x03940000
Skip bad block 0x03960000
Skip bad block 0x03980000
Skip bad block 0x039a0000
Skip bad block 0x039c0000
Skip bad block 0x039e0000
Skip bad block 0x03a00000
Skip bad block 0x03a20000
Skip bad block 0x03a40000
Skip bad block 0x03a60000
Skip bad block 0x03a80000
Skip bad block 0x03aa0000
Skip bad block 0x03ac0000
Skip bad block 0x03ae0000
Skip bad block 0x03b00000
Skip bad block 0x03b20000
Skip bad block 0x03b60000
Skip bad block 0x03b80000
Skip bad block 0x03ba0000
Skip bad block 0x03bc0000
Skip bad block 0x03be0000
Skip bad block 0x03c00000
Skip bad block 0x03c20000
Skip bad block 0x03c40000
Skip bad block 0x03c60000
Skip bad block 0x03c80000
Skip bad block 0x03ca0000
Skip bad block 0x03cc0000
Skip bad block 0x03ce0000
WARNING: Attempt read beyond end of device. offset(0x0) + length(0x8000000) beyond flash size(0x8000000), truncated length(0x7a20000).
128057344 bytes read: OK
оно и понятно - частые обращения только в эту область, всё остальное вообще поди "ro"
сделал nand erase этой области, отработала с матерками про бэды
при запуске рега, в самом конце загрузки, ругается на невозможность создать каталог и файлы в /mnt/mtd/...
mkdir: can't create directory '/mnt/mtd/Config': Cannot allocate memory
mkdir: can't create directory '/mnt/mtd/Log': Cannot allocate memory
mkdir: can't create directory '/mnt/mtd/Config/': Cannot allocate memory
mkdir: can't create directory '/mnt/mtd/Config/': Cannot allocate memory
...
sed: /mnt/mtd/Config/HvrMode: No such file or directory
...
cp: can't create '/mnt/mtd/Config/ppp/3gdigal': No such file or directory
"на дуру" дописал в bootargs ещё один раздел MTD в самый конец, а старый переименовал из MTD в bad. На удивление, ядро это схавало, но также валит ошибками про невозможность работы с /mnt/mtd/...
Оригинал: bootargs=mem=512M console=ttyAMA0,115200 root=/dev/romblock1 rootfstype=squashfs mtdparts=hinand:3M(boot),20M(rootfs),20M(user),4M(web),6M(custom),2M(logo),6M(mtd),2M(baseparam),1M(startlogo) mmz=ddr,0,0,324M coherent_pool=2M
0x000000000000-0x000000300000 : "boot"
0x000000300000-0x000001700000 : "rootfs"
0x000001700000-0x000002b00000 : "user"
0x000002b00000-0x000002f00000 : "web"
0x000002f00000-0x000003500000 : "custom"
0x000003500000-0x000003700000 : "logo"
0x000003700000-0x000003d00000 : "mtd"
0x000003d00000-0x000003f00000 : "baseparam"
0x000003f00000-0x000004000000 : "startlogo"
Исправлен: bootargs=mem=512M console=ttyAMA0,115200 root=/dev/romblock1 rootfstype=squashfs mtdparts=hinand:3M(boot),20M(rootfs),20M(user),4M(web),6M(custom),2M(logo),6M(bad),2M(baseparam),1M(startlogo),6M(mtd) mmz=ddr,0,0,324M coherent_pool=2M
0x000000000000-0x000000300000 : "boot"
0x000000300000-0x000001700000 : "rootfs"
0x000001700000-0x000002b00000 : "user"
0x000002b00000-0x000002f00000 : "web"
0x000002f00000-0x000003500000 : "custom"
0x000003500000-0x000003700000 : "logo"
0x000003700000-0x000003d00000 : "bad"
0x000003d00000-0x000003f00000 : "baseparam"
0x000003f00000-0x000004000000 : "startlogo"
0x000004000000-0x000004600000 : "mtd"
попробовал залить в новый раздел копию старого из бэкапа - та же фигня. При тестовом считывании новой области и сравнении с бэкапом, nand read ошибок по бэдам не даёт, побайтовое сравнение файлов говорит об идентичности.
Засада в том, что нет бэкапа с живым разделом MTD - я сливал уже порченный бэдами.
Почему система не хочет пересоздать конфиг на новом месте? Или она хочет, но раздел почему-то заблокирован?
Может у кого-то появится мыслишка, куда копнуть?
П.С. обидно, ска, что NAND 128М, а разделы занимают всего 64!!! Полфлэшки никогда вообще не работало!
Re: XM Самопроизвольное изменение настроек рега
Пнуть бы чем-нибудь, чтоб в тот Линукс попасть командной строкой! Может там утилитки какие есть.....
Пока гуглил, находил по своей строчке "hi3798mdmo1f_hi3798mv100_ddr3_1gbyte_16bitx2_2layers_nand.reg" писанину с Хиковским (вроде) софтом и неким УСБ-загрузчиком. Но пока не погружался...
Напомню - моё поделие от ХМ NBD-8008.
Пока гуглил, находил по своей строчке "hi3798mdmo1f_hi3798mv100_ddr3_1gbyte_16bitx2_2layers_nand.reg" писанину с Хиковским (вроде) софтом и неким УСБ-загрузчиком. Но пока не погружался...
Напомню - моё поделие от ХМ NBD-8008.