Browse Source

[PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystem

Commit 2d4ba4a3b9aef95d328d74a17ae84f8d658059e2 introduced a dependency
that was never meant to exist when the ac97_bus.c module was created.
Move ac97_bus.c up the directory hierarchy to make sure it is built when
selected even if sound is configured out so things work as originally
intended.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Nicolas Pitre 18 years ago
parent
commit
e1036502e5
6 changed files with 13 additions and 8 deletions
  1. 1 1
      drivers/input/touchscreen/Kconfig
  2. 8 0
      sound/Kconfig
  3. 3 0
      sound/Makefile
  4. 0 0
      sound/ac97_bus.c
  5. 1 5
      sound/drivers/Kconfig
  6. 0 2
      sound/pci/ac97/Makefile

+ 1 - 1
drivers/input/touchscreen/Kconfig

@@ -146,7 +146,7 @@ config TOUCHSCREEN_TOUCHWIN
 
 
 config TOUCHSCREEN_UCB1400
 config TOUCHSCREEN_UCB1400
 	tristate "Philips UCB1400 touchscreen"
 	tristate "Philips UCB1400 touchscreen"
-	depends on SND_AC97_BUS
+	select AC97_BUS
 	help
 	help
 	  This enables support for the Philips UCB1400 touchscreen interface.
 	  This enables support for the Philips UCB1400 touchscreen interface.
 	  The UCB1400 is an AC97 audio codec.  The touchscreen interface
 	  The UCB1400 is an AC97 audio codec.  The touchscreen interface

+ 8 - 0
sound/Kconfig

@@ -93,4 +93,12 @@ endmenu
 
 
 endif
 endif
 
 
+config AC97_BUS
+	tristate
+	help
+	  This is used to avoid config and link hard dependencies between the
+	  sound subsystem and other function drivers completely unrelated to
+	  sound although they're sharing the AC97 bus. Concerned drivers
+	  should "select" this.
+
 endmenu
 endmenu

+ 3 - 0
sound/Makefile

@@ -8,6 +8,9 @@ obj-$(CONFIG_DMASOUND) += oss/
 obj-$(CONFIG_SND) += core/ i2c/ drivers/ isa/ pci/ ppc/ arm/ synth/ usb/ sparc/ parisc/ pcmcia/ mips/
 obj-$(CONFIG_SND) += core/ i2c/ drivers/ isa/ pci/ ppc/ arm/ synth/ usb/ sparc/ parisc/ pcmcia/ mips/
 obj-$(CONFIG_SND_AOA) += aoa/
 obj-$(CONFIG_SND_AOA) += aoa/
 
 
+# This one must be compilable even if sound is configured out
+obj-$(CONFIG_AC97_BUS) += ac97_bus.o
+
 ifeq ($(CONFIG_SND),y)
 ifeq ($(CONFIG_SND),y)
   obj-y += last.o
   obj-y += last.o
 endif
 endif

+ 0 - 0
sound/pci/ac97/ac97_bus.c → sound/ac97_bus.c


+ 1 - 5
sound/drivers/Kconfig

@@ -26,11 +26,7 @@ config SND_VX_LIB
 config SND_AC97_CODEC
 config SND_AC97_CODEC
 	tristate
 	tristate
 	select SND_PCM
 	select SND_PCM
-	select SND_AC97_BUS
-
-config SND_AC97_BUS
-	tristate
-
+	select AC97_BUS
 
 
 config SND_DUMMY
 config SND_DUMMY
 	tristate "Dummy (/dev/null) soundcard"
 	tristate "Dummy (/dev/null) soundcard"

+ 0 - 2
sound/pci/ac97/Makefile

@@ -10,11 +10,9 @@ snd-ac97-codec-objs += ac97_proc.o
 endif
 endif
 
 
 snd-ak4531-codec-objs := ak4531_codec.o
 snd-ak4531-codec-objs := ak4531_codec.o
-snd-ac97-bus-objs := ac97_bus.o
 
 
 # Toplevel Module Dependency
 # Toplevel Module Dependency
 obj-$(CONFIG_SND_AC97_CODEC) += snd-ac97-codec.o
 obj-$(CONFIG_SND_AC97_CODEC) += snd-ac97-codec.o
 obj-$(CONFIG_SND_ENS1370) += snd-ak4531-codec.o
 obj-$(CONFIG_SND_ENS1370) += snd-ak4531-codec.o
-obj-$(CONFIG_SND_AC97_BUS) += snd-ac97-bus.o
 
 
 obj-m := $(sort $(obj-m))
 obj-m := $(sort $(obj-m))