Commit 14c16db3 authored by Greg Ungerer's avatar Greg Ungerer

m68knommu: set multi-function pins for ethernet when enabled

The ethernet pins on the 532x ColdFire CPU family are multi-function
pins. We need to enable them as ethernet pins when using the FEC
ethernet driver.

Bug report, and older patch, from timothee@manaud.net.
Signed-off-by: default avatarGreg Ungerer <gerg@uclinux.org>
parent d89395ba
...@@ -82,6 +82,20 @@ static struct platform_device *m523x_devices[] __initdata = { ...@@ -82,6 +82,20 @@ static struct platform_device *m523x_devices[] __initdata = {
/***************************************************************************/ /***************************************************************************/
static void __init m523x_fec_init(void)
{
u16 par;
u8 v;
/* Set multi-function pins to ethernet use */
par = readw(MCF_IPSBAR + 0x100082);
writew(par | 0xf00, MCF_IPSBAR + 0x100082);
v = readb(MCF_IPSBAR + 0x100078);
writeb(v | 0xc0, MCF_IPSBAR + 0x100078);
}
/***************************************************************************/
static void m523x_cpu_reset(void) static void m523x_cpu_reset(void)
{ {
local_irq_disable(); local_irq_disable();
...@@ -99,6 +113,7 @@ void __init config_BSP(char *commandp, int size) ...@@ -99,6 +113,7 @@ void __init config_BSP(char *commandp, int size)
static int __init init_BSP(void) static int __init init_BSP(void)
{ {
m523x_fec_init();
platform_add_devices(m523x_devices, ARRAY_SIZE(m523x_devices)); platform_add_devices(m523x_devices, ARRAY_SIZE(m523x_devices));
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment