aboutsummaryrefslogtreecommitdiffstats
path: root/arch/xtensa/platforms/s6105/setup.c
diff options
context:
space:
mode:
authorOskar Schirmer <os@emlix.com>2009-06-10 15:58:48 -0400
committerChris Zankel <chris@zankel.net>2009-06-22 05:37:49 -0400
commit059cafe6df5d3b078c4b1be42623c62ab32de6fd (patch)
tree9274e7a43f37b4d792bc361b5eac8567548e8b41 /arch/xtensa/platforms/s6105/setup.c
parent8b0215aa5b01eb3cb54ca57bfa36e94a0d039ed9 (diff)
xtensa: s6105 specific configuration for s6gmac
Platform-specific configuration for the s6gmac driver, including the PHY interrupt line. Signed-off-by: Daniel Glockner <dg@emlix.com> Signed-off-by: Oskar Schirmer <os@emlix.com> Cc: "David S. Miller" <davem@davemloft.net> Cc: Johannes Weiner <jw@emlix.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'arch/xtensa/platforms/s6105/setup.c')
-rw-r--r--arch/xtensa/platforms/s6105/setup.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/xtensa/platforms/s6105/setup.c b/arch/xtensa/platforms/s6105/setup.c
index 95fa23c8e632..86ce730f7913 100644
--- a/arch/xtensa/platforms/s6105/setup.c
+++ b/arch/xtensa/platforms/s6105/setup.c
@@ -35,12 +35,21 @@ void __init platform_setup(char **cmdline)
35{ 35{
36 unsigned long reg; 36 unsigned long reg;
37 37
38 reg = readl(S6_REG_GREG1 + S6_GREG1_PLLSEL);
39 reg &= ~(S6_GREG1_PLLSEL_GMAC_MASK << S6_GREG1_PLLSEL_GMAC |
40 S6_GREG1_PLLSEL_GMII_MASK << S6_GREG1_PLLSEL_GMII);
41 reg |= S6_GREG1_PLLSEL_GMAC_125MHZ << S6_GREG1_PLLSEL_GMAC |
42 S6_GREG1_PLLSEL_GMII_125MHZ << S6_GREG1_PLLSEL_GMII;
43 writel(reg, S6_REG_GREG1 + S6_GREG1_PLLSEL);
44
38 reg = readl(S6_REG_GREG1 + S6_GREG1_CLKGATE); 45 reg = readl(S6_REG_GREG1 + S6_GREG1_CLKGATE);
39 reg &= ~(1 << S6_GREG1_BLOCK_SB); 46 reg &= ~(1 << S6_GREG1_BLOCK_SB);
47 reg &= ~(1 << S6_GREG1_BLOCK_GMAC);
40 writel(reg, S6_REG_GREG1 + S6_GREG1_CLKGATE); 48 writel(reg, S6_REG_GREG1 + S6_GREG1_CLKGATE);
41 49
42 reg = readl(S6_REG_GREG1 + S6_GREG1_BLOCKENA); 50 reg = readl(S6_REG_GREG1 + S6_GREG1_BLOCKENA);
43 reg |= 1 << S6_GREG1_BLOCK_SB; 51 reg |= 1 << S6_GREG1_BLOCK_SB;
52 reg |= 1 << S6_GREG1_BLOCK_GMAC;
44 writel(reg, S6_REG_GREG1 + S6_GREG1_BLOCKENA); 53 writel(reg, S6_REG_GREG1 + S6_GREG1_BLOCKENA);
45 54
46 printk(KERN_NOTICE "S6105 on Stretch S6000 - " 55 printk(KERN_NOTICE "S6105 on Stretch S6000 - "