summaryrefslogtreecommitdiff
path: root/polux/application/nvramutility/src/nvramutility.c
diff options
context:
space:
mode:
authorOlivier Dufour2013-02-20 14:54:32 +0100
committerOlivier Dufour2013-02-21 08:43:49 +0100
commitf37eeb21dbde84560ce256553d3ed2a59a657e05 (patch)
treec755bb43930f436d9860aa8d85e5f82d5cd1af9d /polux/application/nvramutility/src/nvramutility.c
parent174c6f37d9a671060981fdc77b8fafbc890a39e8 (diff)
polux/app/nvram: update SPC300 fields if they exist, refs #3786
Diffstat (limited to 'polux/application/nvramutility/src/nvramutility.c')
-rw-r--r--polux/application/nvramutility/src/nvramutility.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/polux/application/nvramutility/src/nvramutility.c b/polux/application/nvramutility/src/nvramutility.c
index 11167eed13..c664e4d1fa 100644
--- a/polux/application/nvramutility/src/nvramutility.c
+++ b/polux/application/nvramutility/src/nvramutility.c
@@ -208,6 +208,13 @@ main(int argc, char** argv)
printf("The mac address you provided is incorrect, abort\n");
return -1;
}
+#if defined (CONFIG_CHIP_FEATURE_EXTRA_NVRAM_FIELDS)
+ if (spidlib_mac_str_to_bin(argv[2], previous_nvram.plc_address))
+ {
+ printf("The mac address you provided is incorrect, abort\n");
+ return -1;
+ }
+#endif
}
else if (!strcmp(argv[1], "mac_eth"))
{
@@ -216,11 +223,22 @@ main(int argc, char** argv)
printf("The mac address you provided is incorrect, abort\n");
return -1;
}
+#if defined (CONFIG_CHIP_FEATURE_EXTRA_NVRAM_FIELDS)
+ if (spidlib_mac_str_to_bin(argv[2], previous_nvram.eth1_address))
+ {
+ printf("The mac address you provided is incorrect, abort\n");
+ return -1;
+ }
+#endif
}
else if (!strcmp(argv[1], "serial_number"))
{
strncpy(previous_nvram.serialNumber, argv[2], 63);
previous_nvram.serialNumber[63] = '\0';
+#if defined (CONFIG_CHIP_FEATURE_EXTRA_NVRAM_FIELDS)
+ strncpy(previous_nvram.serial_number, argv[2], 63);
+ previous_nvram.serial_number[63] = '\0';
+#endif
}
else if (!strcmp(argv[1], "board_number"))
{
@@ -246,6 +264,10 @@ main(int argc, char** argv)
{
strncpy(previous_nvram.sysDescr, argv[2], 255);
previous_nvram.sysDescr[255] = '\0';
+#if defined (CONFIG_CHIP_FEATURE_EXTRA_NVRAM_FIELDS)
+ strncpy(previous_nvram.product_desc, argv[2], 127);
+ previous_nvram.product_desc[127] = '\0';
+#endif
}
else if (!strcmp(argv[1], "board_desc"))
{
@@ -256,6 +278,10 @@ main(int argc, char** argv)
{
strncpy(previous_nvram.vendorInfo, argv[2], 63);
previous_nvram.vendorInfo[63] = '\0';
+#if defined (CONFIG_CHIP_FEATURE_EXTRA_NVRAM_FIELDS)
+ strncpy(previous_nvram.oem_info, argv[2], 63);
+ previous_nvram.oem_info[63] = '\0';
+#endif
}
else if (!strcmp(argv[1], "ram_size"))
{
@@ -276,11 +302,18 @@ main(int argc, char** argv)
return -1;
}
previous_nvram.ethPortNum = temp;
+#if defined (CONFIG_CHIP_FEATURE_EXTRA_NVRAM_FIELDS)
+ previous_nvram.eth1_port_nb = temp;
+#endif
}
else if (!strcmp(argv[1], "manufactory"))
{
strncpy(previous_nvram.manufactoryInfo, argv[2], 63);
previous_nvram.manufactoryInfo[63] = '\0';
+#if defined (CONFIG_CHIP_FEATURE_EXTRA_NVRAM_FIELDS)
+ strncpy(previous_nvram.manufactory_info, argv[2], 63);
+ previous_nvram.manufactory_info[63] = '\0';
+#endif
}
else
{