linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3
@ 2012-04-20 20:56 mathieu.poirier
  2012-04-20 20:56 ` [PATCH 1/8] davinci_cpdma: export symbols used by other drivers mathieu.poirier
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: mathieu.poirier @ 2012-04-20 20:56 UTC (permalink / raw)
  To: netdev, linux-kernel; +Cc: arnd, mathieu.poirier

From: Arnd Bergmann <arnd@arndb.de>

These patches fix miscellaneous problems when working
with make randconfig.  They were discovered on kernel
3.1-rc4 and have been reformatted for 3.3.

Arnd Bergmann (8):
  davinci_cpdma: export symbols used by other drivers
  drivers/net: add missing __devexit_p() annotations
  caif: include linux/io.h
  drivers/net: iwmc3200 depends on EXPERIMENTAL
  8390: select CRC32 support
  donauboe: replace excessive udelay with msleep
  sungem: use mdelay instead of udelay where necessary
  drivers/net: decouple ISA and ISA_DMA_API

 drivers/net/caif/caif_shmcore.c           |    4 ++++
 drivers/net/ethernet/8390/Kconfig         |    1 +
 drivers/net/ethernet/micrel/ks8842.c      |    2 +-
 drivers/net/ethernet/sun/sungem.c         |    2 +-
 drivers/net/ethernet/ti/davinci_cpdma.c   |   13 ++++++++++++-
 drivers/net/irda/donauboe.c               |    2 +-
 drivers/net/tokenring/Kconfig             |    6 +++---
 drivers/net/tokenring/tms380tr.c          |    6 +++---
 drivers/net/wimax/i2400m/Kconfig          |    3 ++-
 drivers/net/wireless/b43/sdio.c           |    2 +-
 drivers/net/wireless/iwmc3200wifi/Kconfig |    2 +-
 drivers/net/wireless/p54/p54usb.c         |    2 +-
 12 files changed, 31 insertions(+), 14 deletions(-)

-- 
1.7.5.4


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 1/8] davinci_cpdma: export symbols used by other drivers
  2012-04-20 20:56 [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 mathieu.poirier
@ 2012-04-20 20:56 ` mathieu.poirier
  2012-04-20 20:56 ` [PATCH 2/8] drivers/net: add missing __devexit_p() annotations mathieu.poirier
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: mathieu.poirier @ 2012-04-20 20:56 UTC (permalink / raw)
  To: netdev, linux-kernel; +Cc: arnd, mathieu.poirier

From: Arnd Bergmann <arnd@arndb.de>

The davinci_emac driver can be a module, so the symbols
it needs from the cpdma driver must be exported.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
 drivers/net/ethernet/ti/davinci_cpdma.c |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/drivers/net/ethernet/ti/davinci_cpdma.c b/drivers/net/ethernet/ti/davinci_cpdma.c
index 3455876..d614c37 100644
--- a/drivers/net/ethernet/ti/davinci_cpdma.c
+++ b/drivers/net/ethernet/ti/davinci_cpdma.c
@@ -92,7 +92,7 @@ enum cpdma_state {
 	CPDMA_STATE_TEARDOWN,
 };
 
-const char *cpdma_state_str[] = { "idle", "active", "teardown" };
+static const char *cpdma_state_str[] = { "idle", "active", "teardown" };
 
 struct cpdma_ctlr {
 	enum cpdma_state	state;
@@ -276,6 +276,7 @@ struct cpdma_ctlr *cpdma_ctlr_create(struct cpdma_params *params)
 		ctlr->num_chan = CPDMA_MAX_CHANNELS;
 	return ctlr;
 }
+EXPORT_SYMBOL_GPL(cpdma_ctlr_create);
 
 int cpdma_ctlr_start(struct cpdma_ctlr *ctlr)
 {
@@ -321,6 +322,7 @@ int cpdma_ctlr_start(struct cpdma_ctlr *ctlr)
 	spin_unlock_irqrestore(&ctlr->lock, flags);
 	return 0;
 }
+EXPORT_SYMBOL_GPL(cpdma_ctlr_start);
 
 int cpdma_ctlr_stop(struct cpdma_ctlr *ctlr)
 {
@@ -351,6 +353,7 @@ int cpdma_ctlr_stop(struct cpdma_ctlr *ctlr)
 	spin_unlock_irqrestore(&ctlr->lock, flags);
 	return 0;
 }
+EXPORT_SYMBOL_GPL(cpdma_ctlr_stop);
 
 int cpdma_ctlr_dump(struct cpdma_ctlr *ctlr)
 {
@@ -421,6 +424,7 @@ int cpdma_ctlr_dump(struct cpdma_ctlr *ctlr)
 	spin_unlock_irqrestore(&ctlr->lock, flags);
 	return 0;
 }
+EXPORT_SYMBOL_GPL(cpdma_ctlr_dump);
 
 int cpdma_ctlr_destroy(struct cpdma_ctlr *ctlr)
 {
@@ -444,6 +448,7 @@ int cpdma_ctlr_destroy(struct cpdma_ctlr *ctlr)
 	kfree(ctlr);
 	return ret;
 }
+EXPORT_SYMBOL_GPL(cpdma_ctlr_destroy);
 
 int cpdma_ctlr_int_ctrl(struct cpdma_ctlr *ctlr, bool enable)
 {
@@ -528,6 +533,7 @@ err_chan_busy:
 err_chan_alloc:
 	return ERR_PTR(ret);
 }
+EXPORT_SYMBOL_GPL(cpdma_chan_create);
 
 int cpdma_chan_destroy(struct cpdma_chan *chan)
 {
@@ -545,6 +551,7 @@ int cpdma_chan_destroy(struct cpdma_chan *chan)
 	kfree(chan);
 	return 0;
 }
+EXPORT_SYMBOL_GPL(cpdma_chan_destroy);
 
 int cpdma_chan_get_stats(struct cpdma_chan *chan,
 			 struct cpdma_chan_stats *stats)
@@ -693,6 +700,7 @@ unlock_ret:
 	spin_unlock_irqrestore(&chan->lock, flags);
 	return ret;
 }
+EXPORT_SYMBOL_GPL(cpdma_chan_submit);
 
 static void __cpdma_chan_free(struct cpdma_chan *chan,
 			      struct cpdma_desc __iomem *desc,
@@ -776,6 +784,7 @@ int cpdma_chan_process(struct cpdma_chan *chan, int quota)
 	}
 	return used;
 }
+EXPORT_SYMBOL_GPL(cpdma_chan_process);
 
 int cpdma_chan_start(struct cpdma_chan *chan)
 {
@@ -803,6 +812,7 @@ int cpdma_chan_start(struct cpdma_chan *chan)
 	spin_unlock_irqrestore(&chan->lock, flags);
 	return 0;
 }
+EXPORT_SYMBOL_GPL(cpdma_chan_start);
 
 int cpdma_chan_stop(struct cpdma_chan *chan)
 {
@@ -863,6 +873,7 @@ int cpdma_chan_stop(struct cpdma_chan *chan)
 	spin_unlock_irqrestore(&chan->lock, flags);
 	return 0;
 }
+EXPORT_SYMBOL_GPL(cpdma_chan_stop);
 
 int cpdma_chan_int_ctrl(struct cpdma_chan *chan, bool enable)
 {
-- 
1.7.5.4


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 2/8] drivers/net: add missing __devexit_p() annotations
  2012-04-20 20:56 [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 mathieu.poirier
  2012-04-20 20:56 ` [PATCH 1/8] davinci_cpdma: export symbols used by other drivers mathieu.poirier
@ 2012-04-20 20:56 ` mathieu.poirier
  2012-04-20 20:56 ` [PATCH 3/8] caif: include linux/io.h mathieu.poirier
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: mathieu.poirier @ 2012-04-20 20:56 UTC (permalink / raw)
  To: netdev, linux-kernel; +Cc: arnd, mathieu.poirier

From: Arnd Bergmann <arnd@arndb.de>

Drivers that refer to a __devexit function in an operations
structure need to annotate that pointer with __devexit_p so
replace it with a NULL pointer when the section gets discarded.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
 drivers/net/ethernet/micrel/ks8842.c |    2 +-
 drivers/net/wireless/b43/sdio.c      |    2 +-
 drivers/net/wireless/p54/p54usb.c    |    2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/micrel/ks8842.c b/drivers/net/ethernet/micrel/ks8842.c
index f84dd2d..24fb049 100644
--- a/drivers/net/ethernet/micrel/ks8842.c
+++ b/drivers/net/ethernet/micrel/ks8842.c
@@ -1262,7 +1262,7 @@ static struct platform_driver ks8842_platform_driver = {
 		.owner	= THIS_MODULE,
 	},
 	.probe		= ks8842_probe,
-	.remove		= ks8842_remove,
+	.remove		= __devexit_p(ks8842_remove),
 };
 
 module_platform_driver(ks8842_platform_driver);
diff --git a/drivers/net/wireless/b43/sdio.c b/drivers/net/wireless/b43/sdio.c
index 80b0755..a54fb2d 100644
--- a/drivers/net/wireless/b43/sdio.c
+++ b/drivers/net/wireless/b43/sdio.c
@@ -193,7 +193,7 @@ static struct sdio_driver b43_sdio_driver = {
 	.name		= "b43-sdio",
 	.id_table	= b43_sdio_ids,
 	.probe		= b43_sdio_probe,
-	.remove		= b43_sdio_remove,
+	.remove		= __devexit_p(b43_sdio_remove),
 };
 
 int b43_sdio_init(void)
diff --git a/drivers/net/wireless/p54/p54usb.c b/drivers/net/wireless/p54/p54usb.c
index f4d28c3..43b37b2 100644
--- a/drivers/net/wireless/p54/p54usb.c
+++ b/drivers/net/wireless/p54/p54usb.c
@@ -1072,7 +1072,7 @@ static struct usb_driver p54u_driver = {
 	.name	= "p54usb",
 	.id_table = p54u_table,
 	.probe = p54u_probe,
-	.disconnect = p54u_disconnect,
+	.disconnect = __devexit_p(p54u_disconnect),
 	.pre_reset = p54u_pre_reset,
 	.post_reset = p54u_post_reset,
 #ifdef CONFIG_PM
-- 
1.7.5.4


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 3/8] caif: include linux/io.h
  2012-04-20 20:56 [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 mathieu.poirier
  2012-04-20 20:56 ` [PATCH 1/8] davinci_cpdma: export symbols used by other drivers mathieu.poirier
  2012-04-20 20:56 ` [PATCH 2/8] drivers/net: add missing __devexit_p() annotations mathieu.poirier
@ 2012-04-20 20:56 ` mathieu.poirier
  2012-04-20 20:56 ` [PATCH 4/8] drivers/net: iwmc3200 depends on EXPERIMENTAL mathieu.poirier
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: mathieu.poirier @ 2012-04-20 20:56 UTC (permalink / raw)
  To: netdev, linux-kernel; +Cc: arnd, mathieu.poirier

From: Arnd Bergmann <arnd@arndb.de>

The caif_shmcore requires io.h in order to use ioremap, so include that
explicitly to compile in all configurations.

Also add a note about the use of ioremap(), which is not a proper way
to map a DMA buffer into kernel space. It's not completely clear what
the intention is for using ioremap, but it is clear that the result
of ioremap must not simply be accessed using kernel pointers but
should use readl/writel or memcopy_{to,from}io. Assigning the result
of ioremap to a regular pointer that can also be set to something
else is not ok.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
 drivers/net/caif/caif_shmcore.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/drivers/net/caif/caif_shmcore.c b/drivers/net/caif/caif_shmcore.c
index 5b20413..bc497d7 100644
--- a/drivers/net/caif/caif_shmcore.c
+++ b/drivers/net/caif/caif_shmcore.c
@@ -13,6 +13,7 @@
 #include <linux/list.h>
 #include <linux/netdevice.h>
 #include <linux/if_arp.h>
+#include <linux/io.h>
 
 #include <net/caif/caif_device.h>
 #include <net/caif/caif_shm.h>
@@ -647,6 +648,9 @@ int caif_shmcore_probe(struct shmdev_layer *pshm_dev)
 		if (pshm_dev->shm_loopback)
 			tx_buf->desc_vptr = (unsigned char *)tx_buf->phy_addr;
 		else
+			/*
+			 * FIXME: the result of ioremap is not a pointer - arnd
+			 */
 			tx_buf->desc_vptr =
 					ioremap(tx_buf->phy_addr, TX_BUF_SZ);
 
-- 
1.7.5.4


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 4/8] drivers/net: iwmc3200 depends on EXPERIMENTAL
  2012-04-20 20:56 [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 mathieu.poirier
                   ` (2 preceding siblings ...)
  2012-04-20 20:56 ` [PATCH 3/8] caif: include linux/io.h mathieu.poirier
@ 2012-04-20 20:56 ` mathieu.poirier
  2012-04-20 20:56 ` [PATCH 5/8] 8390: select CRC32 support mathieu.poirier
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: mathieu.poirier @ 2012-04-20 20:56 UTC (permalink / raw)
  To: netdev, linux-kernel; +Cc: arnd, mathieu.poirier

From: Arnd Bergmann <arnd@arndb.de>

The iwmc3200 driver selects other code in Kconfig that depends on
EXPERIMENTAL. Kconfig warns about this when CONFIG_EXPERIMENTAL
is not already set, so logically, these options should also
be marked experimental or promoted to stable.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
 drivers/net/wimax/i2400m/Kconfig          |    3 ++-
 drivers/net/wireless/iwmc3200wifi/Kconfig |    2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wimax/i2400m/Kconfig b/drivers/net/wimax/i2400m/Kconfig
index 3f70338..672de18 100644
--- a/drivers/net/wimax/i2400m/Kconfig
+++ b/drivers/net/wimax/i2400m/Kconfig
@@ -32,8 +32,9 @@ config WIMAX_I2400M_SDIO
 	  If unsure, it is safe to select M (module).
 
 config WIMAX_IWMC3200_SDIO
-	bool "Intel Wireless Multicom WiMAX Connection 3200 over SDIO"
+	bool "Intel Wireless Multicom WiMAX Connection 3200 over SDIO (EXPERIMENTAL)"
 	depends on WIMAX_I2400M_SDIO
+	depends on EXPERIMENTAL
 	select IWMC3200TOP
 	help
 	  Select if you have a device based on the Intel Multicom WiMAX
diff --git a/drivers/net/wireless/iwmc3200wifi/Kconfig b/drivers/net/wireless/iwmc3200wifi/Kconfig
index 03f998d..7107ce5 100644
--- a/drivers/net/wireless/iwmc3200wifi/Kconfig
+++ b/drivers/net/wireless/iwmc3200wifi/Kconfig
@@ -1,5 +1,5 @@
 config IWM
-	tristate "Intel Wireless Multicomm 3200 WiFi driver"
+	tristate "Intel Wireless Multicomm 3200 WiFi driver (EXPERIMENTAL)"
 	depends on MMC && EXPERIMENTAL
 	depends on CFG80211
 	select FW_LOADER
-- 
1.7.5.4


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 5/8] 8390: select CRC32 support
  2012-04-20 20:56 [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 mathieu.poirier
                   ` (3 preceding siblings ...)
  2012-04-20 20:56 ` [PATCH 4/8] drivers/net: iwmc3200 depends on EXPERIMENTAL mathieu.poirier
@ 2012-04-20 20:56 ` mathieu.poirier
  2012-04-20 20:56 ` [PATCH 6/8] donauboe: replace excessive udelay with msleep mathieu.poirier
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: mathieu.poirier @ 2012-04-20 20:56 UTC (permalink / raw)
  To: netdev, linux-kernel; +Cc: arnd, mathieu.poirier

From: Arnd Bergmann <arnd@arndb.de>

The ax88796 driver uses the CRC32 functions, so make sure that
they are actually enabled.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
 drivers/net/ethernet/8390/Kconfig |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/net/ethernet/8390/Kconfig b/drivers/net/ethernet/8390/Kconfig
index e04ade4..910895c 100644
--- a/drivers/net/ethernet/8390/Kconfig
+++ b/drivers/net/ethernet/8390/Kconfig
@@ -60,6 +60,7 @@ config PCMCIA_AXNET
 config AX88796
 	tristate "ASIX AX88796 NE2000 clone support"
 	depends on (ARM || MIPS || SUPERH)
+	select CRC32
 	select PHYLIB
 	select MDIO_BITBANG
 	---help---
-- 
1.7.5.4


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 6/8] donauboe: replace excessive udelay with msleep
  2012-04-20 20:56 [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 mathieu.poirier
                   ` (4 preceding siblings ...)
  2012-04-20 20:56 ` [PATCH 5/8] 8390: select CRC32 support mathieu.poirier
@ 2012-04-20 20:56 ` mathieu.poirier
  2012-04-20 20:56 ` [PATCH 7/8] sungem: use mdelay instead of udelay where necessary mathieu.poirier
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: mathieu.poirier @ 2012-04-20 20:56 UTC (permalink / raw)
  To: netdev, linux-kernel; +Cc: arnd, mathieu.poirier

From: Arnd Bergmann <arnd@arndb.de>

No driver should spin the CPU for 10ms, so better use
an msleep, which is allowed in the ->suspend function.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
 drivers/net/irda/donauboe.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/irda/donauboe.c b/drivers/net/irda/donauboe.c
index 4351296..510b9c8 100644
--- a/drivers/net/irda/donauboe.c
+++ b/drivers/net/irda/donauboe.c
@@ -1710,7 +1710,7 @@ toshoboe_gotosleep (struct pci_dev *pci_dev, pm_message_t crap)
 
 /* Flush all packets */
   while ((i--) && (self->txpending))
-    udelay (10000);
+    msleep(10);
 
   spin_lock_irqsave(&self->spinlock, flags);
 
-- 
1.7.5.4


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 7/8] sungem: use mdelay instead of udelay where necessary
  2012-04-20 20:56 [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 mathieu.poirier
                   ` (5 preceding siblings ...)
  2012-04-20 20:56 ` [PATCH 6/8] donauboe: replace excessive udelay with msleep mathieu.poirier
@ 2012-04-20 20:56 ` mathieu.poirier
  2012-04-20 20:56 ` [PATCH 8/8] drivers/net: decouple ISA and ISA_DMA_API mathieu.poirier
  2012-04-21 19:29 ` [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 David Miller
  8 siblings, 0 replies; 10+ messages in thread
From: mathieu.poirier @ 2012-04-20 20:56 UTC (permalink / raw)
  To: netdev, linux-kernel; +Cc: arnd, mathieu.poirier

From: Arnd Bergmann <arnd@arndb.de>

Some architectures like ARM cannot handle large numbers as
arguments to udelay, so the drivers should use mdelay when
delaying for multiple miliseconds.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
 drivers/net/ethernet/sun/sungem.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/ethernet/sun/sungem.c b/drivers/net/ethernet/sun/sungem.c
index 558409f..26c1a2c 100644
--- a/drivers/net/ethernet/sun/sungem.c
+++ b/drivers/net/ethernet/sun/sungem.c
@@ -401,7 +401,7 @@ static int gem_rxmac_reset(struct gem *gp)
 		return 1;
 	}
 
-	udelay(5000);
+	mdelay(5);
 
 	/* Execute RX reset command. */
 	writel(gp->swrst_base | GREG_SWRST_RXRST,
-- 
1.7.5.4


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 8/8] drivers/net: decouple ISA and ISA_DMA_API
  2012-04-20 20:56 [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 mathieu.poirier
                   ` (6 preceding siblings ...)
  2012-04-20 20:56 ` [PATCH 7/8] sungem: use mdelay instead of udelay where necessary mathieu.poirier
@ 2012-04-20 20:56 ` mathieu.poirier
  2012-04-21 19:29 ` [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 David Miller
  8 siblings, 0 replies; 10+ messages in thread
From: mathieu.poirier @ 2012-04-20 20:56 UTC (permalink / raw)
  To: netdev, linux-kernel; +Cc: arnd, mathieu.poirier

From: Arnd Bergmann <arnd@arndb.de>

The two options are separate, and some platforms (e.g. arm pxa)
have ISA slots but no ISA dma controller, so they cannot build
drivers using the DMA API functions.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
 drivers/net/tokenring/Kconfig    |    6 +++---
 drivers/net/tokenring/tms380tr.c |    6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/net/tokenring/Kconfig b/drivers/net/tokenring/Kconfig
index 45550d4..ef3bb13 100644
--- a/drivers/net/tokenring/Kconfig
+++ b/drivers/net/tokenring/Kconfig
@@ -98,7 +98,7 @@ config 3C359
 
 config TMS380TR
 	tristate "Generic TMS380 Token Ring ISA/PCI adapter support"
-	depends on PCI || ISA && ISA_DMA_API || MCA
+	depends on PCI || ISA || MCA
 	select FW_LOADER
 	---help---
 	  This driver provides generic support for token ring adapters
@@ -137,7 +137,7 @@ config TMSPCI
 
 config SKISA
 	tristate "SysKonnect TR4/16 ISA support"
-	depends on TMS380TR && ISA
+	depends on TMS380TR && ISA && ISA_DMA_API
 	help
 	  This tms380 module supports SysKonnect TR4/16 ISA cards.
 
@@ -149,7 +149,7 @@ config SKISA
 
 config PROTEON
 	tristate "Proteon ISA support"
-	depends on TMS380TR && ISA
+	depends on TMS380TR && ISA && ISA_DMA_API
 	help
 	  This tms380 module supports Proteon ISA cards.
 
diff --git a/drivers/net/tokenring/tms380tr.c b/drivers/net/tokenring/tms380tr.c
index be4813e..b5e0855 100644
--- a/drivers/net/tokenring/tms380tr.c
+++ b/drivers/net/tokenring/tms380tr.c
@@ -254,7 +254,7 @@ int tms380tr_open(struct net_device *dev)
 
 	/* Reset the hardware here. Don't forget to set the station address. */
 
-#ifdef CONFIG_ISA
+#if defined(CONFIG_ISA) && defined(CONFIG_ISA_DMA_API)
 	if(dev->dma > 0) 
 	{
 		unsigned long flags=claim_dma_lock();
@@ -1125,8 +1125,8 @@ int tms380tr_close(struct net_device *dev)
     
 	del_timer(&tp->timer);
 	tms380tr_disable_interrupts(dev);
-   
-#ifdef CONFIG_ISA
+
+#if defined(CONFIG_ISA) && defined(CONFIG_ISA_DMA_API)
 	if(dev->dma > 0) 
 	{
 		unsigned long flags=claim_dma_lock();
-- 
1.7.5.4


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3
  2012-04-20 20:56 [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 mathieu.poirier
                   ` (7 preceding siblings ...)
  2012-04-20 20:56 ` [PATCH 8/8] drivers/net: decouple ISA and ISA_DMA_API mathieu.poirier
@ 2012-04-21 19:29 ` David Miller
  8 siblings, 0 replies; 10+ messages in thread
From: David Miller @ 2012-04-21 19:29 UTC (permalink / raw)
  To: mathieu.poirier; +Cc: netdev, linux-kernel, arnd

From: mathieu.poirier@linaro.org
Date: Fri, 20 Apr 2012 14:56:08 -0600

> From: Arnd Bergmann <arnd@arndb.de>
> 
> These patches fix miscellaneous problems when working
> with make randconfig.  They were discovered on kernel
> 3.1-rc4 and have been reformatted for 3.3.

All applied to net-next, thanks.

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2012-04-21 19:30 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-20 20:56 [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 mathieu.poirier
2012-04-20 20:56 ` [PATCH 1/8] davinci_cpdma: export symbols used by other drivers mathieu.poirier
2012-04-20 20:56 ` [PATCH 2/8] drivers/net: add missing __devexit_p() annotations mathieu.poirier
2012-04-20 20:56 ` [PATCH 3/8] caif: include linux/io.h mathieu.poirier
2012-04-20 20:56 ` [PATCH 4/8] drivers/net: iwmc3200 depends on EXPERIMENTAL mathieu.poirier
2012-04-20 20:56 ` [PATCH 5/8] 8390: select CRC32 support mathieu.poirier
2012-04-20 20:56 ` [PATCH 6/8] donauboe: replace excessive udelay with msleep mathieu.poirier
2012-04-20 20:56 ` [PATCH 7/8] sungem: use mdelay instead of udelay where necessary mathieu.poirier
2012-04-20 20:56 ` [PATCH 8/8] drivers/net: decouple ISA and ISA_DMA_API mathieu.poirier
2012-04-21 19:29 ` [PATCH 0/8] drivers/net: randconfig patches for kernel 3.3 David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).