]> git.openfabrics.org - ~emulex/infiniband.git/commitdiff
MIPS: ath79: add QCA955X specific glue to ath79_device_reset_{set, clear}
authorGabor Juhos <juhosg@openwrt.org>
Fri, 15 Feb 2013 13:38:20 +0000 (13:38 +0000)
committerJohn Crispin <blogic@openwrt.org>
Tue, 19 Feb 2013 08:36:27 +0000 (09:36 +0100)
The ath79_device_reset_* are causing BUG when
those are used on the QCA955x SoCs. The patch
adds the required code to avoid that.

Cc: Rodriguez, Luis <rodrigue@qca.qualcomm.com>
Cc: Giori, Kathy <kgiori@qca.qualcomm.com>
Cc: QCA Linux Team <qca-linux-team@qca.qualcomm.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Patchwork: http://patchwork.linux-mips.org/patch/4948/
Signed-off-by: John Crispin <blogic@openwrt.org>
arch/mips/ath79/common.c
arch/mips/include/asm/mach-ath79/ar71xx_regs.h

index 5a4adfc9d79dc3b3fe891456530ff88e20c5ff90..eb3966cd8cfcbbf74d4ec0c6b650f334843b4039 100644 (file)
@@ -72,6 +72,8 @@ void ath79_device_reset_set(u32 mask)
                reg = AR933X_RESET_REG_RESET_MODULE;
        else if (soc_is_ar934x())
                reg = AR934X_RESET_REG_RESET_MODULE;
+       else if (soc_is_qca955x())
+               reg = QCA955X_RESET_REG_RESET_MODULE;
        else
                BUG();
 
@@ -98,6 +100,8 @@ void ath79_device_reset_clear(u32 mask)
                reg = AR933X_RESET_REG_RESET_MODULE;
        else if (soc_is_ar934x())
                reg = AR934X_RESET_REG_RESET_MODULE;
+       else if (soc_is_qca955x())
+               reg = QCA955X_RESET_REG_RESET_MODULE;
        else
                BUG();
 
index 4868ed5c149bd96e47975b219523cc385d90d2cb..bf50ddfc9d5cff0337e6d3be29042a8472475220 100644 (file)
 #define AR934X_RESET_REG_BOOTSTRAP             0xb0
 #define AR934X_RESET_REG_PCIE_WMAC_INT_STATUS  0xac
 
+#define QCA955X_RESET_REG_RESET_MODULE         0x1c
 #define QCA955X_RESET_REG_BOOTSTRAP            0xb0
 #define QCA955X_RESET_REG_EXT_INT_STATUS       0xac