diff options
author | Oskar Schirmer <os@emlix.com> | 2009-06-10 15:58:48 -0400 |
---|---|---|
committer | Chris Zankel <chris@zankel.net> | 2009-06-22 05:37:49 -0400 |
commit | 059cafe6df5d3b078c4b1be42623c62ab32de6fd (patch) | |
tree | 9274e7a43f37b4d792bc361b5eac8567548e8b41 /arch/xtensa/platforms/s6105/setup.c | |
parent | 8b0215aa5b01eb3cb54ca57bfa36e94a0d039ed9 (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.c | 9 |
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 - " |