diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2013-02-15 08:38:20 -0500 |
---|---|---|
committer | John Crispin <blogic@openwrt.org> | 2013-02-19 03:36:27 -0500 |
commit | 7d4c2af9bdbbe789fe4a93f32c5890d72cbf60a1 (patch) | |
tree | d644649117aabbc274af4733b3e51c1b30011b08 | |
parent | f818ca3e6894d4a630a1ecc673c91df8fb6f6898 (diff) |
MIPS: ath79: add QCA955X specific glue to ath79_device_reset_{set, clear}
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>
-rw-r--r-- | arch/mips/ath79/common.c | 4 | ||||
-rw-r--r-- | arch/mips/include/asm/mach-ath79/ar71xx_regs.h | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/arch/mips/ath79/common.c b/arch/mips/ath79/common.c index 5a4adfc9d79d..eb3966cd8cfc 100644 --- a/arch/mips/ath79/common.c +++ b/arch/mips/ath79/common.c | |||
@@ -72,6 +72,8 @@ void ath79_device_reset_set(u32 mask) | |||
72 | reg = AR933X_RESET_REG_RESET_MODULE; | 72 | reg = AR933X_RESET_REG_RESET_MODULE; |
73 | else if (soc_is_ar934x()) | 73 | else if (soc_is_ar934x()) |
74 | reg = AR934X_RESET_REG_RESET_MODULE; | 74 | reg = AR934X_RESET_REG_RESET_MODULE; |
75 | else if (soc_is_qca955x()) | ||
76 | reg = QCA955X_RESET_REG_RESET_MODULE; | ||
75 | else | 77 | else |
76 | BUG(); | 78 | BUG(); |
77 | 79 | ||
@@ -98,6 +100,8 @@ void ath79_device_reset_clear(u32 mask) | |||
98 | reg = AR933X_RESET_REG_RESET_MODULE; | 100 | reg = AR933X_RESET_REG_RESET_MODULE; |
99 | else if (soc_is_ar934x()) | 101 | else if (soc_is_ar934x()) |
100 | reg = AR934X_RESET_REG_RESET_MODULE; | 102 | reg = AR934X_RESET_REG_RESET_MODULE; |
103 | else if (soc_is_qca955x()) | ||
104 | reg = QCA955X_RESET_REG_RESET_MODULE; | ||
101 | else | 105 | else |
102 | BUG(); | 106 | BUG(); |
103 | 107 | ||
diff --git a/arch/mips/include/asm/mach-ath79/ar71xx_regs.h b/arch/mips/include/asm/mach-ath79/ar71xx_regs.h index 4868ed5c149b..bf50ddfc9d5c 100644 --- a/arch/mips/include/asm/mach-ath79/ar71xx_regs.h +++ b/arch/mips/include/asm/mach-ath79/ar71xx_regs.h | |||
@@ -299,6 +299,7 @@ | |||
299 | #define AR934X_RESET_REG_BOOTSTRAP 0xb0 | 299 | #define AR934X_RESET_REG_BOOTSTRAP 0xb0 |
300 | #define AR934X_RESET_REG_PCIE_WMAC_INT_STATUS 0xac | 300 | #define AR934X_RESET_REG_PCIE_WMAC_INT_STATUS 0xac |
301 | 301 | ||
302 | #define QCA955X_RESET_REG_RESET_MODULE 0x1c | ||
302 | #define QCA955X_RESET_REG_BOOTSTRAP 0xb0 | 303 | #define QCA955X_RESET_REG_BOOTSTRAP 0xb0 |
303 | #define QCA955X_RESET_REG_EXT_INT_STATUS 0xac | 304 | #define QCA955X_RESET_REG_EXT_INT_STATUS 0xac |
304 | 305 | ||