[alsa-devel] [PATCH 0/4] More COMPILE_TEST patches to build all media drivers on x86_64
While now all media drivers build with COMPILE_TEST on i386, there are still a few of them that don't build on x86_64.
Making them compiling there is just a matter of touching Kconfig files.
While here, fix smatch warnings when building the siano driver on big endian architectures.
Mauro Carvalho Chehab (4): media: radio: allow building ISA drivers with COMPILE_TEST media: sta2x11_vip: allow build with COMPILE_TEST sound, media: allow building ISA drivers it with COMPILE_TEST media: siano: get rid of __le32/__le16 cast warnings
drivers/media/common/siano/smsendian.c | 14 ++++++------ drivers/media/pci/sta2x11/Kconfig | 2 +- drivers/media/radio/Kconfig | 41 +++++++++++++++++++++------------- sound/isa/Kconfig | 9 ++++---- 4 files changed, 39 insertions(+), 27 deletions(-)
All sound drivers that don't depend on PNP can be safelly build with COMPILE_TEST, as ISA provides function stubs to be used for such purposes.
As a side effect, with this change, the radio-miropcm20 can now be built outside i386 with COMPILE_TEST.
Signed-off-by: Mauro Carvalho Chehab mchehab@s-opensource.com --- drivers/media/radio/Kconfig | 3 ++- sound/isa/Kconfig | 9 +++++---- 2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig index d363726e9eb1..8fa403c7149e 100644 --- a/drivers/media/radio/Kconfig +++ b/drivers/media/radio/Kconfig @@ -372,7 +372,8 @@ config RADIO_GEMTEK_PROBE
config RADIO_MIROPCM20 tristate "miroSOUND PCM20 radio" - depends on ISA && ISA_DMA_API && VIDEO_V4L2 && SND + depends on ISA || COMPILE_TEST + depends on ISA_DMA_API && VIDEO_V4L2 && SND select SND_ISA select SND_MIRO ---help--- diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig index cb54d9c0a77f..d2a6cdd0395c 100644 --- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -20,7 +20,8 @@ config SND_SB16_DSP
menuconfig SND_ISA bool "ISA sound devices" - depends on ISA && ISA_DMA_API + depends on ISA || COMPILE_TEST + depends on ISA_DMA_API default y help Support for sound devices connected via the ISA bus. @@ -38,7 +39,7 @@ config SND_ADLIB
config SND_AD1816A tristate "Analog Devices SoundPort AD1816A" - depends on PNP + depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART @@ -66,7 +67,7 @@ config SND_AD1848
config SND_ALS100 tristate "Diamond Tech. DT-019x and Avance Logic ALSxxx" - depends on PNP + depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART @@ -107,7 +108,7 @@ config SND_AZT2316
config SND_AZT2320 tristate "Aztech Systems AZT2320" - depends on PNP + depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART
On Fri, 20 Apr 2018 14:32:15 +0200, Mauro Carvalho Chehab wrote:
All sound drivers that don't depend on PNP can be safelly build with COMPILE_TEST, as ISA provides function stubs to be used for such purposes.
As a side effect, with this change, the radio-miropcm20 can now be built outside i386 with COMPILE_TEST.
Signed-off-by: Mauro Carvalho Chehab mchehab@s-opensource.com
drivers/media/radio/Kconfig | 3 ++- sound/isa/Kconfig | 9 +++++---- 2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig index d363726e9eb1..8fa403c7149e 100644 --- a/drivers/media/radio/Kconfig +++ b/drivers/media/radio/Kconfig @@ -372,7 +372,8 @@ config RADIO_GEMTEK_PROBE
config RADIO_MIROPCM20 tristate "miroSOUND PCM20 radio"
- depends on ISA && ISA_DMA_API && VIDEO_V4L2 && SND
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API && VIDEO_V4L2 && SND select SND_ISA select SND_MIRO ---help---
diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig index cb54d9c0a77f..d2a6cdd0395c 100644 --- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -20,7 +20,8 @@ config SND_SB16_DSP
menuconfig SND_ISA bool "ISA sound devices"
- depends on ISA && ISA_DMA_API
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API default y help Support for sound devices connected via the ISA bus.
@@ -38,7 +39,7 @@ config SND_ADLIB
config SND_AD1816A tristate "Analog Devices SoundPort AD1816A"
- depends on PNP
- depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART
Just from curiosity: what's the reason for this explicit CONFIG_ISA dependency? What error did you get?
thanks,
Takashi
@@ -66,7 +67,7 @@ config SND_AD1848
config SND_ALS100 tristate "Diamond Tech. DT-019x and Avance Logic ALSxxx"
- depends on PNP
- depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART
@@ -107,7 +108,7 @@ config SND_AZT2316
config SND_AZT2320 tristate "Aztech Systems AZT2320"
- depends on PNP
- depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART
-- 2.14.3
Em Fri, 20 Apr 2018 14:37:46 +0200 Takashi Iwai tiwai@suse.de escreveu:
On Fri, 20 Apr 2018 14:32:15 +0200, Mauro Carvalho Chehab wrote:
All sound drivers that don't depend on PNP can be safelly build with COMPILE_TEST, as ISA provides function stubs to be used for such purposes.
As a side effect, with this change, the radio-miropcm20 can now be built outside i386 with COMPILE_TEST.
Signed-off-by: Mauro Carvalho Chehab mchehab@s-opensource.com
drivers/media/radio/Kconfig | 3 ++- sound/isa/Kconfig | 9 +++++---- 2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig index d363726e9eb1..8fa403c7149e 100644 --- a/drivers/media/radio/Kconfig +++ b/drivers/media/radio/Kconfig @@ -372,7 +372,8 @@ config RADIO_GEMTEK_PROBE
config RADIO_MIROPCM20 tristate "miroSOUND PCM20 radio"
- depends on ISA && ISA_DMA_API && VIDEO_V4L2 && SND
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API && VIDEO_V4L2 && SND select SND_ISA select SND_MIRO ---help---
diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig index cb54d9c0a77f..d2a6cdd0395c 100644 --- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -20,7 +20,8 @@ config SND_SB16_DSP
menuconfig SND_ISA bool "ISA sound devices"
- depends on ISA && ISA_DMA_API
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API default y help Support for sound devices connected via the ISA bus.
@@ -38,7 +39,7 @@ config SND_ADLIB
config SND_AD1816A tristate "Analog Devices SoundPort AD1816A"
- depends on PNP
- depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART
Just from curiosity: what's the reason for this explicit CONFIG_ISA dependency? What error did you get?
Kconfig complains with "select ISAPNP":
WARNING: unmet direct dependencies detected for ISAPNP Depends on [n]: PNP [=y] && ISA [=n] Selected by [y]: - SND_AD1816A [=y] && SOUND [=y] && !UML && SND [=y] && SND_ISA [=y] && PNP [=y]
Because it is declared as:
config ISAPNP bool "ISA Plug and Play support" depends on ISA
I could have tried to change ISAPNP to depends on ISA || COMPILE_TEST, but I suspect that would touch on yet another subsystem and has the potential to point to other things that need changes, as a lot more drivers will be selected.
Anyway, after a quick look at include/linux/isapnp.h, I suspect that this can work.
I'll run some tests here.
Thanks, Mauro
On Fri, 20 Apr 2018 14:51:29 +0200, Mauro Carvalho Chehab wrote:
Em Fri, 20 Apr 2018 14:37:46 +0200 Takashi Iwai tiwai@suse.de escreveu:
On Fri, 20 Apr 2018 14:32:15 +0200, Mauro Carvalho Chehab wrote:
All sound drivers that don't depend on PNP can be safelly build with COMPILE_TEST, as ISA provides function stubs to be used for such purposes.
As a side effect, with this change, the radio-miropcm20 can now be built outside i386 with COMPILE_TEST.
Signed-off-by: Mauro Carvalho Chehab mchehab@s-opensource.com
drivers/media/radio/Kconfig | 3 ++- sound/isa/Kconfig | 9 +++++---- 2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig index d363726e9eb1..8fa403c7149e 100644 --- a/drivers/media/radio/Kconfig +++ b/drivers/media/radio/Kconfig @@ -372,7 +372,8 @@ config RADIO_GEMTEK_PROBE
config RADIO_MIROPCM20 tristate "miroSOUND PCM20 radio"
- depends on ISA && ISA_DMA_API && VIDEO_V4L2 && SND
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API && VIDEO_V4L2 && SND select SND_ISA select SND_MIRO ---help---
diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig index cb54d9c0a77f..d2a6cdd0395c 100644 --- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -20,7 +20,8 @@ config SND_SB16_DSP
menuconfig SND_ISA bool "ISA sound devices"
- depends on ISA && ISA_DMA_API
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API default y help Support for sound devices connected via the ISA bus.
@@ -38,7 +39,7 @@ config SND_ADLIB
config SND_AD1816A tristate "Analog Devices SoundPort AD1816A"
- depends on PNP
- depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART
Just from curiosity: what's the reason for this explicit CONFIG_ISA dependency? What error did you get?
Kconfig complains with "select ISAPNP":
WARNING: unmet direct dependencies detected for ISAPNP Depends on [n]: PNP [=y] && ISA [=n] Selected by [y]:
- SND_AD1816A [=y] && SOUND [=y] && !UML && SND [=y] && SND_ISA [=y] && PNP [=y]
Because it is declared as:
config ISAPNP bool "ISA Plug and Play support" depends on ISA
I see. Then it'd be better to put this explanations in the changelog as well.
I could have tried to change ISAPNP to depends on ISA || COMPILE_TEST, but I suspect that would touch on yet another subsystem and has the potential to point to other things that need changes, as a lot more drivers will be selected.
Anyway, after a quick look at include/linux/isapnp.h, I suspect that this can work.
I'll run some tests here.
At least a dumb stub is there, so let's hope we can widen the test coverage :)
thanks,
Takashi
Em Fri, 20 Apr 2018 14:58:15 +0200 Takashi Iwai tiwai@suse.de escreveu:
On Fri, 20 Apr 2018 14:51:29 +0200, Mauro Carvalho Chehab wrote:
Em Fri, 20 Apr 2018 14:37:46 +0200 Takashi Iwai tiwai@suse.de escreveu:
On Fri, 20 Apr 2018 14:32:15 +0200, Mauro Carvalho Chehab wrote:
All sound drivers that don't depend on PNP can be safelly build with COMPILE_TEST, as ISA provides function stubs to be used for such purposes.
As a side effect, with this change, the radio-miropcm20 can now be built outside i386 with COMPILE_TEST.
Signed-off-by: Mauro Carvalho Chehab mchehab@s-opensource.com
drivers/media/radio/Kconfig | 3 ++- sound/isa/Kconfig | 9 +++++---- 2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig index d363726e9eb1..8fa403c7149e 100644 --- a/drivers/media/radio/Kconfig +++ b/drivers/media/radio/Kconfig @@ -372,7 +372,8 @@ config RADIO_GEMTEK_PROBE
config RADIO_MIROPCM20 tristate "miroSOUND PCM20 radio"
- depends on ISA && ISA_DMA_API && VIDEO_V4L2 && SND
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API && VIDEO_V4L2 && SND select SND_ISA select SND_MIRO ---help---
diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig index cb54d9c0a77f..d2a6cdd0395c 100644 --- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -20,7 +20,8 @@ config SND_SB16_DSP
menuconfig SND_ISA bool "ISA sound devices"
- depends on ISA && ISA_DMA_API
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API default y help Support for sound devices connected via the ISA bus.
@@ -38,7 +39,7 @@ config SND_ADLIB
config SND_AD1816A tristate "Analog Devices SoundPort AD1816A"
- depends on PNP
- depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART
Just from curiosity: what's the reason for this explicit CONFIG_ISA dependency? What error did you get?
Kconfig complains with "select ISAPNP":
WARNING: unmet direct dependencies detected for ISAPNP Depends on [n]: PNP [=y] && ISA [=n] Selected by [y]:
- SND_AD1816A [=y] && SOUND [=y] && !UML && SND [=y] && SND_ISA [=y] && PNP [=y]
Because it is declared as:
config ISAPNP bool "ISA Plug and Play support" depends on ISA
I see. Then it'd be better to put this explanations in the changelog as well.
Added. See enclosed.
I could have tried to change ISAPNP to depends on ISA || COMPILE_TEST, but I suspect that would touch on yet another subsystem and has the potential to point to other things that need changes, as a lot more drivers will be selected.
Anyway, after a quick look at include/linux/isapnp.h, I suspect that this can work.
I'll run some tests here.
At least a dumb stub is there, so let's hope we can widen the test coverage :)
Yes, that's the idea :-)
Right now, for every patch I receive, I build media drivers for i386 (I just made all of them build on i386), but I'm considering doing such builds on x86_64 instead, as it also enables compat32 code.
Thanks, Mauro
[PATCH v2] sound, media: allow building ISA drivers it with COMPILE_TEST
All sound drivers that don't depend on PNP can be safelly build with COMPILE_TEST, as ISA provides function stubs to be used for such purposes.
As a side effect, with this change, the radio-miropcm20 can now be built outside i386 with COMPILE_TEST.
It should be noticed that ISAPNP currently depends on ISA. So, on drivers that depend on it, we need to add an explicit dependency on ISA, at least until another patch removes it.
Signed-off-by: Mauro Carvalho Chehab mchehab@s-opensource.com
---
v2: only patch description changed, with the addition of a note about ISA explicit dependency on 3 drivers.
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig index d363726e9eb1..8fa403c7149e 100644 --- a/drivers/media/radio/Kconfig +++ b/drivers/media/radio/Kconfig @@ -372,7 +372,8 @@ config RADIO_GEMTEK_PROBE
config RADIO_MIROPCM20 tristate "miroSOUND PCM20 radio" - depends on ISA && ISA_DMA_API && VIDEO_V4L2 && SND + depends on ISA || COMPILE_TEST + depends on ISA_DMA_API && VIDEO_V4L2 && SND select SND_ISA select SND_MIRO ---help--- diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig index cb54d9c0a77f..d2a6cdd0395c 100644 --- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -20,7 +20,8 @@ config SND_SB16_DSP
menuconfig SND_ISA bool "ISA sound devices" - depends on ISA && ISA_DMA_API + depends on ISA || COMPILE_TEST + depends on ISA_DMA_API default y help Support for sound devices connected via the ISA bus. @@ -38,7 +39,7 @@ config SND_ADLIB
config SND_AD1816A tristate "Analog Devices SoundPort AD1816A" - depends on PNP + depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART @@ -66,7 +67,7 @@ config SND_AD1848
config SND_ALS100 tristate "Diamond Tech. DT-019x and Avance Logic ALSxxx" - depends on PNP + depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART @@ -107,7 +108,7 @@ config SND_AZT2316
config SND_AZT2320 tristate "Aztech Systems AZT2320" - depends on PNP + depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART
Em Fri, 20 Apr 2018 09:51:29 -0300 Mauro Carvalho Chehab mchehab@s-opensource.com escreveu:
Em Fri, 20 Apr 2018 14:37:46 +0200 Takashi Iwai tiwai@suse.de escreveu:
On Fri, 20 Apr 2018 14:32:15 +0200, Mauro Carvalho Chehab wrote:
All sound drivers that don't depend on PNP can be safelly build with COMPILE_TEST, as ISA provides function stubs to be used for such purposes.
As a side effect, with this change, the radio-miropcm20 can now be built outside i386 with COMPILE_TEST.
Signed-off-by: Mauro Carvalho Chehab mchehab@s-opensource.com
drivers/media/radio/Kconfig | 3 ++- sound/isa/Kconfig | 9 +++++---- 2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig index d363726e9eb1..8fa403c7149e 100644 --- a/drivers/media/radio/Kconfig +++ b/drivers/media/radio/Kconfig @@ -372,7 +372,8 @@ config RADIO_GEMTEK_PROBE
config RADIO_MIROPCM20 tristate "miroSOUND PCM20 radio"
- depends on ISA && ISA_DMA_API && VIDEO_V4L2 && SND
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API && VIDEO_V4L2 && SND select SND_ISA select SND_MIRO ---help---
diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig index cb54d9c0a77f..d2a6cdd0395c 100644 --- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -20,7 +20,8 @@ config SND_SB16_DSP
menuconfig SND_ISA bool "ISA sound devices"
- depends on ISA && ISA_DMA_API
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API default y help Support for sound devices connected via the ISA bus.
@@ -38,7 +39,7 @@ config SND_ADLIB
config SND_AD1816A tristate "Analog Devices SoundPort AD1816A"
- depends on PNP
- depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART
Just from curiosity: what's the reason for this explicit CONFIG_ISA dependency? What error did you get?
Kconfig complains with "select ISAPNP":
WARNING: unmet direct dependencies detected for ISAPNP Depends on [n]: PNP [=y] && ISA [=n] Selected by [y]:
- SND_AD1816A [=y] && SOUND [=y] && !UML && SND [=y] && SND_ISA [=y] && PNP [=y]
Because it is declared as:
config ISAPNP bool "ISA Plug and Play support" depends on ISA
I could have tried to change ISAPNP to depends on ISA || COMPILE_TEST, but I suspect that would touch on yet another subsystem and has the potential to point to other things that need changes, as a lot more drivers will be selected.
Anyway, after a quick look at include/linux/isapnp.h, I suspect that this can work.
I'll run some tests here.
Yes, removing the ISAPNP dependency if COMPILE_TEST is trivial too.
Just sent a separate patch to be applied after this one with such removal.
I opted to make it as a separate patch as, if the drivers there fail to build on some weird architecture, we won't need to discard this one.
Thanks, Mauro
On Fri, 20 Apr 2018 15:01:22 +0200, Mauro Carvalho Chehab wrote:
Em Fri, 20 Apr 2018 09:51:29 -0300 Mauro Carvalho Chehab mchehab@s-opensource.com escreveu:
Em Fri, 20 Apr 2018 14:37:46 +0200 Takashi Iwai tiwai@suse.de escreveu:
On Fri, 20 Apr 2018 14:32:15 +0200, Mauro Carvalho Chehab wrote:
All sound drivers that don't depend on PNP can be safelly build with COMPILE_TEST, as ISA provides function stubs to be used for such purposes.
As a side effect, with this change, the radio-miropcm20 can now be built outside i386 with COMPILE_TEST.
Signed-off-by: Mauro Carvalho Chehab mchehab@s-opensource.com
drivers/media/radio/Kconfig | 3 ++- sound/isa/Kconfig | 9 +++++---- 2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig index d363726e9eb1..8fa403c7149e 100644 --- a/drivers/media/radio/Kconfig +++ b/drivers/media/radio/Kconfig @@ -372,7 +372,8 @@ config RADIO_GEMTEK_PROBE
config RADIO_MIROPCM20 tristate "miroSOUND PCM20 radio"
- depends on ISA && ISA_DMA_API && VIDEO_V4L2 && SND
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API && VIDEO_V4L2 && SND select SND_ISA select SND_MIRO ---help---
diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig index cb54d9c0a77f..d2a6cdd0395c 100644 --- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -20,7 +20,8 @@ config SND_SB16_DSP
menuconfig SND_ISA bool "ISA sound devices"
- depends on ISA && ISA_DMA_API
- depends on ISA || COMPILE_TEST
- depends on ISA_DMA_API default y help Support for sound devices connected via the ISA bus.
@@ -38,7 +39,7 @@ config SND_ADLIB
config SND_AD1816A tristate "Analog Devices SoundPort AD1816A"
- depends on PNP
- depends on PNP && ISA select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART
Just from curiosity: what's the reason for this explicit CONFIG_ISA dependency? What error did you get?
Kconfig complains with "select ISAPNP":
WARNING: unmet direct dependencies detected for ISAPNP Depends on [n]: PNP [=y] && ISA [=n] Selected by [y]:
- SND_AD1816A [=y] && SOUND [=y] && !UML && SND [=y] && SND_ISA [=y] && PNP [=y]
Because it is declared as:
config ISAPNP bool "ISA Plug and Play support" depends on ISA
I could have tried to change ISAPNP to depends on ISA || COMPILE_TEST, but I suspect that would touch on yet another subsystem and has the potential to point to other things that need changes, as a lot more drivers will be selected.
Anyway, after a quick look at include/linux/isapnp.h, I suspect that this can work.
I'll run some tests here.
Yes, removing the ISAPNP dependency if COMPILE_TEST is trivial too.
Just sent a separate patch to be applied after this one with such removal.
I opted to make it as a separate patch as, if the drivers there fail to build on some weird architecture, we won't need to discard this one.
OK, then feel free to take my ack: Acked-by: Takashi Iwai tiwai@suse.de
But still it'd be better to mention about the CONFIG_ISA change, even though it'll be removed again after the ISAPNP COMIPLE_TEST patch.
thanks,
Takashi
Fixes: dbd775375e7d ("sound, media: allow building ISA drivers it with COMPILE_TEST") Signed-off-by: Fengguang Wu fengguang.wu@intel.com --- cmi8328.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sound/isa/cmi8328.c b/sound/isa/cmi8328.c index d09e456..de6ef1b 100644 --- a/sound/isa/cmi8328.c +++ b/sound/isa/cmi8328.c @@ -192,7 +192,7 @@ static int snd_cmi8328_mixer(struct snd_wss *chip) }
/* find index of an item in "-1"-ended array */ -int array_find(int array[], int item) +static int array_find(int array[], int item) { int i;
@@ -203,7 +203,7 @@ int array_find(int array[], int item) return -1; } /* the same for long */ -int array_find_l(long array[], long item) +static int array_find_l(long array[], long item) { int i;
On Sun, 22 Apr 2018 20:05:03 +0200, kbuild test robot wrote:
Fixes: dbd775375e7d ("sound, media: allow building ISA drivers it with COMPILE_TEST")
It's not actually a bug that was introduced by the commit, but it just made appearing clearer. So I dropped this tag.
Signed-off-by: Fengguang Wu fengguang.wu@intel.com
The fix is applied now. Thanks.
Takashi
Hi Mauro,
I love your patch! Perhaps something to improve:
[auto build test WARNING on linuxtv-media/master] [also build test WARNING on v4.17-rc1 next-20180420] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Mauro-Carvalho-Chehab/media-radio-a... base: git://linuxtv.org/media_tree.git master reproduce: # apt-get install sparse make ARCH=x86_64 allmodconfig make C=1 CF=-D__CHECK_ENDIAN__
sparse warnings: (new ones prefixed by >>)
sound/isa/wss/wss_lib.c:551:14: sparse: restricted snd_pcm_format_t degrades to integer
sound/isa/wss/wss_lib.c:552:14: sparse: restricted snd_pcm_format_t degrades to integer sound/isa/wss/wss_lib.c:553:14: sparse: restricted snd_pcm_format_t degrades to integer sound/isa/wss/wss_lib.c:554:14: sparse: restricted snd_pcm_format_t degrades to integer sound/isa/wss/wss_lib.c:555:14: sparse: restricted snd_pcm_format_t degrades to integer
sound/isa/wss/wss_lib.c:1003:58: sparse: incorrect type in argument 2 (different base types) @@ expected int [signed] format @@ got restricted sndint [signed] format @@
sound/isa/wss/wss_lib.c:1003:58: expected int [signed] format sound/isa/wss/wss_lib.c:1003:58: got restricted snd_pcm_format_t sound/isa/wss/wss_lib.c:1046:58: sparse: incorrect type in argument 2 (different base types) @@ expected int [signed] format @@ got restricted sndint [signed] format @@ sound/isa/wss/wss_lib.c:1046:58: expected int [signed] format sound/isa/wss/wss_lib.c:1046:58: got restricted snd_pcm_format_t --
drivers/media/radio/radio-miropcm20.c:292:21: sparse: expression using sizeof(void) drivers/media/radio/radio-miropcm20.c:292:21: sparse: expression using sizeof(void) drivers/media/radio/radio-miropcm20.c:292:21: sparse: expression using sizeof(void) drivers/media/radio/radio-miropcm20.c:292:21: sparse: expression using sizeof(void) drivers/media/radio/radio-miropcm20.c:292:21: sparse: expression using sizeof(void) drivers/media/radio/radio-miropcm20.c:292:21: sparse: expression using sizeof(void) drivers/media/radio/radio-miropcm20.c:292:21: sparse: expression using sizeof(void)
--
sound/isa/cmi8328.c:195:5: sparse: symbol 'array_find' was not declared. Should it be static? sound/isa/cmi8328.c:206:5: sparse: symbol 'array_find_l' was not declared. Should it be static?
--
sound/isa/sscape.c:477:23: sparse: expression using sizeof(void) sound/isa/sscape.c:477:23: sparse: expression using sizeof(void)
--
sound/isa/msnd/msnd_pinnacle.c:85:32: sparse: incorrect type in assignment (different base types) @@ expected int [signed] play_sample_size @@ got restricted snd_pcm_format_int [signed] play_sample_size @@
sound/isa/msnd/msnd_pinnacle.c:85:32: expected int [signed] play_sample_size sound/isa/msnd/msnd_pinnacle.c:85:32: got restricted snd_pcm_format_t [usertype] <noident>
sound/isa/msnd/msnd_pinnacle.c:88:35: sparse: incorrect type in assignment (different base types) @@ expected int [signed] capture_sample_size @@ got restricted snd_pcm_format_int [signed] capture_sample_size @@
sound/isa/msnd/msnd_pinnacle.c:88:35: expected int [signed] capture_sample_size sound/isa/msnd/msnd_pinnacle.c:88:35: got restricted snd_pcm_format_t [usertype] <noident>
sound/isa/msnd/msnd_pinnacle.c:172:45: sparse: incorrect type in initializer (different address spaces) @@ expected void *pwDSPQData @@ got void [noderef] <avoid *pwDSPQData @@
sound/isa/msnd/msnd_pinnacle.c:172:45: expected void *pwDSPQData sound/isa/msnd/msnd_pinnacle.c:172:45: got void [noderef] asn:2*
sound/isa/msnd/msnd_pinnacle.c:185:62: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] asn:2*addr @@ got sn:2>*addr @@
sound/isa/msnd/msnd_pinnacle.c:185:62: expected void const volatile [noderef] asn:2*addr sound/isa/msnd/msnd_pinnacle.c:185:62: got void *
sound/isa/msnd/msnd_pinnacle.c:344:33: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@
sound/isa/msnd/msnd_pinnacle.c:344:33: expected void *base sound/isa/msnd/msnd_pinnacle.c:344:33: got void [noderef] asn:2*DAPQ sound/isa/msnd/msnd_pinnacle.c:348:33: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@ sound/isa/msnd/msnd_pinnacle.c:348:33: expected void *base sound/isa/msnd/msnd_pinnacle.c:348:33: got void [noderef] asn:2*DARQ sound/isa/msnd/msnd_pinnacle.c:352:33: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@ sound/isa/msnd/msnd_pinnacle.c:352:33: expected void *base sound/isa/msnd/msnd_pinnacle.c:352:33: got void [noderef] asn:2*MODQ sound/isa/msnd/msnd_pinnacle.c:356:33: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@ sound/isa/msnd/msnd_pinnacle.c:356:33: expected void *base sound/isa/msnd/msnd_pinnacle.c:356:33: got void [noderef] asn:2*MIDQ sound/isa/msnd/msnd_pinnacle.c:360:33: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@ sound/isa/msnd/msnd_pinnacle.c:360:33: expected void *base sound/isa/msnd/msnd_pinnacle.c:360:33: got void [noderef] asn:2*DSPQ
sound/isa/msnd/msnd_pinnacle.c:813:1: sparse: Using plain integer as NULL pointer
--
sound/isa/msnd/msnd.c:59:43: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@
sound/isa/msnd/msnd.c:59:43: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:59:43: got void * sound/isa/msnd/msnd.c:60:47: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:60:47: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:60:47: got void * sound/isa/msnd/msnd.c:61:24: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:61:24: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:61:24: got void * sound/isa/msnd/msnd.c:62:24: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:62:24: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:62:24: got void *
sound/isa/msnd/msnd.c:165:40: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@
sound/isa/msnd/msnd.c:165:40: expected void *base sound/isa/msnd/msnd.c:165:40: got void [noderef] asn:2*DSPQ
sound/isa/msnd/msnd.c:274:49: sparse: incorrect type in initializer (different address spaces) @@ expected void *pDAQ @@ got void [noderef] <avoid *pDAQ @@
sound/isa/msnd/msnd.c:274:49: expected void *pDAQ sound/isa/msnd/msnd.c:274:49: got void [noderef] asn:2*
sound/isa/msnd/msnd.c:277:27: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] asn:2*addr @@ got sn:2>*addr @@
sound/isa/msnd/msnd.c:277:27: expected void const volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:277:27: got void *pDAQ sound/isa/msnd/msnd.c:279:47: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:279:47: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:279:47: got void *pDAQ
sound/isa/msnd/msnd.c:327:22: sparse: incorrect type in assignment (different address spaces) @@ expected void *DAQD @@ got void [noderef] <avoid *DAQD @@
sound/isa/msnd/msnd.c:327:22: expected void *DAQD sound/isa/msnd/msnd.c:327:22: got void [noderef] asn:2* sound/isa/msnd/msnd.c:331:54: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:331:54: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:331:54: got void * sound/isa/msnd/msnd.c:337:40: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:337:40: expected void const volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:337:40: got void * sound/isa/msnd/msnd.c:340:60: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:340:60: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:340:60: got void * sound/isa/msnd/msnd.c:373:42: sparse: incorrect type in initializer (different address spaces) @@ expected void *pDAQ @@ got void [noderef] <avoid *pDAQ @@ sound/isa/msnd/msnd.c:373:42: expected void *pDAQ sound/isa/msnd/msnd.c:373:42: got void [noderef] asn:2* sound/isa/msnd/msnd.c:385:30: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:385:30: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:385:30: got void * sound/isa/msnd/msnd.c:386:32: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:386:32: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:386:32: got void * sound/isa/msnd/msnd.c:387:32: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:387:32: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:387:32: got void * sound/isa/msnd/msnd.c:388:53: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:388:53: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:388:53: got void * sound/isa/msnd/msnd.c:389:50: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:389:50: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:389:50: got void * sound/isa/msnd/msnd.c:390:53: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:390:53: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:390:53: got void * sound/isa/msnd/msnd.c:391:57: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:391:57: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:391:57: got void * sound/isa/msnd/msnd.c:392:32: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:392:32: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:392:32: got void *
sound/isa/msnd/msnd.c:424:14: sparse: incorrect type in assignment (different address spaces) @@ expected void *pDAQ @@ got void [noderef] <avoid *pDAQ @@
sound/isa/msnd/msnd.c:424:14: expected void *pDAQ sound/isa/msnd/msnd.c:424:14: got void [noderef] asn:2* sound/isa/msnd/msnd.c:429:58: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:429:58: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:429:58: got void * sound/isa/msnd/msnd.c:430:40: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:430:40: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:430:40: got void * sound/isa/msnd/msnd.c:431:32: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:431:32: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:431:32: got void * sound/isa/msnd/msnd.c:432:56: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:432:56: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:432:56: got void * sound/isa/msnd/msnd.c:433:53: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:433:53: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:433:53: got void * sound/isa/msnd/msnd.c:434:56: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:434:56: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:434:56: got void * sound/isa/msnd/msnd.c:435:59: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:435:59: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:435:59: got void * sound/isa/msnd/msnd.c:436:32: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:436:32: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:436:32: got void *
sound/isa/msnd/msnd.c:488:27: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char *dma_area @@ got void [nounsigned char *dma_area @@
sound/isa/msnd/msnd.c:488:27: expected unsigned char *dma_area sound/isa/msnd/msnd.c:488:27: got void [noderef] asn:2*mappedbase sound/isa/msnd/msnd.c:511:42: sparse: incorrect type in initializer (different address spaces) @@ expected void *pDAQ @@ got void [noderef] <avoid *pDAQ @@ sound/isa/msnd/msnd.c:511:42: expected void *pDAQ sound/isa/msnd/msnd.c:511:42: got void [noderef] asn:2* sound/isa/msnd/msnd.c:518:53: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:518:53: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:518:53: got void * sound/isa/msnd/msnd.c:519:50: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:519:50: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:519:50: got void * sound/isa/msnd/msnd.c:520:53: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:520:53: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:520:53: got void * sound/isa/msnd/msnd.c:592:27: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char *dma_area @@ got void [nounsigned char *dma_area @@ sound/isa/msnd/msnd.c:592:27: expected unsigned char *dma_area sound/isa/msnd/msnd.c:592:27: got void [noderef] asn:2* sound/isa/msnd/msnd.c:657:50: sparse: incorrect type in initializer (different address spaces) @@ expected void *pDAQ @@ got void [noderef] <avoid *pDAQ @@ sound/isa/msnd/msnd.c:657:50: expected void *pDAQ sound/isa/msnd/msnd.c:657:50: got void [noderef] asn:2* sound/isa/msnd/msnd.c:664:56: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:664:56: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:664:56: got void * sound/isa/msnd/msnd.c:665:53: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:665:53: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:665:53: got void * sound/isa/msnd/msnd.c:666:56: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] asn:2*addr @@ got sn:2>*addr @@ sound/isa/msnd/msnd.c:666:56: expected void volatile [noderef] asn:2*addr sound/isa/msnd/msnd.c:666:56: got void * --
sound/isa/msnd/msnd_midi.c:122:49: sparse: incorrect type in initializer (different address spaces) @@ expected void *pwMIDQData @@ got void [noderef] <avoid *pwMIDQData @@
sound/isa/msnd/msnd_midi.c:122:49: expected void *pwMIDQData sound/isa/msnd/msnd_midi.c:122:49: got void [noderef] asn:2*
sound/isa/msnd/msnd_midi.c:132:54: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] asn:2*addr @@ got sn:2>*addr @@
sound/isa/msnd/msnd_midi.c:132:54: expected void const volatile [noderef] asn:2*addr sound/isa/msnd/msnd_midi.c:132:54: got void * --
sound/isa/msnd/msnd_pinnacle.c:85:32: sparse: incorrect type in assignment (different base types) @@ expected int [signed] play_sample_size @@ got restricted snd_pcm_format_int [signed] play_sample_size @@
sound/isa/msnd/msnd_pinnacle.c:85:32: expected int [signed] play_sample_size sound/isa/msnd/msnd_pinnacle.c:85:32: got restricted snd_pcm_format_t [usertype] <noident>
sound/isa/msnd/msnd_pinnacle.c:88:35: sparse: incorrect type in assignment (different base types) @@ expected int [signed] capture_sample_size @@ got restricted snd_pcm_format_int [signed] capture_sample_size @@
sound/isa/msnd/msnd_pinnacle.c:88:35: expected int [signed] capture_sample_size sound/isa/msnd/msnd_pinnacle.c:88:35: got restricted snd_pcm_format_t [usertype] <noident>
sound/isa/msnd/msnd_pinnacle.c:172:45: sparse: incorrect type in initializer (different address spaces) @@ expected void *pwDSPQData @@ got void [noderef] <avoid *pwDSPQData @@
sound/isa/msnd/msnd_pinnacle.c:172:45: expected void *pwDSPQData sound/isa/msnd/msnd_pinnacle.c:172:45: got void [noderef] asn:2*
sound/isa/msnd/msnd_pinnacle.c:185:62: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] asn:2*addr @@ got sn:2>*addr @@
sound/isa/msnd/msnd_pinnacle.c:185:62: expected void const volatile [noderef] asn:2*addr sound/isa/msnd/msnd_pinnacle.c:185:62: got void *
sound/isa/msnd/msnd_pinnacle.c:344:33: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@
sound/isa/msnd/msnd_pinnacle.c:344:33: expected void *base sound/isa/msnd/msnd_pinnacle.c:344:33: got void [noderef] asn:2*DAPQ sound/isa/msnd/msnd_pinnacle.c:348:33: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@ sound/isa/msnd/msnd_pinnacle.c:348:33: expected void *base sound/isa/msnd/msnd_pinnacle.c:348:33: got void [noderef] asn:2*DARQ sound/isa/msnd/msnd_pinnacle.c:352:33: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@ sound/isa/msnd/msnd_pinnacle.c:352:33: expected void *base sound/isa/msnd/msnd_pinnacle.c:352:33: got void [noderef] asn:2*MODQ sound/isa/msnd/msnd_pinnacle.c:356:33: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@ sound/isa/msnd/msnd_pinnacle.c:356:33: expected void *base sound/isa/msnd/msnd_pinnacle.c:356:33: got void [noderef] asn:2*MIDQ sound/isa/msnd/msnd_pinnacle.c:360:33: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *base @@ got void [noderef] <avoid *base @@ sound/isa/msnd/msnd_pinnacle.c:360:33: expected void *base sound/isa/msnd/msnd_pinnacle.c:360:33: got void [noderef] asn:2*DSPQ --
sound/isa/sb/emu8000_pcm.c:541:9: sparse: cast removes address space of expression
--
sound/isa/sb/sb16_csp.c:330:14: sparse: cast to restricted __le32
sound/isa/sb/sb16_csp.c:335:31: sparse: cast to restricted __le32
sound/isa/sb/sb16_csp.c:358:35: sparse: cast to restricted __le16
sound/isa/sb/sb16_csp.c:384:73: sparse: cast to restricted __le32 sound/isa/sb/sb16_csp.c:388:45: sparse: cast to restricted __le32 sound/isa/sb/sb16_csp.c:400:52: sparse: cast to restricted __le32 sound/isa/sb/sb16_csp.c:407:35: sparse: cast to restricted __le16 sound/isa/sb/sb16_csp.c:408:33: sparse: cast to restricted __le16 sound/isa/sb/sb16_csp.c:410:37: sparse: cast to restricted __le16 sound/isa/sb/sb16_csp.c:438:33: sparse: cast to restricted __le16 sound/isa/sb/sb16_csp.c:443:43: sparse: cast to restricted __le16 sound/isa/sb/sb16_csp.c:444:40: sparse: cast to restricted __le16 sound/isa/sb/sb16_csp.c:445:40: sparse: cast to restricted __le16 sound/isa/sb/sb16_csp.c:345:49: sparse: cast to restricted __le32
sound/isa/sb/sb16_csp.c:743:22: sparse: restricted snd_pcm_format_t degrades to integer
sound/isa/sb/sb16_csp.c:748:22: sparse: restricted snd_pcm_format_t degrades to integer sound/isa/sb/sb16_csp.c:753:22: sparse: restricted snd_pcm_format_t degrades to integer --
sound/isa/sb/sb16_main.c:61:44: sparse: restricted snd_pcm_format_t degrades to integer
sound/isa/sb/sb16_main.c:69:50: sparse: restricted snd_pcm_format_t degrades to integer
sound/isa/sb/sb16_main.c:80:63: sparse: incorrect type in argument 2 (different base types) @@ expected int [signed] pcm_sfmt @@ got restricted snd_pcm_format_int [signed] pcm_sfmt @@
sound/isa/sb/sb16_main.c:80:63: expected int [signed] pcm_sfmt sound/isa/sb/sb16_main.c:80:63: got restricted snd_pcm_format_t [usertype] format sound/isa/sb/sb16_main.c:109:44: sparse: restricted snd_pcm_format_t degrades to integer sound/isa/sb/sb16_main.c:118:63: sparse: incorrect type in argument 2 (different base types) @@ expected int [signed] pcm_sfmt @@ got restricted snd_pcm_format_int [signed] pcm_sfmt @@ sound/isa/sb/sb16_main.c:118:63: expected int [signed] pcm_sfmt sound/isa/sb/sb16_main.c:118:63: got restricted snd_pcm_format_t [usertype] format
Please review and possibly fold the followup patch.
vim +551 sound/isa/wss/wss_lib.c
^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 542 7779f75f sound/isa/wss/wss_lib.c Krzysztof Helt 2008-07-31 543 static unsigned char snd_wss_get_format(struct snd_wss *chip, ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 544 int format, ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 545 int channels) ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 546 { ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 547 unsigned char rformat; ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 548 ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 549 rformat = CS4231_LINEAR_8; ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 550 switch (format) { ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 @551 case SNDRV_PCM_FORMAT_MU_LAW: rformat = CS4231_ULAW_8; break; ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 552 case SNDRV_PCM_FORMAT_A_LAW: rformat = CS4231_ALAW_8; break; ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 553 case SNDRV_PCM_FORMAT_S16_LE: rformat = CS4231_LINEAR_16; break; ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 554 case SNDRV_PCM_FORMAT_S16_BE: rformat = CS4231_LINEAR_16_BIG; break; ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 555 case SNDRV_PCM_FORMAT_IMA_ADPCM: rformat = CS4231_ADPCM_16; break; ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 556 } ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 557 if (channels > 1) ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 558 rformat |= CS4231_STEREO; ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 559 #if 0 76d498e4 sound/isa/wss/wss_lib.c Takashi Iwai 2009-02-05 560 snd_printk(KERN_DEBUG "get_format: 0x%x (mode=0x%x)\n", format, mode); ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 561 #endif ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 562 return rformat; ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 563 } ^1da177e sound/isa/cs423x/cs4231_lib.c Linus Torvalds 2005-04-16 564
:::::: The code at line 551 was first introduced by commit :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
:::::: TO: Linus Torvalds torvalds@ppc970.osdl.org :::::: CC: Linus Torvalds torvalds@ppc970.osdl.org
--- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
On Sun, 22 Apr 2018 20:05:03 +0200, kbuild test robot wrote:
Hi Mauro,
I love your patch! Perhaps something to improve:
[auto build test WARNING on linuxtv-media/master] [also build test WARNING on v4.17-rc1 next-20180420] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Mauro-Carvalho-Chehab/media-radio-a... base: git://linuxtv.org/media_tree.git master reproduce: # apt-get install sparse make ARCH=x86_64 allmodconfig make C=1 CF=-D__CHECK_ENDIAN__
sparse warnings: (new ones prefixed by >>)
sound/isa/wss/wss_lib.c:551:14: sparse: restricted snd_pcm_format_t degrades to integer
....
Oh, so many minor issues surfaced by COMPILE_TEST. But these are all legacy ISA drivers, so I'll work on and take only safe fixes that are obvious and trivial, if any.
thanks,
Takashi
participants (4)
-
kbuild test robot
-
Mauro Carvalho Chehab
-
Mauro Carvalho Chehab
-
Takashi Iwai