Commit 2ce8c07d authored by Domenico Andreoli's avatar Domenico Andreoli Committed by David S. Miller

CS89x0: Add networking support for QQ2440

QQ2440 is only another non-ISA board using CS89x0. This patch adds the
minimum bits required to make QQ2440 work with CS89x0.
Signed-off-by: default avatarDomenico Andreoli <cavokz@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent d181a617
...@@ -1498,7 +1498,7 @@ config FORCEDETH ...@@ -1498,7 +1498,7 @@ config FORCEDETH
config CS89x0 config CS89x0
tristate "CS89x0 support" tristate "CS89x0 support"
depends on NET_ETHERNET && (ISA || EISA || MACH_IXDP2351 \ depends on NET_ETHERNET && (ISA || EISA || MACH_IXDP2351 \
|| ARCH_IXDP2X01 || MACH_MX31ADS) || ARCH_IXDP2X01 || MACH_MX31ADS || MACH_QQ2440)
---help--- ---help---
Support for CS89x0 chipset based Ethernet cards. If you have a Support for CS89x0 chipset based Ethernet cards. If you have a
network (Ethernet) card of this type, say Y and read the network (Ethernet) card of this type, say Y and read the
...@@ -1512,7 +1512,7 @@ config CS89x0 ...@@ -1512,7 +1512,7 @@ config CS89x0
config CS89x0_NONISA_IRQ config CS89x0_NONISA_IRQ
def_bool y def_bool y
depends on CS89x0 != n depends on CS89x0 != n
depends on MACH_IXDP2351 || ARCH_IXDP2X01 || MACH_MX31ADS depends on MACH_IXDP2351 || ARCH_IXDP2X01 || MACH_MX31ADS || MACH_QQ2440
config TC35815 config TC35815
tristate "TOSHIBA TC35815 Ethernet support" tristate "TOSHIBA TC35815 Ethernet support"
......
...@@ -95,6 +95,9 @@ ...@@ -95,6 +95,9 @@
Dmitry Pervushin : dpervushin@ru.mvista.com Dmitry Pervushin : dpervushin@ru.mvista.com
: PNX010X platform support : PNX010X platform support
Domenico Andreoli : cavokz@gmail.com
: QQ2440 platform support
*/ */
/* Always include 'config.h' first in case the user wants to turn on /* Always include 'config.h' first in case the user wants to turn on
...@@ -176,6 +179,10 @@ static unsigned int cs8900_irq_map[] = {IRQ_IXDP2351_CS8900, 0, 0, 0}; ...@@ -176,6 +179,10 @@ static unsigned int cs8900_irq_map[] = {IRQ_IXDP2351_CS8900, 0, 0, 0};
#elif defined(CONFIG_ARCH_IXDP2X01) #elif defined(CONFIG_ARCH_IXDP2X01)
static unsigned int netcard_portlist[] __used __initdata = {IXDP2X01_CS8900_VIRT_BASE, 0}; static unsigned int netcard_portlist[] __used __initdata = {IXDP2X01_CS8900_VIRT_BASE, 0};
static unsigned int cs8900_irq_map[] = {IRQ_IXDP2X01_CS8900, 0, 0, 0}; static unsigned int cs8900_irq_map[] = {IRQ_IXDP2X01_CS8900, 0, 0, 0};
#elif defined(CONFIG_MACH_QQ2440)
#include <mach/qq2440.h>
static unsigned int netcard_portlist[] __used __initdata = { QQ2440_CS8900_VIRT_BASE + 0x300, 0 };
static unsigned int cs8900_irq_map[] = { QQ2440_CS8900_IRQ, 0, 0, 0 };
#elif defined(CONFIG_MACH_MX31ADS) #elif defined(CONFIG_MACH_MX31ADS)
#include <mach/board-mx31ads.h> #include <mach/board-mx31ads.h>
static unsigned int netcard_portlist[] __used __initdata = { static unsigned int netcard_portlist[] __used __initdata = {
...@@ -521,6 +528,10 @@ cs89x0_probe1(struct net_device *dev, int ioaddr, int modular) ...@@ -521,6 +528,10 @@ cs89x0_probe1(struct net_device *dev, int ioaddr, int modular)
#endif #endif
lp->force = g_cs89x0_media__force; lp->force = g_cs89x0_media__force;
#endif #endif
#if defined(CONFIG_MACH_QQ2440)
lp->force |= FORCE_RJ45 | FORCE_FULL;
#endif
} }
/* Grab the region so we can find another board if autoIRQ fails. */ /* Grab the region so we can find another board if autoIRQ fails. */
......
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