diff --git a/package/network/utils/iwinfo/src/iwinfo_utils.c b/package/network/utils/iwinfo/src/iwinfo_utils.c
index 1a831f3ac14d22ae69b0cfc92f382ee72bb0134f..dd49303f8aa38ae738cf3cc3a9fd8dd8a3863b49 100644
--- a/package/network/utils/iwinfo/src/iwinfo_utils.c
+++ b/package/network/utils/iwinfo/src/iwinfo_utils.c
@@ -182,7 +182,7 @@ int iwinfo_hardware_id_from_mtd(struct iwinfo_hardware_id *id)
 
 	while (fgets(buf, sizeof(buf), mtd) > 0)
 	{
-		if (fscanf(mtd, "mtd%d: %*x %x %127s", &off, &len, buf) < 3 ||
+		if (fscanf(mtd, "mtd%d: %x %*x %127s", &off, &len, buf) < 3 ||
 		    (strcmp(buf, "\"boardconfig\"") && strcmp(buf, "\"EEPROM\"") &&
 		     strcmp(buf, "\"factory\"")))
 		{