MIPS: ath79: Store the SoC revision in a global variable
authorGabor Juhos <juhosg@openwrt.org>
Fri, 18 Nov 2011 00:17:46 +0000 (00:17 +0000)
committerRalf Baechle <ralf@linux-mips.org>
Wed, 7 Dec 2011 22:02:47 +0000 (22:02 +0000)
Knowing the exact revision of the SoC is required to make runtime decisions
in various code paths.  We have determined the SoC revision already, so we
only need to store that in a global variable.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Cc: Imre Kaloz <kaloz@openwrt.org>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/3027/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/ath79/common.c
arch/mips/ath79/setup.c
arch/mips/include/asm/mach-ath79/ath79.h

index 38c2ad7..f0fda98 100644 (file)
@@ -30,6 +30,7 @@ u32 ath79_ddr_freq;
 EXPORT_SYMBOL_GPL(ath79_ddr_freq);
 
 enum ath79_soc_type ath79_soc;
+unsigned int ath79_soc_rev;
 
 void __iomem *ath79_pll_base;
 void __iomem *ath79_reset_base;
index 4187a11..61bf339 100644 (file)
@@ -149,6 +149,8 @@ static void __init ath79_detect_sys_type(void)
                panic("ath79: unknown SoC, id:0x%08x\n", id);
        }
 
+       ath79_soc_rev = rev;
+
        sprintf(ath79_sys_type, "Atheros AR%s rev %u", chip, rev);
        pr_info("SoC: %s\n", ath79_sys_type);
 }
index 407c935..6d0c6c9 100644 (file)
@@ -32,6 +32,7 @@ enum ath79_soc_type {
 };
 
 extern enum ath79_soc_type ath79_soc;
+extern unsigned int ath79_soc_rev;
 
 static inline int soc_is_ar71xx(void)
 {