diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-08-29 21:23:46 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-08-29 21:23:46 +0000 |
commit | 25d7a6da6c49822bb2f8e15056ba5dab7d9f9119 (patch) | |
tree | a67aa33d4b05125d7951cff28dbe5a3d453a685b /target/linux/ar71xx/files/arch | |
parent | d8083fae30589c5fddeb12ba8bf2058594bf6763 (diff) |
ar71xx: fix ethernet PLL setting on ar7242
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@28124 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ar71xx/files/arch')
-rw-r--r-- | target/linux/ar71xx/files/arch/mips/ar71xx/devices.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c b/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c index 74d9495c3..4c901681c 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/devices.c @@ -265,9 +265,11 @@ static void ar724x_set_pll_ge1(int speed) static void ar7242_set_pll_ge0(int speed) { u32 val = ar71xx_get_eth_pll(0, speed); + void __iomem *base; - ar71xx_set_pll(AR71XX_PLL_REG_SEC_CONFIG, AR7242_PLL_REG_ETH0_INT_CLOCK, - val, AR71XX_ETH0_PLL_SHIFT); + base = ioremap_nocache(AR71XX_PLL_BASE, AR71XX_PLL_SIZE); + __raw_writel(val, base + AR7242_PLL_REG_ETH0_INT_CLOCK); + iounmap(base); } static void ar91xx_set_pll_ge0(int speed) @@ -410,7 +412,7 @@ struct platform_device ar71xx_eth1_device = { #define AR724X_PLL_VAL_100 0x00001099 #define AR724X_PLL_VAL_10 0x00991099 -#define AR7242_PLL_VAL_1000 0x1c000000 +#define AR7242_PLL_VAL_1000 0x16000000 #define AR7242_PLL_VAL_100 0x00000101 #define AR7242_PLL_VAL_10 0x00001616 |