|
|
@ -77,7 +77,7 @@ printf("\n Утилита предназначена для аварийной U
|
|
|
|
-p <tty> - последовательный порт для общения с загрузчиком (по умолчанию /dev/ttyUSB0\n\
|
|
|
|
-p <tty> - последовательный порт для общения с загрузчиком (по умолчанию /dev/ttyUSB0\n\
|
|
|
|
-m - вывести карту файла прошивки и завершить работу\n\
|
|
|
|
-m - вывести карту файла прошивки и завершить работу\n\
|
|
|
|
-e - разобрать файл прошивки на разделы и завершить работу\n\
|
|
|
|
-e - разобрать файл прошивки на разделы и завершить работу\n\
|
|
|
|
-r - перезагрузить модем после прошивки\n\
|
|
|
|
-r - выйти из режима прошивки и перезагрузить модем\n\
|
|
|
|
\n",argv[0]);
|
|
|
|
\n",argv[0]);
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
|
@ -103,6 +103,8 @@ printf("\n Утилита предназначена для аварийной U
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ((optind>=argc)&rflag) goto sio; // перезагрузка без указания файла
|
|
|
|
|
|
|
|
|
|
|
|
if (optind>=argc) {
|
|
|
|
if (optind>=argc) {
|
|
|
|
printf("\n - Не указано имя файла для загрузки\n");
|
|
|
|
printf("\n - Не указано имя файла для загрузки\n");
|
|
|
|
return;
|
|
|
|
return;
|
|
|
@ -175,6 +177,8 @@ printf("\n");
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sio:
|
|
|
|
|
|
|
|
|
|
|
|
// Настройка SIO
|
|
|
|
// Настройка SIO
|
|
|
|
|
|
|
|
|
|
|
|
if (!open_port(devname)) {
|
|
|
|
if (!open_port(devname)) {
|
|
|
@ -235,6 +239,7 @@ replybuf[3+i]=0;
|
|
|
|
printf("\n Версия протокола: %s",replybuf+3);
|
|
|
|
printf("\n Версия протокола: %s",replybuf+3);
|
|
|
|
printf("\n");
|
|
|
|
printf("\n");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ((optind>=argc)&rflag) goto reset; // перезагрузка без указания файла
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Главный цикл записи разделов
|
|
|
|
// Главный цикл записи разделов
|
|
|
@ -300,7 +305,10 @@ printf("\n");
|
|
|
|
|
|
|
|
|
|
|
|
port_timeout(1);
|
|
|
|
port_timeout(1);
|
|
|
|
// выходим из режима HDLC и перезагружаемся
|
|
|
|
// выходим из режима HDLC и перезагружаемся
|
|
|
|
|
|
|
|
reset:
|
|
|
|
|
|
|
|
|
|
|
|
if (rflag) {
|
|
|
|
if (rflag) {
|
|
|
|
|
|
|
|
printf("\n Перезарузка модема...\n");
|
|
|
|
send_cmd(cmd_reset,1,replybuf);
|
|
|
|
send_cmd(cmd_reset,1,replybuf);
|
|
|
|
write(siofd,resetcmd,strlen(resetcmd));
|
|
|
|
write(siofd,resetcmd,strlen(resetcmd));
|
|
|
|
}
|
|
|
|
}
|
|
|
|