commit: http://blackfin.uclinux.org/git/?p=linux-kernel;a=commitdiff;h=bcb2d3e0e554c930999c7d90355fd64d464592be
branch: http://blackfin.uclinux.org/git/?p=linux-kernel;a=shortlog;h=refs/heads/2011R1

It has been pointed out previously by some, that the firmware subsytem is not
the right place for the sigma studio firmware loader.
Since the sigma dsp is currently only used in audio products. Also we are aiming
for a thighter integration into the ASoC framework in the future, with support
for ALSA controls for firmware parameters and support dynamic power management
as well. So the natural choice for the Sigma studio firmware loader is the ASoC
subsytem.

Signed-off-by: Lars-Peter Clausen <[email protected]>
---
 drivers/firmware/Kconfig                       |   12 ------------
 drivers/firmware/Makefile                      |    1 -
 sound/soc/codecs/Kconfig                       |   12 ++++++++----
 sound/soc/codecs/Makefile                      |    2 ++
 sound/soc/codecs/adau1701.c                    |    2 +-
 {drivers/firmware => sound/soc/codecs}/sigma.c |    3 ++-
 {include/linux => sound/soc/codecs}/sigma.h    |    0
 7 files changed, 13 insertions(+), 19 deletions(-)

diff --git a/drivers/firmware/Kconfig b/drivers/firmware/Kconfig
index efba163..9b00072 100644
--- a/drivers/firmware/Kconfig
+++ b/drivers/firmware/Kconfig
@@ -145,18 +145,6 @@ config ISCSI_IBFT
 	  detect iSCSI boot parameters dynamically during system boot, say Y.
 	  Otherwise, say N.
 
-config SIGMA
-	tristate "SigmaStudio firmware loader"
-	depends on I2C
-	select CRC32
-	default n
-	help
-	  Enable helper functions for working with Analog Devices SigmaDSP
-	  parts and binary firmwares produced by Analog Devices SigmaStudio.
-
-	  If unsure, say N here.  Drivers that need these helpers will select
-	  this option automatically.
-
 source "drivers/firmware/google/Kconfig"
 
 endmenu
diff --git a/drivers/firmware/Makefile b/drivers/firmware/Makefile
index 47338c9..5a7e273 100644
--- a/drivers/firmware/Makefile
+++ b/drivers/firmware/Makefile
@@ -12,6 +12,5 @@ obj-$(CONFIG_DMIID)		+= dmi-id.o
 obj-$(CONFIG_ISCSI_IBFT_FIND)	+= iscsi_ibft_find.o
 obj-$(CONFIG_ISCSI_IBFT)	+= iscsi_ibft.o
 obj-$(CONFIG_FIRMWARE_MEMMAP)	+= memmap.o
-obj-$(CONFIG_SIGMA)		+= sigma.o
 
 obj-$(CONFIG_GOOGLE_FIRMWARE)	+= google/
diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
index 6c635f7..843eb01 100644
--- a/sound/soc/codecs/Kconfig
+++ b/sound/soc/codecs/Kconfig
@@ -138,15 +138,15 @@ config SND_SOC_AD73311
 config SND_SOC_AD74111
 	tristate
 
-config SND_SOC_ADAU1373
+config SND_SOC_ADAU1701
 	tristate
+	select SND_SOC_SIGMA
 
-config SND_SOC_ADAV80X
+config SND_SOC_ADAU1373
 	tristate
 
-config SND_SOC_ADAU1701
+config SND_SOC_ADAV80X
 	tristate
-	select SIGMA
 
 config SND_SOC_ADS117X
 	tristate
@@ -224,6 +224,10 @@ config SND_SOC_PCM3008
 config SND_SOC_SGTL5000
 	tristate
 
+config SND_SOC_SIGMA
+	tristate
+	select CRC32
+
 config SND_SOC_SN95031
 	tristate
 
diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile
index 330acb9..c5d6ecd 100644
--- a/sound/soc/codecs/Makefile
+++ b/sound/soc/codecs/Makefile
@@ -28,6 +28,7 @@ snd-soc-max9850-objs := max9850.o
 snd-soc-pcm3008-objs := pcm3008.o
 snd-soc-sgtl5000-objs := sgtl5000.o
 snd-soc-alc5623-objs := alc5623.o
+snd-soc-sigma-objs := sigma.o
 snd-soc-sn95031-objs := sn95031.o
 snd-soc-spdif-objs := spdif_transciever.o
 snd-soc-ssm2602-objs := ssm2602.o
@@ -123,6 +124,7 @@ obj-$(CONFIG_SND_SOC_MAX98095)	+= snd-soc-max98095.o
 obj-$(CONFIG_SND_SOC_MAX9850)	+= snd-soc-max9850.o
 obj-$(CONFIG_SND_SOC_PCM3008)	+= snd-soc-pcm3008.o
 obj-$(CONFIG_SND_SOC_SGTL5000)  += snd-soc-sgtl5000.o
+obj-$(CONFIG_SND_SOC_SIGMA)	+= snd-soc-sigma.o
 obj-$(CONFIG_SND_SOC_SN95031)	+=snd-soc-sn95031.o
 obj-$(CONFIG_SND_SOC_SPDIF)	+= snd-soc-spdif.o
 obj-$(CONFIG_SND_SOC_SSM2602)	+= snd-soc-ssm2602.o
diff --git a/sound/soc/codecs/adau1701.c b/sound/soc/codecs/adau1701.c
index 2758d5f..e718dc9 100644
--- a/sound/soc/codecs/adau1701.c
+++ b/sound/soc/codecs/adau1701.c
@@ -12,13 +12,13 @@
 #include <linux/init.h>
 #include <linux/i2c.h>
 #include <linux/delay.h>
-#include <linux/sigma.h>
 #include <linux/slab.h>
 #include <sound/core.h>
 #include <sound/pcm.h>
 #include <sound/pcm_params.h>
 #include <sound/soc.h>
 
+#include "sigma.h"
 #include "adau1701.h"
 
 #define ADAU1701_DSPCTRL	0x1c
diff --git a/drivers/firmware/sigma.c b/sound/soc/codecs/sigma.c
similarity index 99%
rename from drivers/firmware/sigma.c
rename to sound/soc/codecs/sigma.c
index f10fc52..b209f6f 100644
--- a/drivers/firmware/sigma.c
+++ b/sound/soc/codecs/sigma.c
@@ -12,7 +12,8 @@
 #include <linux/kernel.h>
 #include <linux/i2c.h>
 #include <linux/module.h>
-#include <linux/sigma.h>
+
+#include "sigma.h"
 
 /* Return: 0==OK, <0==error, =1 ==no more actions */
 static int
diff --git a/include/linux/sigma.h b/sound/soc/codecs/sigma.h
similarity index 100%
rename from include/linux/sigma.h
rename to sound/soc/codecs/sigma.h
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to