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 38c2ad7bd87171a589b4c42d79422aa65190727e..f0fda982b9650698c6b641aeeb6c38d9ea16f060 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 4187a112204801ae313cfb4fa2f0b21194b60b13..61bf3397251a7b3bb1d5b09f06084d873ace1fdb 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 407c9354f747e8a0f3bc4209304547d8c7635e6c..6d0c6c9d5622fbe7890add97b200e4e6ced76d02 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)
 {