main: Added support for initfs version string (param -T)

This commit is contained in:
Pali Rohár committed 2012-11-24 01:04:02 +01:00
1 parent 51072eb40a
commit 8c624670cc
1 file changed
+19 -3
+19 -3
View File
@@ -68,6 +68,7 @@ static void show_usage(void) {
" -H rev change HW revision\n" " -H rev change HW revision\n"
" -N ver change NOLO version string\n" " -N ver change NOLO version string\n"
" -K ver change kernel version string\n" " -K ver change kernel version string\n"
" -T ver change initfs version string\n"
" -S ver change SW release version string\n" " -S ver change SW release version string\n"
" -C ver change content eMMC version string\n" " -C ver change content eMMC version string\n"
"\n" "\n"
@@ -296,7 +297,7 @@ int main(int argc, char **argv) {
const char * optstring = ":" const char * optstring = ":"
"b:rlfcx:E:e:" "b:rlfcx:E:e:"
"ID:U:R:F:H:K:N:S:C:" "ID:U:R:F:H:K:T:N:S:C:"
"M:m:" "M:m:"
"t:d:w:" "t:d:w:"
"u:g:" "u:g:"
@@ -339,6 +340,8 @@ int main(int argc, char **argv) {
char * set_hw_arg = NULL; char * set_hw_arg = NULL;
int set_kernel = 0; int set_kernel = 0;
char * set_kernel_arg = NULL; char * set_kernel_arg = NULL;
int set_initfs = 0;
char * set_initfs_arg = NULL;
int set_nolo = 0; int set_nolo = 0;
char * set_nolo_arg = NULL; char * set_nolo_arg = NULL;
int set_sw = 0; int set_sw = 0;
@@ -501,6 +504,10 @@ int main(int argc, char **argv) {
set_kernel = 1; set_kernel = 1;
set_kernel_arg = optarg; set_kernel_arg = optarg;
break; break;
case 'T':
set_initfs = 1;
set_initfs_arg = optarg;
break;
case 'N': case 'N':
set_nolo = 1; set_nolo = 1;
set_nolo_arg = optarg; set_nolo_arg = optarg;
@@ -582,14 +589,14 @@ int main(int argc, char **argv) {
} }
if ( dev_boot || dev_reboot || dev_load || dev_flash || dev_cold_flash || dev_ident || dev_check || dev_dump_fiasco || dev_dump if ( dev_boot || dev_reboot || dev_load || dev_flash || dev_cold_flash || dev_ident || dev_check || dev_dump_fiasco || dev_dump
|| set_root || set_usb || set_rd || set_rd_flags || set_hw || set_kernel || set_nolo || set_sw || set_emmc ) || set_root || set_usb || set_rd || set_rd_flags || set_hw || set_kernel || set_initfs || set_nolo || set_sw || set_emmc )
do_device = 1; do_device = 1;
if ( dev_boot || dev_load || dev_cold_flash ) if ( dev_boot || dev_load || dev_cold_flash )
do_something = 1; do_something = 1;
if ( dev_check || dev_dump_fiasco || dev_dump ) if ( dev_check || dev_dump_fiasco || dev_dump )
do_something = 1; do_something = 1;
if ( dev_flash || dev_reboot || dev_ident || set_root || set_usb || set_rd || set_rd_flags || set_hw || set_kernel || set_nolo || set_sw || set_emmc ) if ( dev_flash || dev_reboot || dev_ident || set_root || set_usb || set_rd || set_rd_flags || set_hw || set_kernel || set_initfs || set_nolo || set_sw || set_emmc )
do_something = 1; do_something = 1;
if ( fiasco_un || fiasco_gen || image_ident ) if ( fiasco_un || fiasco_gen || image_ident )
do_something = 1; do_something = 1;
@@ -907,6 +914,10 @@ int main(int argc, char **argv) {
dev_get_kernel_ver(dev, buf, sizeof(buf)); dev_get_kernel_ver(dev, buf, sizeof(buf));
printf("Kernel version: %s\n", buf[0] ? buf : "(not detected)"); printf("Kernel version: %s\n", buf[0] ? buf : "(not detected)");
buf[0] = 0;
dev_get_initfs_ver(dev, buf, sizeof(buf));
printf("Initfs version: %s\n", buf[0] ? buf : "(not detected)");
buf[0] = 0; buf[0] = 0;
dev_get_sw_ver(dev, buf, sizeof(buf)); dev_get_sw_ver(dev, buf, sizeof(buf));
printf("Software release version: %s\n", buf[0] ? buf : "(not detected)"); printf("Software release version: %s\n", buf[0] ? buf : "(not detected)");
@@ -1103,6 +1114,11 @@ int main(int argc, char **argv) {
if ( ret == -EAGAIN ) if ( ret == -EAGAIN )
goto again; goto again;
if ( set_initfs )
ret = dev_set_initfs_ver(dev, set_initfs_arg);
if ( ret == -EAGAIN )
goto again;
if ( set_sw ) if ( set_sw )
ret = dev_set_sw_ver(dev, set_sw_arg); ret = dev_set_sw_ver(dev, set_sw_arg);
if ( ret == -EAGAIN ) if ( ret == -EAGAIN )