summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Brunner <super.firetwister@googlemail.com>2007-08-20 08:36:50 +0200
committerDavid S. Miller <davem@sunset.davemloft.net>2007-10-10 16:54:06 -0700
commit726d722e41f1c329b7f04c5ee5aef02a60ac1991 (patch)
treebc8c0ff549a8e411112ef6a0af9a52a70fe54004
parent2c69448bbcedebeb8409ddb05fbc7d3fe1cfbda7 (diff)
downloadlinux-3.10-726d722e41f1c329b7f04c5ee5aef02a60ac1991.tar.gz
linux-3.10-726d722e41f1c329b7f04c5ee5aef02a60ac1991.tar.bz2
linux-3.10-726d722e41f1c329b7f04c5ee5aef02a60ac1991.zip
smc911x irq sense request and MPR2 board support
Hi, this are the changes to the smc911x driver, which were necessary to get it running on the Magic Panel R2 (smsc9115). It is a SH3-DSP based board. The other patches are available on the linuxsh-dev mailinglist. http://marc.info/?l=linuxsh-dev&r=1&b=200708&w=2 It was necessary to set the irq sense to low level. Therefor the SMC_IRQ_SENSE define was added. How are the chances for inclusion in 2.6.24? Signed-off by: Markus Brunner <super.firetwister@gmail.com> Signed-off by: Mark Jonas <toertel@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/net/Kconfig2
-rw-r--r--drivers/net/smc911x.c2
-rw-r--r--drivers/net/smc911x.h6
3 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index 45f6cf53156..0e48b294200 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -944,7 +944,7 @@ config SMC911X
tristate "SMSC LAN911[5678] support"
select CRC32
select MII
- depends on ARCH_PXA
+ depends on ARCH_PXA || SUPERH
help
This is a driver for SMSC's LAN911x series of Ethernet chipsets
including the new LAN9115, LAN9116, LAN9117, and LAN9118.
diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c
index c0276c04dec..7c60df46fc6 100644
--- a/drivers/net/smc911x.c
+++ b/drivers/net/smc911x.c
@@ -2063,7 +2063,7 @@ static int __init smc911x_probe(struct net_device *dev, unsigned long ioaddr)
/* Grab the IRQ */
retval = request_irq(dev->irq, &smc911x_interrupt,
- IRQF_SHARED | IRQF_TRIGGER_FALLING, dev->name, dev);
+ IRQF_SHARED | SMC_IRQ_SENSE, dev->name, dev);
if (retval)
goto err_out;
diff --git a/drivers/net/smc911x.h b/drivers/net/smc911x.h
index 962a710459f..16a0edc078f 100644
--- a/drivers/net/smc911x.h
+++ b/drivers/net/smc911x.h
@@ -36,6 +36,12 @@
#define SMC_USE_PXA_DMA 1
#define SMC_USE_16BIT 0
#define SMC_USE_32BIT 1
+ #define SMC_IRQ_SENSE IRQF_TRIGGER_FALLING
+#elif CONFIG_SH_MAGIC_PANEL_R2
+ #define SMC_USE_SH_DMA 0
+ #define SMC_USE_16BIT 0
+ #define SMC_USE_32BIT 1
+ #define SMC_IRQ_SENSE IRQF_TRIGGER_LOW
#endif