soc: mediatek: socinfo: Advertise about unknown MediaTek SoC
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Thu, 14 Mar 2024 11:30:15 +0000 (12:30 +0100)
committerAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Tue, 23 Apr 2024 10:16:56 +0000 (12:16 +0200)
In case we're running on a MediaTek SoC that is not declared in the
socinfo_data_table, print a message stating that and, with it, also
print out the read eFuse data: this allows to easily add a new SoC
in the table, granted that its actual soc/segment/marketing names
are already previously known.

This is especially useful when booting an already known SoC that
already has socinfo support, but has a different silicon version
and/or revision, hence different model information in the eFuses.

Link: https://lore.kernel.org/r/20240314113015.121940-1-angelogioacchino.delregno@collabora.com
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
drivers/soc/mediatek/mtk-socinfo.c

index 42572e8c1520d073d971d02ae75eece122587d10..4494cca1d075e95127861f8a522626dd637058a5 100644 (file)
@@ -144,7 +144,14 @@ static int mtk_socinfo_get_socinfo_data(struct mtk_socinfo *mtk_socinfop)
                }
        }
 
-       return match_socinfo_index >= 0 ? match_socinfo_index : -ENOENT;
+       if (match_socinfo_index < 0) {
+               dev_warn(mtk_socinfop->dev,
+                        "Unknown MediaTek SoC with ID 0x%08x 0x%08x\n",
+                         cell_data[0], cell_data[1]);
+               return -ENOENT;
+       }
+
+       return match_socinfo_index;
 }
 
 static int mtk_socinfo_probe(struct platform_device *pdev)