2007-08-17 00:10:56

by Shannon Nelson

[permalink] [raw]
Subject: [-mm PATCH] DMA engine kconfig improvements (rev2)

From: Adrian Bunk <[email protected]>

This patch contains the following changes to the DMA engine menus:
- switch to menuconfig
- INTEL_IOATDMA must depend on X86
- INTEL_IOATDMA must select DCA
- device drivers shouldn't "default m"
- DCA shouldn't be a user visible option
- make it clear in the INTEL_IOATDMA help text that this driver is for
rare hardware the user most likely doesn't has
- let DMA_ENGINE be select'ed by the DMA devices, making it less likely
for a user to accidentally enable NET_DMA

[[email protected]: fix up Kconfig text]
Signed-off-by: Adrian Bunk <[email protected]>
Signed-off-by: Dan Williams <[email protected]>
Signed-off-by: Shannon Nelson <[email protected]>
---

drivers/dca/Kconfig | 7 ++----
drivers/dma/Kconfig | 60 ++++++++++++++++++++++++++++++---------------------
2 files changed, 37 insertions(+), 30 deletions(-)

diff --git a/drivers/dca/Kconfig b/drivers/dca/Kconfig
index d901615..c2ed77c 100644
--- a/drivers/dca/Kconfig
+++ b/drivers/dca/Kconfig
@@ -3,9 +3,6 @@
#

config DCA
- tristate "DCA support for clients and providers"
- ---help---
- This is a server to help modules that want to use Direct Cache
- Access to find DCA providers that will supply correct CPU tags.
- default m
+ tristate
+

diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
index 8f670da..955a99b 100644
--- a/drivers/dma/Kconfig
+++ b/drivers/dma/Kconfig
@@ -2,42 +2,52 @@
# DMA engine configuration
#

-menu "DMA Engine support"
- depends on HAS_DMA
+menuconfig DMADEVICES
+ bool "DMA Offload Engine support"
+ depends on (PCI && X86) || ARCH_IOP32X || ARCH_IOP33X || ARCH_IOP13XX
+ help
+ Intel(R) offload engines enable offloading memory copies in the
+ network stack and RAID operations in the MD driver.
+
+if DMADEVICES
+
+comment "DMA Devices"
+
+config INTEL_IOATDMA
+ tristate "Intel I/OAT DMA support"
+ depends on PCI && X86
+ select DMA_ENGINE
+ select DCA
+ help
+ Enable support for the Intel(R) I/OAT DMA engine present
+ in recent chipsets.
+
+ Say Y here if you have such a chipset.
+
+ If unsure, say N.
+
+config INTEL_IOP_ADMA
+ tristate "Intel IOP ADMA support"
+ depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IOP13XX
+ select ASYNC_CORE
+ select DMA_ENGINE
+ help
+ Enable support for the Intel(R) IOP Series RAID engines.

config DMA_ENGINE
- bool "Support for DMA engines"
- ---help---
- DMA engines offload bulk memory operations from the CPU to dedicated
- hardware, allowing the operations to happen asynchronously.
+ bool

comment "DMA Clients"
+ depends on DMA_ENGINE

config NET_DMA
bool "Network: TCP receive copy offload"
depends on DMA_ENGINE && NET
default y
- ---help---
+ help
This enables the use of DMA engines in the network stack to
offload receive copy-to-user operations, freeing CPU cycles.
Since this is the main user of the DMA engine, it should be enabled;
say Y here.

-comment "DMA Devices"
-
-config INTEL_IOATDMA
- tristate "Intel I/OAT DMA support"
- depends on DMA_ENGINE && PCI
- default m
- ---help---
- Enable support for the Intel(R) I/OAT DMA engine.
-
-config INTEL_IOP_ADMA
- tristate "Intel IOP ADMA support"
- depends on DMA_ENGINE && (ARCH_IOP32X || ARCH_IOP33X || ARCH_IOP13XX)
- select ASYNC_CORE
- default m
- ---help---
- Enable support for the Intel(R) IOP Series RAID engines.
-
-endmenu
+endif


2007-08-17 00:48:46

by Adrian Bunk

[permalink] [raw]
Subject: Re: [-mm PATCH] DMA engine kconfig improvements (rev2)

On Thu, Aug 16, 2007 at 05:10:25PM -0700, Shannon Nelson wrote:
> From: Adrian Bunk <[email protected]>
>
> This patch contains the following changes to the DMA engine menus:
>...
> - make it clear in the INTEL_IOATDMA help text that this driver is for
> rare hardware the user most likely doesn't has
>...
> +config INTEL_IOATDMA
> + tristate "Intel I/OAT DMA support"
> + depends on PCI && X86
> + select DMA_ENGINE
> + select DCA
> + help
> + Enable support for the Intel(R) I/OAT DMA engine present
> + in recent chipsets.
>...

It seems the string "Xeon" somehow got lost, or is it now also
available with other hardware?

"in recent Intel Xeon chipsets"?

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2007-08-17 15:59:39

by Shannon Nelson

[permalink] [raw]
Subject: RE: [-mm PATCH] DMA engine kconfig improvements (rev2)

>From: Adrian Bunk [mailto:[email protected]]
>Sent: Thursday, August 16, 2007 5:48 PM
>To: Nelson, Shannon
>Cc: [email protected]; [email protected];
>Williams, Dan J; [email protected]
>Subject: Re: [-mm PATCH] DMA engine kconfig improvements (rev2)
>
>On Thu, Aug 16, 2007 at 05:10:25PM -0700, Shannon Nelson wrote:
>> From: Adrian Bunk <[email protected]>
>>
>> This patch contains the following changes to the DMA engine menus:
>>...
>> - make it clear in the INTEL_IOATDMA help text that this
>driver is for
>> rare hardware the user most likely doesn't has
>>...
>> +config INTEL_IOATDMA
>> + tristate "Intel I/OAT DMA support"
>> + depends on PCI && X86
>> + select DMA_ENGINE
>> + select DCA
>> + help
>> + Enable support for the Intel(R) I/OAT DMA engine present
>> + in recent chipsets.
>>...
>
>It seems the string "Xeon" somehow got lost, or is it now also
>available with other hardware?
>
>"in recent Intel Xeon chipsets"?
>
>cu
>Adrian

Good catch - however, it is probably best not to limit these things.

sln
--
======================================================================
Mr. Shannon Nelson LAN Access Division, Intel Corp.
[email protected] I don't speak for Intel
(503) 712-7659 Parents can't afford to be squeamish.

2007-08-17 16:41:09

by Adrian Bunk

[permalink] [raw]
Subject: Re: [-mm PATCH] DMA engine kconfig improvements (rev2)

On Fri, Aug 17, 2007 at 08:59:29AM -0700, Nelson, Shannon wrote:
> >From: Adrian Bunk [mailto:[email protected]]
> >Sent: Thursday, August 16, 2007 5:48 PM
> >To: Nelson, Shannon
> >Cc: [email protected]; [email protected];
> >Williams, Dan J; [email protected]
> >Subject: Re: [-mm PATCH] DMA engine kconfig improvements (rev2)
> >
> >On Thu, Aug 16, 2007 at 05:10:25PM -0700, Shannon Nelson wrote:
> >> From: Adrian Bunk <[email protected]>
> >>
> >> This patch contains the following changes to the DMA engine menus:
> >>...
> >> - make it clear in the INTEL_IOATDMA help text that this
> >driver is for
> >> rare hardware the user most likely doesn't has
> >>...
> >> +config INTEL_IOATDMA
> >> + tristate "Intel I/OAT DMA support"
> >> + depends on PCI && X86
> >> + select DMA_ENGINE
> >> + select DCA
> >> + help
> >> + Enable support for the Intel(R) I/OAT DMA engine present
> >> + in recent chipsets.
> >>...
> >
> >It seems the string "Xeon" somehow got lost, or is it now also
> >available with other hardware?
> >
> >"in recent Intel Xeon chipsets"?
> >
> >cu
> >Adrian
>
> Good catch - however, it is probably best not to limit these things.

Since the effects of CONFIG_NET_DMA are considered big enough to warrant
all these #ifdef's in the net code it should be made clear for the user
that this is only for hardware he most likely doesn't has.

And it's not about any kind of kconfig dependency, it's simply about the
help text.

> sln

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed