777L @ 18.09.2014, 12:25
Имхо,нужно найти способ распаковки - запаковки прошивки. Вот статейка про adsl 831 - там человек просто написал компилятор- декомпилятор
http://robocraft.ru/blog/electronics/410.html . Мне знаний не хватает такое сделать.
Не поверишь - сейчас у меня ровно это устройство на столе и ровно это статью я курю (пока читаю про то что такое JTAG в контексте моего заbricked F660).
Но курю я ее в другом направлении:
- там CFE же почти такой же
- из него я [почти] сделал то что хотел сделать с F660: взял ядро из OpenWRT и грузанул на ZTE831 [по tftp/с консольным кабелем]. Который разумеется нифига не supported, проц такой (BCM6338) оно знает, но сначала ругалось на Unknown Board.
Ха, щаз. Его CFE умеет менять ID board на некоторый список prefedined, что-то там с цифирками и буовками SV сзади кажется выставил, и, поскольку Linux у нас open source ;-) (а собирать toolchain и потом честно пересобирать ядро мне было лень) я нагло патчанул бинарь ядра linux из OpenWRT (почитав в исходниках какие они вообще там бывают и какую строчку патчить удобнее ;-) )
- и ядро загрузилось! Разумеется оно ругнулось на файловую систему и разбивку mtd блоков и висануло, соответственно, что и ожидалось.
Как бы я сделал бы это на F660 - щастье было бы почти достижимо, но, сцука CFE Boot не дает ему подсовывать kernel parameters. Ни в env прописать, ни даже temporary. Ибо тогда [ну ладно, попрево'й] грузанул бы я ядро с tftp, а рутом подсунул бы ему /dev/sda, то есть флешку.
Короче, дефальтовую командную строчку надо писать в ядро при сборке. С 831 пришлось тащить все дерево OpenWRT, сейчас компилится, сначала пусть нарожает че-та, а потом буду кастомный кернел генерить. В контексте F660 хоть руку набью на этом деле.