2013-05-09 21:05:05

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 01/12] fbdev: FB_GOLDFISH should depend on HAS_DMA

If NO_DMA=y:

drivers/built-in.o: In function `goldfish_fb_remove':
drivers/video/goldfishfb.c:301: undefined reference to `dma_free_coherent'
drivers/built-in.o: In function `goldfish_fb_probe':
drivers/video/goldfishfb.c:247: undefined reference to `dma_alloc_coherent'
drivers/video/goldfishfb.c:280: undefined reference to `dma_free_coherent'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Florian Tobias Schandinat <[email protected]>
Cc: [email protected]
---
drivers/video/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 9669c9c..da01cec 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -2199,7 +2199,7 @@ config FB_XILINX

config FB_GOLDFISH
tristate "Goldfish Framebuffer"
- depends on FB
+ depends on FB && HAS_DMA
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
--
1.7.0.4


2013-05-09 21:05:17

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 11/12] drm: DRM should depend on HAS_DMA

If NO_DMA=y:

drivers/built-in.o: In function `__drm_pci_free':
drivers/gpu/drm/drm_pci.c:112: undefined reference to `dma_free_coherent'
drivers/built-in.o: In function `drm_pci_alloc':
drivers/gpu/drm/drm_pci.c:72: undefined reference to `dma_alloc_coherent'
drivers/built-in.o: In function `drm_gem_unmap_dma_buf':
drivers/gpu/drm/drm_prime.c:87: undefined reference to `dma_unmap_sg'
drivers/built-in.o: In function `drm_gem_map_dma_buf':
drivers/gpu/drm/drm_prime.c:78: undefined reference to `dma_map_sg'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: David Airlie <[email protected]>
Cc: [email protected]
---
drivers/gpu/drm/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
index b16c50e..38f1228 100644
--- a/drivers/gpu/drm/Kconfig
+++ b/drivers/gpu/drm/Kconfig
@@ -6,7 +6,7 @@
#
menuconfig DRM
tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
- depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU
+ depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU && HAS_DMA
select HDMI
select I2C
select I2C_ALGOBIT
--
1.7.0.4

2013-05-09 21:05:15

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 09/12] uio: UIO_DMEM_GENIRQ should depend on HAS_DMA

If NO_DMA=y:

drivers/built-in.o: In function `uio_dmem_genirq_release':
drivers/uio/uio_dmem_genirq.c:95: undefined reference to `dma_free_coherent'
drivers/built-in.o: In function `uio_dmem_genirq_open':
drivers/uio/uio_dmem_genirq.c:61: undefined reference to `dma_alloc_coherent'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Hans J. Koch <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
---
drivers/uio/Kconfig | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/uio/Kconfig b/drivers/uio/Kconfig
index e92eeaf..5295be0 100644
--- a/drivers/uio/Kconfig
+++ b/drivers/uio/Kconfig
@@ -45,6 +45,7 @@ config UIO_PDRV_GENIRQ

config UIO_DMEM_GENIRQ
tristate "Userspace platform driver with generic irq and dynamic memory"
+ depends on HAS_DMA
help
Platform driver for Userspace I/O devices, including generic
interrupt handling code. Shared interrupts are not supported.
--
1.7.0.4

2013-05-09 21:05:14

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 12/12] staging: COMEDI should depend on HAS_DMA

If NO_DMA=y:

ERROR: "dma_free_coherent" [drivers/staging/comedi/comedi.ko] undefined!
ERROR: "dma_alloc_coherent" [drivers/staging/comedi/comedi.ko] undefined!

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Ian Abbott <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
Cc: [email protected]
---
drivers/staging/comedi/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/staging/comedi/Kconfig b/drivers/staging/comedi/Kconfig
index 7871579..ed2e769 100644
--- a/drivers/staging/comedi/Kconfig
+++ b/drivers/staging/comedi/Kconfig
@@ -1,6 +1,6 @@
config COMEDI
tristate "Data acquisition support (comedi)"
- depends on m
+ depends on m && HAS_DMA
---help---
Enable support a wide range of data acquisition devices
for Linux.
--
1.7.0.4

2013-05-09 21:06:02

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 06/12] mtd: MTD_NAND_DENALI should depend on HAS_DMA

If NO_DMA=y:

drivers/built-in.o: In function `denali_remove':
drivers/mtd/nand/denali.c:1605: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `denali_read_page_raw':
drivers/mtd/nand/denali.c:1190: undefined reference to `dma_sync_single_for_cpu'
drivers/built-in.o: In function `denali_read_page':
drivers/mtd/nand/denali.c:1140: undefined reference to `dma_sync_single_for_cpu'
drivers/built-in.o: In function `write_page':
drivers/mtd/nand/denali.c:1051: undefined reference to `dma_sync_single_for_cpu'
drivers/built-in.o: In function `denali_init':
drivers/mtd/nand/denali.c:1433: undefined reference to `dma_set_mask'
drivers/mtd/nand/denali.c:1438: undefined reference to `dma_map_single'
drivers/mtd/nand/denali.c:1442: undefined reference to `dma_mapping_error'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: David Woodhouse <[email protected]>
Cc: [email protected]
---
drivers/mtd/nand/Kconfig | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
index 81bf5e5..ac06f79 100644
--- a/drivers/mtd/nand/Kconfig
+++ b/drivers/mtd/nand/Kconfig
@@ -51,6 +51,7 @@ config MTD_NAND_MUSEUM_IDS

config MTD_NAND_DENALI
tristate "Support Denali NAND controller"
+ depends on HAS_DMA
help
Enable support for the Denali NAND controller. This should be
combined with either the PCI or platform drivers to provide device
--
1.7.0.4

2013-05-09 21:05:11

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 02/12] [SCSI] SCSI_UFSHCD should depend on SCSI_DMA

If NO_DMA=y:

drivers/built-in.o: In function `ufshcd_transfer_req_compl':
drivers/scsi/ufs/ufshcd.c:1182: undefined reference to `scsi_dma_unmap'
drivers/built-in.o: In function `ufshcd_map_sg':
drivers/scsi/ufs/ufshcd.c:377: undefined reference to `scsi_dma_map'
drivers/built-in.o: In function `ufshcd_do_reset':
drivers/scsi/ufs/ufshcd.c:912: undefined reference to `scsi_dma_unmap'
drivers/built-in.o: In function `ufshcd_memory_alloc':
drivers/scsi/ufs/ufshcd.c:565: undefined reference to `dma_alloc_coherent'
drivers/built-in.o: In function `ufshcd_free_hba_memory':
drivers/scsi/ufs/ufshcd.c:185: undefined reference to `dma_free_coherent'
drivers/scsi/ufs/ufshcd.c:192: undefined reference to `dma_free_coherent'
drivers/scsi/ufs/ufshcd.c:199: undefined reference to `dma_free_coherent'
drivers/scsi/ufs/ufshcd.c:185: undefined reference to `dma_free_coherent'
drivers/scsi/ufs/ufshcd.c:192: undefined reference to `dma_free_coherent'
drivers/built-in.o:drivers/scsi/ufs/ufshcd.c:199: more undefined references to `dma_free_coherent' follow
drivers/built-in.o: In function `ufshcd_abort':
drivers/scsi/ufs/ufshcd.c:1498: undefined reference to `scsi_dma_unmap'
drivers/built-in.o: In function `ufshcd_device_reset':
drivers/scsi/ufs/ufshcd.c:1436: undefined reference to `scsi_dma_unmap'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Vinayak Holikatti <[email protected]>
Cc: James E.J. Bottomley <[email protected]>
Cc: [email protected]
---
drivers/scsi/ufs/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/scsi/ufs/Kconfig b/drivers/scsi/ufs/Kconfig
index 0371047..acd7a1c 100644
--- a/drivers/scsi/ufs/Kconfig
+++ b/drivers/scsi/ufs/Kconfig
@@ -34,7 +34,7 @@

config SCSI_UFSHCD
tristate "Universal Flash Storage Controller Driver Core"
- depends on SCSI
+ depends on SCSI && SCSI_DMA
---help---
This selects the support for UFS devices in Linux, say Y and make
sure that you know the name of your UFS host adapter (the card
--
1.7.0.4

2013-05-09 21:06:36

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 07/12] net/ethernet: ARM_AT91_ETHER should depend on HAS_DMA

If NO_DMA=y:

drivers/built-in.o: In function `at91ether_start':
drivers/net/ethernet/cadence/at91_ether.c:49: undefined reference to `dma_alloc_coherent'
drivers/net/ethernet/cadence/at91_ether.c:60: undefined reference to `dma_free_coherent'
drivers/built-in.o: In function `at91ether_interrupt':
drivers/net/ethernet/cadence/at91_ether.c:250: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `at91ether_start_xmit':
drivers/net/ethernet/cadence/at91_ether.c:169: undefined reference to `dma_map_single'
drivers/built-in.o: In function `at91ether_close':
drivers/net/ethernet/cadence/at91_ether.c:145: undefined reference to `dma_free_coherent'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Nicolas Ferre <[email protected]>
Cc: David S. Miller <[email protected]>
Cc: [email protected]
---
drivers/net/ethernet/cadence/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/ethernet/cadence/Kconfig b/drivers/net/ethernet/cadence/Kconfig
index 1194446..0d9d6e6 100644
--- a/drivers/net/ethernet/cadence/Kconfig
+++ b/drivers/net/ethernet/cadence/Kconfig
@@ -22,7 +22,7 @@ if NET_CADENCE

config ARM_AT91_ETHER
tristate "AT91RM9200 Ethernet support"
- depends on GENERIC_HARDIRQS
+ depends on GENERIC_HARDIRQS && HAS_DMA
select NET_CORE
select MACB
---help---
--
1.7.0.4

2013-05-09 21:06:35

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 04/12] net/ethernet: STMMAC_ETH should depend on HAS_DMA

If NO_DMA=y:

drivers/built-in.o: In function `dma_free_tx_skbufs':
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:1141: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `dma_free_rx_skbufs':
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:1120: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `free_dma_desc_resources':
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:1159: undefined reference to `dma_free_coherent'
drivers/built-in.o: In function `stmmac_init_rx_buffers':
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:980: undefined reference to `dma_map_single'
drivers/built-in.o: In function `init_dma_desc_rings':
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:1015: undefined reference to `dma_alloc_coherent'
drivers/built-in.o: In function `stmmac_tx_clean':
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:1250: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `stmmac_rx':
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2044: undefined reference to `dma_unmap_single'
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2082: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `stmmac_rx_refill':
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:1967: undefined reference to `dma_map_single'
drivers/built-in.o: In function `stmmac_xmit':
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:1845: undefined reference to `dma_map_single'
drivers/built-in.o: In function `skb_frag_dma_map':
include/linux/skbuff.h:2184: undefined reference to `dma_map_page'
drivers/built-in.o: In function `stmmac_jumbo_frm':
drivers/net/ethernet/stmicro/stmmac/ring_mode.c:40: undefined reference to `dma_map_single'
drivers/built-in.o: In function `stmmac_jumbo_frm':
drivers/net/ethernet/stmicro/stmmac/chain_mode.c:48: undefined reference to `dma_map_single'
drivers/net/ethernet/stmicro/stmmac/chain_mode.c:55: undefined reference to `dma_map_single'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Giuseppe Cavallaro <[email protected]>
Cc: David S. Miller <[email protected]>
Cc: [email protected]
---
drivers/net/ethernet/stmicro/stmmac/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/ethernet/stmicro/stmmac/Kconfig b/drivers/net/ethernet/stmicro/stmmac/Kconfig
index f695a50..43c1f32 100644
--- a/drivers/net/ethernet/stmicro/stmmac/Kconfig
+++ b/drivers/net/ethernet/stmicro/stmmac/Kconfig
@@ -1,6 +1,6 @@
config STMMAC_ETH
tristate "STMicroelectronics 10/100/1000 Ethernet driver"
- depends on HAS_IOMEM
+ depends on HAS_IOMEM && HAS_DMA
select NET_CORE
select MII
select PHYLIB
--
1.7.0.4

2013-05-09 21:07:20

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 03/12] net/ethernet: NET_CALXEDA_XGMAC should depend on HAS_DMA

If NO_DMA=y:

drivers/built-in.o: In function `xgmac_xmit':
drivers/net/ethernet/calxeda/xgmac.c:1102: undefined reference to `dma_mapping_error'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Rob Herring <[email protected]>
Cc: David S. Miller <[email protected]>
Cc: [email protected]
---
drivers/net/ethernet/calxeda/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/ethernet/calxeda/Kconfig b/drivers/net/ethernet/calxeda/Kconfig
index aba435c..184a063 100644
--- a/drivers/net/ethernet/calxeda/Kconfig
+++ b/drivers/net/ethernet/calxeda/Kconfig
@@ -1,6 +1,6 @@
config NET_CALXEDA_XGMAC
tristate "Calxeda 1G/10G XGMAC Ethernet driver"
- depends on HAS_IOMEM
+ depends on HAS_IOMEM && HAS_DMA
select CRC32
help
This is the driver for the XGMAC Ethernet IP block found on Calxeda
--
1.7.0.4

2013-05-09 21:07:53

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 05/12] net/wireless: ATH9K should depend on HAS_DMA

If NO_DMA=y:

drivers/built-in.o: In function `ath9k_beacon_generate':
drivers/net/wireless/ath/ath9k/beacon.c:146: undefined reference to `dma_unmap_single'
drivers/net/wireless/ath/ath9k/beacon.c:174: undefined reference to `dma_map_single'
drivers/net/wireless/ath/ath9k/beacon.c:176: undefined reference to `dma_mapping_error'
drivers/built-in.o: In function `ath9k_beacon_remove_slot':
drivers/net/wireless/ath/ath9k/beacon.c:252: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `ath_descdma_setup':
drivers/net/wireless/ath/ath9k/init.c:382: undefined reference to `dmam_alloc_coherent'
drivers/built-in.o: In function `ath_edma_get_buffers':
drivers/net/wireless/ath/ath9k/recv.c:616: undefined reference to `dma_sync_single_for_cpu'
drivers/built-in.o: In function `ath_get_next_rx_buf':
drivers/net/wireless/ath/ath9k/recv.c:740: undefined reference to `dma_sync_single_for_cpu'
drivers/built-in.o: In function `ath_rx_edma_cleanup':
drivers/net/wireless/ath/ath9k/recv.c:176: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `ath_rx_cleanup':
drivers/net/wireless/ath/ath9k/recv.c:340: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `ath_rx_edma_buf_link':
drivers/net/wireless/ath/ath9k/recv.c:122: undefined reference to `dma_sync_single_for_cpu'
drivers/built-in.o: In function `ath_rx_tasklet':
drivers/net/wireless/ath/ath9k/recv.c:1275: undefined reference to `dma_map_single'
drivers/net/wireless/ath/ath9k/recv.c:1277: undefined reference to `dma_mapping_error'
drivers/net/wireless/ath/ath9k/recv.c:1283: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `ath_rx_edma_init':
drivers/net/wireless/ath/ath9k/recv.c:226: undefined reference to `dma_map_single'
drivers/net/wireless/ath/ath9k/recv.c:229: undefined reference to `dma_mapping_error'
drivers/built-in.o: In function `ath_rx_init':
drivers/net/wireless/ath/ath9k/recv.c:303: undefined reference to `dma_map_single'
drivers/net/wireless/ath/ath9k/recv.c:306: undefined reference to `dma_mapping_error'
drivers/built-in.o: In function `ath_tx_complete_buf':
drivers/net/wireless/ath/ath9k/xmit.c:2088: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `ath_txstatus_setup':
drivers/net/wireless/ath/ath9k/xmit.c:2344: undefined reference to `dmam_alloc_coherent'
drivers/built-in.o: In function `ath_tx_set_retry':
drivers/net/wireless/ath/ath9k/xmit.c:307: undefined reference to `dma_sync_single_for_cpu'
drivers/built-in.o: In function `ath_tx_setup_buffer':
drivers/net/wireless/ath/ath9k/xmit.c:1887: undefined reference to `dma_map_single'
drivers/net/wireless/ath/ath9k/xmit.c:1889: undefined reference to `dma_mapping_error'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Luis R. Rodriguez <[email protected]>
Cc: John W. Linville <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
drivers/net/wireless/ath/ath9k/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/wireless/ath/ath9k/Kconfig b/drivers/net/wireless/ath/ath9k/Kconfig
index 17507dc..f3dc124 100644
--- a/drivers/net/wireless/ath/ath9k/Kconfig
+++ b/drivers/net/wireless/ath/ath9k/Kconfig
@@ -17,7 +17,7 @@ config ATH9K_BTCOEX_SUPPORT

config ATH9K
tristate "Atheros 802.11n wireless cards support"
- depends on MAC80211
+ depends on MAC80211 && HAS_DMA
select ATH9K_HW
select MAC80211_LEDS
select LEDS_CLASS
--
1.7.0.4

2013-05-09 21:07:52

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 08/12] net/ethernet: MACB should depend on HAS_DMA

If NO_DMA=y:

drivers/built-in.o: In function `macb_free_consistent':
drivers/net/ethernet/cadence/macb.c:878: undefined reference to `dma_free_coherent'
drivers/net/ethernet/cadence/macb.c:883: undefined reference to `dma_free_coherent'
drivers/net/ethernet/cadence/macb.c:888: undefined reference to `dma_free_coherent'
drivers/built-in.o: In function `macb_alloc_consistent':
drivers/net/ethernet/cadence/macb.c:905: undefined reference to `dma_alloc_coherent'
drivers/built-in.o: In function `macb_tx_interrupt':
drivers/net/ethernet/cadence/macb.c:515: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `macb_tx_error_task':
drivers/net/ethernet/cadence/macb.c:457: undefined reference to `dma_unmap_single'
drivers/built-in.o: In function `macb_start_xmit':
drivers/net/ethernet/cadence/macb.c:838: undefined reference to `dma_map_single'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Nicolas Ferre <[email protected]>
Cc: David S. Miller <[email protected]>
Cc: [email protected]
---
drivers/net/ethernet/cadence/Kconfig | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/net/ethernet/cadence/Kconfig b/drivers/net/ethernet/cadence/Kconfig
index 0d9d6e6..768285e 100644
--- a/drivers/net/ethernet/cadence/Kconfig
+++ b/drivers/net/ethernet/cadence/Kconfig
@@ -31,6 +31,7 @@ config ARM_AT91_ETHER

config MACB
tristate "Cadence MACB/GEM support"
+ depends on HAS_DMA
select PHYLIB
---help---
The Cadence MACB ethernet interface is found on many Atmel AT32 and
--
1.7.0.4

2013-05-09 21:07:51

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH 10/12] caif: CAIF_VIRTIO should depend on HAS_DMA

If NO_DMA=y:

drivers/built-in.o: In function `cfv_destroy_genpool':
drivers/net/caif/caif_virtio.c:364: undefined reference to `dma_free_coherent'
drivers/built-in.o: In function `cfv_create_genpool':
drivers/net/caif/caif_virtio.c:397: undefined reference to `dma_alloc_coherent'

Signed-off-by: Geert Uytterhoeven <[email protected]>
Cc: Dmitry Tarnyagin <[email protected]>
Cc: David S. Miller <[email protected]>
Cc: [email protected]
---
drivers/net/caif/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/caif/Kconfig b/drivers/net/caif/Kconfig
index 7ffc756..5470980 100644
--- a/drivers/net/caif/Kconfig
+++ b/drivers/net/caif/Kconfig
@@ -43,7 +43,7 @@ config CAIF_HSI

config CAIF_VIRTIO
tristate "CAIF virtio transport driver"
- depends on CAIF
+ depends on CAIF && HAS_DMA
select VHOST_RING
select VIRTIO
select GENERIC_ALLOCATOR
--
1.7.0.4

2013-05-09 21:34:35

by Hartley Sweeten

[permalink] [raw]
Subject: RE: [PATCH 12/12] staging: COMEDI should depend on HAS_DMA

On Thursday, May 09, 2013 2:05 PM, Geert Uytterhoeven wrote:
> If NO_DMA=y:
>
> ERROR: "dma_free_coherent" [drivers/staging/comedi/comedi.ko] undefined!
> ERROR: "dma_alloc_coherent" [drivers/staging/comedi/comedi.ko] undefined!
>
> Signed-off-by: Geert Uytterhoeven <[email protected]>
> Cc: Ian Abbott <[email protected]>
> Cc: Greg Kroah-Hartman <[email protected]>
> Cc: [email protected]

Grr..

The error appears to be caused by the dma alloc/free in comedi_buf.c.
These only happen if the (s->async_dma_dir != DMA_NONE). The comedi
core defaults the async_dma_dir to DMA_NONE. The only comedi drivers
that set it are ni_660x, ni_mio_common, and ni_pcidio.

The mite driver also has a dma_alloc/free.

Ian, can you think of a better solution than just making comedi depend on HAS_DMA?

Thanks,
Hartley

2013-05-10 08:22:24

by Nicolas Ferre

[permalink] [raw]
Subject: Re: [PATCH 07/12] net/ethernet: ARM_AT91_ETHER should depend on HAS_DMA

On 09/05/2013 23:04, Geert Uytterhoeven :
> If NO_DMA=y:
>
> drivers/built-in.o: In function `at91ether_start':
> drivers/net/ethernet/cadence/at91_ether.c:49: undefined reference to `dma_alloc_coherent'
> drivers/net/ethernet/cadence/at91_ether.c:60: undefined reference to `dma_free_coherent'
> drivers/built-in.o: In function `at91ether_interrupt':
> drivers/net/ethernet/cadence/at91_ether.c:250: undefined reference to `dma_unmap_single'
> drivers/built-in.o: In function `at91ether_start_xmit':
> drivers/net/ethernet/cadence/at91_ether.c:169: undefined reference to `dma_map_single'
> drivers/built-in.o: In function `at91ether_close':
> drivers/net/ethernet/cadence/at91_ether.c:145: undefined reference to `dma_free_coherent'
>
> Signed-off-by: Geert Uytterhoeven <[email protected]>
> Cc: Nicolas Ferre <[email protected]>

Acked-by: Nicolas Ferre <[email protected]>

> Cc: David S. Miller <[email protected]>
> Cc: [email protected]
> ---
> drivers/net/ethernet/cadence/Kconfig | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/ethernet/cadence/Kconfig b/drivers/net/ethernet/cadence/Kconfig
> index 1194446..0d9d6e6 100644
> --- a/drivers/net/ethernet/cadence/Kconfig
> +++ b/drivers/net/ethernet/cadence/Kconfig
> @@ -22,7 +22,7 @@ if NET_CADENCE
>
> config ARM_AT91_ETHER
> tristate "AT91RM9200 Ethernet support"
> - depends on GENERIC_HARDIRQS
> + depends on GENERIC_HARDIRQS && HAS_DMA
> select NET_CORE
> select MACB
> ---help---
>


--
Nicolas Ferre

2013-05-10 08:22:39

by Nicolas Ferre

[permalink] [raw]
Subject: Re: [PATCH 08/12] net/ethernet: MACB should depend on HAS_DMA

On 09/05/2013 23:04, Geert Uytterhoeven :
> If NO_DMA=y:
>
> drivers/built-in.o: In function `macb_free_consistent':
> drivers/net/ethernet/cadence/macb.c:878: undefined reference to `dma_free_coherent'
> drivers/net/ethernet/cadence/macb.c:883: undefined reference to `dma_free_coherent'
> drivers/net/ethernet/cadence/macb.c:888: undefined reference to `dma_free_coherent'
> drivers/built-in.o: In function `macb_alloc_consistent':
> drivers/net/ethernet/cadence/macb.c:905: undefined reference to `dma_alloc_coherent'
> drivers/built-in.o: In function `macb_tx_interrupt':
> drivers/net/ethernet/cadence/macb.c:515: undefined reference to `dma_unmap_single'
> drivers/built-in.o: In function `macb_tx_error_task':
> drivers/net/ethernet/cadence/macb.c:457: undefined reference to `dma_unmap_single'
> drivers/built-in.o: In function `macb_start_xmit':
> drivers/net/ethernet/cadence/macb.c:838: undefined reference to `dma_map_single'
>
> Signed-off-by: Geert Uytterhoeven <[email protected]>
> Cc: Nicolas Ferre <[email protected]>

Acked-by: Nicolas Ferre <[email protected]>

> Cc: David S. Miller <[email protected]>
> Cc: [email protected]
> ---
> drivers/net/ethernet/cadence/Kconfig | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/net/ethernet/cadence/Kconfig b/drivers/net/ethernet/cadence/Kconfig
> index 0d9d6e6..768285e 100644
> --- a/drivers/net/ethernet/cadence/Kconfig
> +++ b/drivers/net/ethernet/cadence/Kconfig
> @@ -31,6 +31,7 @@ config ARM_AT91_ETHER
>
> config MACB
> tristate "Cadence MACB/GEM support"
> + depends on HAS_DMA
> select PHYLIB
> ---help---
> The Cadence MACB ethernet interface is found on many Atmel AT32 and
>


--
Nicolas Ferre

2013-05-10 10:02:10

by Ian Abbott

[permalink] [raw]
Subject: Re: [PATCH 12/12] staging: COMEDI should depend on HAS_DMA

On 2013-05-09 22:33, H Hartley Sweeten wrote:
> On Thursday, May 09, 2013 2:05 PM, Geert Uytterhoeven wrote:
>> If NO_DMA=y:
>>
>> ERROR: "dma_free_coherent" [drivers/staging/comedi/comedi.ko] undefined!
>> ERROR: "dma_alloc_coherent" [drivers/staging/comedi/comedi.ko] undefined!
>>
>> Signed-off-by: Geert Uytterhoeven <[email protected]>
>> Cc: Ian Abbott <[email protected]>
>> Cc: Greg Kroah-Hartman <[email protected]>
>> Cc: [email protected]
>
> Grr..
>
> The error appears to be caused by the dma alloc/free in comedi_buf.c.
> These only happen if the (s->async_dma_dir != DMA_NONE). The comedi
> core defaults the async_dma_dir to DMA_NONE. The only comedi drivers
> that set it are ni_660x, ni_mio_common, and ni_pcidio.
>
> The mite driver also has a dma_alloc/free.
>
> Ian, can you think of a better solution than just making comedi depend on HAS_DMA?

The only alternative I can think of is to change comedi_buf.c to only
compile in the functions if CONFIG_HAS_DMA is defined and to make the
following config options depend on HAS_DMA:

COMEDI_NI_6527
COMEDI_NI_65XX
COMEDI_NI_660X
COMEDI_NI_670X
COMEDI_NI_LABPC_PCI
COMEDI_NI_PCIDIO
COMEDI_NI_PCIMIO
COMEDI_MITE
COMEDI_NI_TIOCMD

--
-=( Ian Abbott @ MEV Ltd. E-mail: <[email protected]> )=-
-=( Tel: +44 (0)161 477 1898 FAX: +44 (0)161 718 3587 )=-

2013-05-10 12:07:48

by Ian Abbott

[permalink] [raw]
Subject: Re: [PATCH 12/12] staging: COMEDI should depend on HAS_DMA

On 2013-05-10 11:02, Ian Abbott wrote:
> On 2013-05-09 22:33, H Hartley Sweeten wrote:
>> On Thursday, May 09, 2013 2:05 PM, Geert Uytterhoeven wrote:
>>> If NO_DMA=y:
>>>
>>> ERROR: "dma_free_coherent" [drivers/staging/comedi/comedi.ko] undefined!
>>> ERROR: "dma_alloc_coherent" [drivers/staging/comedi/comedi.ko] undefined!
>>>
>>> Signed-off-by: Geert Uytterhoeven <[email protected]>
>>> Cc: Ian Abbott <[email protected]>
>>> Cc: Greg Kroah-Hartman <[email protected]>
>>> Cc: [email protected]
>>
>> Grr..
>>
>> The error appears to be caused by the dma alloc/free in comedi_buf.c.
>> These only happen if the (s->async_dma_dir != DMA_NONE). The comedi
>> core defaults the async_dma_dir to DMA_NONE. The only comedi drivers
>> that set it are ni_660x, ni_mio_common, and ni_pcidio.
>>
>> The mite driver also has a dma_alloc/free.
>>
>> Ian, can you think of a better solution than just making comedi depend on HAS_DMA?
>
> The only alternative I can think of is to change comedi_buf.c to only
> compile in the functions if CONFIG_HAS_DMA is defined and to make the
> following config options depend on HAS_DMA:
>
> COMEDI_NI_6527
> COMEDI_NI_65XX
> COMEDI_NI_660X
> COMEDI_NI_670X
> COMEDI_NI_LABPC_PCI
> COMEDI_NI_PCIDIO
> COMEDI_NI_PCIMIO
> COMEDI_MITE
> COMEDI_NI_TIOCMD

I'm working on it.

--
-=( Ian Abbott @ MEV Ltd. E-mail: <[email protected]> )=-
-=( Tel: +44 (0)161 477 1898 FAX: +44 (0)161 718 3587 )=-

2013-05-11 23:28:45

by David Miller

[permalink] [raw]
Subject: Re: [PATCH 03/12] net/ethernet: NET_CALXEDA_XGMAC should depend on HAS_DMA

From: Geert Uytterhoeven <[email protected]>
Date: Thu, 9 May 2013 23:04:45 +0200

> If NO_DMA=y:
>
> drivers/built-in.o: In function `xgmac_xmit':
> drivers/net/ethernet/calxeda/xgmac.c:1102: undefined reference to `dma_mapping_error'
>
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Applied.

2013-05-11 23:28:58

by David Miller

[permalink] [raw]
Subject: Re: [PATCH 04/12] net/ethernet: STMMAC_ETH should depend on HAS_DMA

From: Geert Uytterhoeven <[email protected]>
Date: Thu, 9 May 2013 23:04:46 +0200

> If NO_DMA=y:
...
>
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Applied.

2013-05-11 23:29:11

by David Miller

[permalink] [raw]
Subject: Re: [PATCH 05/12] net/wireless: ATH9K should depend on HAS_DMA

From: Geert Uytterhoeven <[email protected]>
Date: Thu, 9 May 2013 23:04:47 +0200

> If NO_DMA=y:
...
>
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Applied.

2013-05-11 23:29:20

by David Miller

[permalink] [raw]
Subject: Re: [PATCH 07/12] net/ethernet: ARM_AT91_ETHER should depend on HAS_DMA

From: Geert Uytterhoeven <[email protected]>
Date: Thu, 9 May 2013 23:04:49 +0200

> If NO_DMA=y:
...
>
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Applied.

2013-05-11 23:29:32

by David Miller

[permalink] [raw]
Subject: Re: [PATCH 08/12] net/ethernet: MACB should depend on HAS_DMA

From: Geert Uytterhoeven <[email protected]>
Date: Thu, 9 May 2013 23:04:50 +0200

> If NO_DMA=y:
...
>
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Applied.

2013-05-11 23:29:41

by David Miller

[permalink] [raw]
Subject: Re: [PATCH 10/12] caif: CAIF_VIRTIO should depend on HAS_DMA

From: Geert Uytterhoeven <[email protected]>
Date: Thu, 9 May 2013 23:04:52 +0200

> If NO_DMA=y:
...
>
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Applied.