soc/tegra: fuse: Move register mapping check
authorThierry Reding <treding@nvidia.com>
Mon, 26 Jun 2017 15:21:17 +0000 (17:21 +0200)
committerThierry Reding <treding@nvidia.com>
Wed, 13 Dec 2017 11:43:30 +0000 (12:43 +0100)
The tegra_read_chipid() function can be called from places other than
tegra_get_chip_id(), so the check for a valid mapping of the MISC
registers needs to be moved to tegra_read_chipid() to catch all
potential accesses.

Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/soc/tegra/fuse/tegra-apbmisc.c

index 5b18f6ffa45c798a9c8d138a4f0fb647551b4932..b1f8b23277b9417a8d8be220fbe79e2a3754d308 100644 (file)
@@ -38,17 +38,17 @@ static void __iomem *strapping_base;
 static bool long_ram_code;
 
 u32 tegra_read_chipid(void)
-{
-       return readl_relaxed(apbmisc_base + 4);
-}
-
-u8 tegra_get_chip_id(void)
 {
        if (!apbmisc_base) {
                WARN(1, "Tegra Chip ID not yet available\n");
                return 0;
        }
 
+       return readl_relaxed(apbmisc_base + 4);
+}
+
+u8 tegra_get_chip_id(void)
+{
        return (tegra_read_chipid() >> 8) & 0xff;
 }