diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2012-08-02 09:54:41 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2012-08-02 09:54:41 +0000 |
commit | b8730517068d6ab2850656220e5bf024ab25da83 (patch) | |
tree | 3ef842dee76ad9855e44d865219068a0101b9f1e /target/linux/ar71xx/image/lzma-loader/src/board.c | |
parent | e29d6bec6f012ccd39872bd65ecec6407630379e (diff) | |
download | upstream-b8730517068d6ab2850656220e5bf024ab25da83.tar.gz upstream-b8730517068d6ab2850656220e5bf024ab25da83.tar.bz2 upstream-b8730517068d6ab2850656220e5bf024ab25da83.zip |
ar71xx: image: stop the switch from the lzma-loader on the TL-WR1043ND
SVN-Revision: 32946
Diffstat (limited to 'target/linux/ar71xx/image/lzma-loader/src/board.c')
-rw-r--r-- | target/linux/ar71xx/image/lzma-loader/src/board.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/target/linux/ar71xx/image/lzma-loader/src/board.c b/target/linux/ar71xx/image/lzma-loader/src/board.c index f1f97442f5..2f4dd6b1f6 100644 --- a/target/linux/ar71xx/image/lzma-loader/src/board.c +++ b/target/linux/ar71xx/image/lzma-loader/src/board.c @@ -10,10 +10,13 @@ #include <stddef.h> #include "config.h" +#include "ar71xx_regs.h" #define READREG(r) *(volatile unsigned int *)(r) #define WRITEREG(r,v) *(volatile unsigned int *)(r) = v +#define KSEG1ADDR(_x) (((_x) & 0x1fffffff) | 0xa0000000) + #define UART_BASE 0xb8020000 #define UART_TX 0 @@ -31,6 +34,23 @@ void board_putc(int ch) while (((UART_READ(UART_LSR)) & UART_LSR_THRE) == 0); } +#ifdef CONFIG_BOARD_TL_WR1043ND_V1 +static void tlwr1043nd_init(void) +{ + unsigned int reg = KSEG1ADDR(AR71XX_RESET_BASE); + unsigned int t; + + t = READREG(reg + AR913X_RESET_REG_RESET_MODULE); + t |= AR71XX_RESET_GE0_PHY; + WRITEREG(reg + AR913X_RESET_REG_RESET_MODULE, t); + /* flush write */ + t = READREG(reg + AR913X_RESET_REG_RESET_MODULE); +} +#else +static inline void tlwr1043nd_init(void) {} +#endif + void board_init(void) { + tlwr1043nd_init(); } |