diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2012-02-10 11:53:56 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2012-02-10 11:53:56 +0000 |
commit | 32a18a05f8998202a4ea55030853571a46de2dc0 (patch) | |
tree | 16f1ca2a2fc1a9334b40b0cd8f59639263ee0c27 /target/linux/ar71xx/patches-3.3/504-MIPS-ath79-add-ath79_device_reset_get.patch | |
parent | 512df38f5cb2b9a34b71ec674a4ae9bf2e769597 (diff) | |
download | upstream-32a18a05f8998202a4ea55030853571a46de2dc0.tar.gz upstream-32a18a05f8998202a4ea55030853571a46de2dc0.tar.bz2 upstream-32a18a05f8998202a4ea55030853571a46de2dc0.zip |
ar71xx: add preliminary support for 3.3
SVN-Revision: 30410
Diffstat (limited to 'target/linux/ar71xx/patches-3.3/504-MIPS-ath79-add-ath79_device_reset_get.patch')
-rw-r--r-- | target/linux/ar71xx/patches-3.3/504-MIPS-ath79-add-ath79_device_reset_get.patch | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/target/linux/ar71xx/patches-3.3/504-MIPS-ath79-add-ath79_device_reset_get.patch b/target/linux/ar71xx/patches-3.3/504-MIPS-ath79-add-ath79_device_reset_get.patch new file mode 100644 index 0000000000..5179a53de4 --- /dev/null +++ b/target/linux/ar71xx/patches-3.3/504-MIPS-ath79-add-ath79_device_reset_get.patch @@ -0,0 +1,45 @@ +--- a/arch/mips/include/asm/mach-ath79/ath79.h ++++ b/arch/mips/include/asm/mach-ath79/ath79.h +@@ -125,6 +125,7 @@ static inline u32 ath79_reset_rr(unsigne + + void ath79_device_reset_set(u32 mask); + void ath79_device_reset_clear(u32 mask); ++u32 ath79_device_reset_get(u32 mask); + + void ath79_flash_acquire(void); + void ath79_flash_release(void); +--- a/arch/mips/ath79/common.c ++++ b/arch/mips/ath79/common.c +@@ -109,6 +109,32 @@ void ath79_device_reset_clear(u32 mask) + } + EXPORT_SYMBOL_GPL(ath79_device_reset_clear); + ++u32 ath79_device_reset_get(u32 mask) ++{ ++ unsigned long flags; ++ u32 reg; ++ u32 ret; ++ ++ if (soc_is_ar71xx()) ++ reg = AR71XX_RESET_REG_RESET_MODULE; ++ else if (soc_is_ar724x()) ++ reg = AR724X_RESET_REG_RESET_MODULE; ++ else if (soc_is_ar913x()) ++ reg = AR913X_RESET_REG_RESET_MODULE; ++ else if (soc_is_ar933x()) ++ reg = AR933X_RESET_REG_RESET_MODULE; ++ else if (soc_is_ar934x()) ++ reg = AR934X_RESET_REG_RESET_MODULE; ++ else ++ BUG(); ++ ++ spin_lock_irqsave(&ath79_device_reset_lock, flags); ++ ret = ath79_reset_rr(reg); ++ spin_unlock_irqrestore(&ath79_device_reset_lock, flags); ++ return ret; ++} ++EXPORT_SYMBOL_GPL(ath79_device_reset_get); ++ + void ath79_flash_acquire(void) + { + mutex_lock(&ath79_flash_mutex); |