aboutsummaryrefslogtreecommitdiff
path: root/drivers/soc
diff options
context:
space:
mode:
authorGravatar AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> 2024-03-14 12:30:15 +0100
committerGravatar AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> 2024-04-23 12:16:56 +0200
commit7843b6b83d7f8059824e634ffc8d53fd3d9f4041 (patch)
tree155c49daa5f39b6512833c8e26216c009c4d5db1 /drivers/soc
parentsoc: mediatek: cmdq: Don't log an error when gce-client-reg is not found (diff)
downloadlinux-7843b6b83d7f8059824e634ffc8d53fd3d9f4041.tar.gz
linux-7843b6b83d7f8059824e634ffc8d53fd3d9f4041.tar.bz2
linux-7843b6b83d7f8059824e634ffc8d53fd3d9f4041.zip
soc: mediatek: socinfo: Advertise about unknown MediaTek SoC
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>
Diffstat (limited to 'drivers/soc')
-rw-r--r--drivers/soc/mediatek/mtk-socinfo.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/soc/mediatek/mtk-socinfo.c b/drivers/soc/mediatek/mtk-socinfo.c
index 42572e8c1520..4494cca1d075 100644
--- a/drivers/soc/mediatek/mtk-socinfo.c
+++ b/drivers/soc/mediatek/mtk-socinfo.c
@@ -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)