2009-11-06 21:53:59

by Philip Prindeville

[permalink] [raw]
Subject: [PATCH] Don't build SSB modules when SSB isn't present

From: Philip A Prindeville <[email protected]>

If you're building for a platform that has (for example) no SSB,
then having a single knob to turn to disable this is a major
win. Especially if more devices get add later that are SSB-based.

Tested.

Signed-off-by: Philip A Prindeville <[email protected]>
---
config.mk | 14 ++++++++------
1 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/config.mk b/config.mk
index ce70832..49be2d0 100644
--- a/config.mk
+++ b/config.mk
@@ -9,6 +9,8 @@ ifeq ($(wildcard $(KLIB_BUILD)/.config),)
CONFIG_PCI=y
CONFIG_USB=y
CONFIG_PCMCIA=y
+ CONFIG_SSB_POSSIBLE=y
+ CONFIG_SSB=m
else
include $(KLIB_BUILD)/.config
endif
@@ -218,6 +220,11 @@ CONFIG_IPW2200_QOS=y
#
# % echo 1 > /sys/bus/pci/drivers/ipw2200/*/rtap_iface

+ifneq ($(CONFIG_SSB),)
+# Sonics Silicon Backplane
+CONFIG_SSB_SPROM=y
+# CONFIG_SSB_DEBUG=y
+
CONFIG_SSB_BLOCKIO=y
CONFIG_SSB_PCIHOST_POSSIBLE=y
CONFIG_SSB_PCIHOST=y
@@ -229,6 +236,7 @@ endif
# CONFIG_SSB_DEBUG=y
CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
CONFIG_SSB_DRIVER_PCICORE=y
+endif

CONFIG_P54_PCI=m

@@ -397,12 +405,6 @@ CONFIG_WL1251_SPI=m
CONFIG_WL1251_SDIO=m
CONFIG_WL1271=m

-# Sonics Silicon Backplane
-CONFIG_SSB_POSSIBLE=y
-CONFIG_SSB=m
-CONFIG_SSB_SPROM=y
-# CONFIG_SSB_DEBUG=y
-
ifdef CONFIG_COMPAT_WIRELESS_27
CONFIG_LIBERTAS=n
else


2009-11-13 19:29:01

by Luis R. Rodriguez

[permalink] [raw]
Subject: Re: [PATCH] Don't build SSB modules when SSB isn't present

On Fri, Nov 6, 2009 at 1:53 PM, Philip A. Prindeville
<[email protected]> wrote:
> From: Philip A Prindeville <[email protected]>
>
> If you're building for a platform that has (for example) no SSB,
> then having a single knob to turn to disable this is a major
> win.  Especially if more devices get add later that are SSB-based.

Applied, thanks. Just one comment below.

> Signed-off-by: Philip A Prindeville <[email protected]>
> ---
>  config.mk |   14 ++++++++------
>  1 files changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/config.mk b/config.mk
> index ce70832..49be2d0 100644
> --- a/config.mk
> +++ b/config.mk
> @@ -9,6 +9,8 @@ ifeq ($(wildcard $(KLIB_BUILD)/.config),)
>  CONFIG_PCI=y
>  CONFIG_USB=y
>  CONFIG_PCMCIA=y
> + CONFIG_SSB_POSSIBLE=y
> + CONFIG_SSB=m

This works only if you don't have SSB on your kernel as otherwise I
believe regardless of this you'll end up coming ssb. So if you want to
enable not compiling ssb we'd have to use another config option like
CONFIG_COMPAT_26_SSB and use that in the makefile. But another easier
option is to just enable *only* want you want in compat-wireless by
using ./scripts/driver-select. In the future we may want to take
porting the kernel's existing kconfig over and using mconf for example
to enable menuconfig. But to get that working right we'd need to
invent our own kconfig entries and replaces the kernels's with our
own. An issue might also be in trying to ensure the new invented
kconfig won't bust a kernel with its own kconfig entries.

Luis