[linux-dvb] [PATCH] Some changes to the Kbuild help

Michael Krufky mkrufky at linuxtv.org
Wed Mar 29 15:26:42 CEST 2006


Trent Piepho wrote:
> This patch makes a few changes to the Kbuild files:
> 
> 1) Add firmware download comments for or51211 and or51132
> 2) Fix PCI ID typo in CX88 audio driver

I like 1) and 2)

> 3) Clarify how cx88-dvb frontend support relates to DVB frontend support

Please see my comments inline below.

> 4) Add DVB-S/DVB-T/ATSC partitions in cx88 frontend support list and order
>    frontends the same as in the "Customise DVB Frontends" menu
> 5) Add list of current cards supported by each cx88 frontend

Yeah... this could be nice, but I am against it, for a few reasons...

I don't want us all to have to constantly update Kconfig each time a new 
card is added. Nobody is going to want to do this, and then the job 
falls on Mauro or I to keep it updated. I would simply remove the card 
names.

You might say, "well, this is to help those users that don't know which 
frontend to select."  To that, I say -- Those users should just choose 
the option to select all frontends.  In the past, the user had no 
choice, and was forced to compile support for all.  I only added this 
option for advanced frontend support very recently.  If the user wants 
to tweak the kernel to this extent, then the user cn look on the card to 
find out which demod chip is being used his/her self.

> 6) cx88 VP-3054 support needs cx88 MT352 support

Please leave this alone.  As it stands right now:

config VIDEO_CX88_VP3054
	tristate "VP-3054 Secondary I2C Bus Support"
	default m
	depends on DVB_MT352

This, as it stands, is correct.  Do not use the 
VIDEO_CX88_DVB_FRONTENDFOO symbols for anything else.  These are only 
dependency links to allow separate frontend selection, and no other 
symbols should depens or select these.  To select a frontend, select 
DVB_FRONTENDFOO.

Also, if we were to actually allow these changes (which I would prefer 
not) then the same kinds of changes would also need to be applied to 
saa7134-dvb.  Please, this just creates a maintenance headache -- let's 
just not.

> 
> 
> ------------------------------------------------------------------------
> 
> # HG changeset patch
> # User xyzzy at t2.domain.actdsltmp
> # Node ID 0b920453b7a5902816588ded1ccfbfae1cf1d0e1
> # Parent  6396b65320e33fa6507622cbf58f6c0d2bf0da1f
> A few improvements to the Kconfig help
> 
> From: Trent Piepho <xyzzy at speakeasy.org>
> 
> A few changes to the kernel build help:
> 1) Add firmware download comments for or51211 and or51132
> 2) Fix PCI ID typo in CX88 audio driver
> 3) Clarify how cx88-dvb frontend support relates to DVB frontend support
> 4) Add DVB-S/DVB-T/ATSC partitions in cx88 frontend support list and order
>    frontends the same as in the "Customise DVB Frontends" menu
> 5) Add list of current cards supported by each cx88 frontend
> 6) cx88 VP-3054 support needs cx88 MT352 support
> 
> Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
> 
> diff -r 6396b65320e3 -r 0b920453b7a5 linux/drivers/media/dvb/frontends/Kconfig
> --- a/linux/drivers/media/dvb/frontends/Kconfig	Mon Mar 27 13:31:49 2006 -0800
> +++ b/linux/drivers/media/dvb/frontends/Kconfig	Tue Mar 28 21:57:49 2006 -0800
> @@ -181,6 +181,11 @@ config DVB_OR51211
>  	help
>  	  An ATSC 8VSB tuner module. Say Y when you want to support this frontend.
>  
> +	  This driver needs external firmware. Please use the command
> +	  "<kerneldir>/Documentation/dvb/get_dvb_firmware or51211" to
> +	  download it, and then copy it to /usr/lib/hotplug/firmware
> +	  or /lib/firmware (depending on configuration of firmware hotplug).
> +
>  config DVB_OR51132
>  	tristate "Oren OR51132 based"
>  	depends on DVB_CORE
> @@ -189,6 +194,13 @@ config DVB_OR51132
>  	  An ATSC 8VSB and QAM64/256 tuner module. Say Y when you want
>  	  to support this frontend.
>  
> +	  This driver needs external firmware. Please use the commands
> +	  "<kerneldir>/Documentation/dvb/get_dvb_firmware or51132_vsb" and/or
> +	  "<kerneldir>/Documentation/dvb/get_dvb_firmware or51132_qam" to
> +	  download firmwares for 8VSB and QAM64/256, respectively. Copy them to
> +	  /usr/lib/hotplug/firmware or /lib/firmware (depending on
> +	  configuration of firmware hotplug).
> +
>  config DVB_BCM3510
>  	tristate "Broadcom BCM3510"
>  	depends on DVB_CORE
> diff -r 6396b65320e3 -r 0b920453b7a5 linux/drivers/media/video/cx88/Kconfig
> --- a/linux/drivers/media/video/cx88/Kconfig	Mon Mar 27 13:31:49 2006 -0800
> +++ b/linux/drivers/media/video/cx88/Kconfig	Tue Mar 28 21:57:49 2006 -0800
> @@ -25,7 +25,7 @@ config VIDEO_CX88_ALSA
>  
>  	  It only works with boards with function 01 enabled.
>  	  To check if your board supports, use lspci -n.
> -	  If supported, you should see 1471:8801 or 1471:8811
> +	  If supported, you should see 14f1:8801 or 14f1:8811
>  	  PCI device.
>  
>  	  To compile this driver as a module, choose M here: the


--- I approve everything ABOVE this line, and I NACK everything below it


> @@ -44,6 +44,15 @@ config VIDEO_CX88_DVB
>  
>  	  You must also select one or more DVB/ATSC demodulators.
>  	  If you are unsure which you need, choose all of them.
> +
> +	  All selected demodulators will be loaded by the cx88-dvb
> +	  driver, even those which your card does not need.
> +
> +	  Demodulators selected here will automatically be enabled
> +	  under Digital Video Broadcasting Devices -> Customise DVB
> +	  Frontends.  Demodulators which are not enabled here, but
> +	  are enabled under "Customise DVB Frontends" will still NOT
> +	  be supported by cx2388x based cards.

This is just wrong.  If it is chosen in either menu, then it is enabled.

I will say it again -- the CX88_DVB_FRONTENDFOO symbols are only boolean 
dependency links -- the actual driver code does NOT test for these, only 
DVB_FRONTENDFOO is what counts.  VIDEO_CX88_DVB_FRONTENDFOO selects 
DVB_FRONTENDFOO, and thats how it works.  I would rather drop this hunk.

>  
>  config VIDEO_CX88_DVB_ALL_FRONTENDS
>  	bool "Build all supported frontends for cx2388x based TV cards"
> @@ -64,6 +73,41 @@ config VIDEO_CX88_DVB_ALL_FRONTENDS
>  
>  	  If you are unsure, choose Y.
>  
> +comment "DVB-S (satellite) frontends"
> +	depends on VIDEO_CX88_DVB && !VIDEO_CX88_DVB_ALL_FRONTENDS
> +

^^ These partitions I do kinda like, but still -- NACK.. The dvb 
frontend section of the menus IS organized this way, but to introduce 
something like this into the card drivers is way too complex and I think 
it is overkill.  Not to mention how much more complicated this makes the 
Kconfig file become.

Also... You cant do any of this stuff to CX88_DVB without also doing it 
for SAA7134-DVB.

> +config VIDEO_CX88_DVB_CX24123
> +	bool "Conexant CX24123 DVB-S Support"
> +	default y
> +	depends on VIDEO_CX88_DVB && !VIDEO_CX88_DVB_ALL_FRONTENDS
> +	select DVB_CX24123
> +	---help---
> +	  This adds DVB-S support for cards based on the
> +	  Connexant 2388x chip and the CX24123 demodulator.
> +
> +	  Cards which may use this combination include:
> +	    Hauppauge WinTV Nova-S Plus
> +	    Hauppauge WinTV Nova-SE2
> +	    KWorld DVB-S 100
> +
> +comment "DVB-T (terrestrial) frontends"
> +	depends on VIDEO_CX88_DVB && !VIDEO_CX88_DVB_ALL_FRONTENDS
> +
> +config VIDEO_CX88_DVB_CX22702
> +	bool "Conexant CX22702 DVB-T Support"
> +	default y
> +	depends on VIDEO_CX88_DVB && !VIDEO_CX88_DVB_ALL_FRONTENDS
> +	select DVB_CX22702
> +	---help---
> +	  This adds DVB-T support for cards based on the
> +	  Connexant 2388x chip and the CX22702 demodulator.
> +
> +	  Cards which may use this combination include:
> +	    Hauppauge WinTV HVR-1100 and HVR-1100LP
> +	    KWorld VStream Xpert DVT DVB-T (also MT352)
> +	    TerraTec Cinergy 1400 DVB-T
> +	    WinFast DTV1000-T
> +
>  config VIDEO_CX88_DVB_MT352
>  	bool "Zarlink MT352 DVB-T Support"
>  	default y
> @@ -73,10 +117,18 @@ config VIDEO_CX88_DVB_MT352
>  	  This adds DVB-T support for cards based on the
>  	  Connexant 2388x chip and the MT352 demodulator.
>  
> +	  Cards which may use this combination include:
> +	    DViCO FusionHDTV DVB-T
> +	    DViCO FusionHDTV DVB-T Dual
> +	    DViCO FusionHDTV DVB-T Plus (old version)
> +	    KWorld VStream Xpert DVT DVB-T (also CX22702)
> +	    DNTV Live! DVB-T / DVB-T Pro
> +	    ADSTech Instant TV DVB-T
> +
>  config VIDEO_CX88_VP3054
>  	tristate "VP-3054 Secondary I2C Bus Support"
>  	default m
> -	depends on DVB_MT352
> +	depends on DVB_MT352 && VIDEO_CX88_DVB_MT352

No, it doesnt.  NOTHING depends on VIDEO_CX88_DVB_MT352

>  	---help---
>  	  This adds DVB-T support for cards based on the
>  	  Connexant 2388x chip and the MT352 demodulator,
> @@ -93,6 +145,24 @@ config VIDEO_CX88_DVB_ZL10353
>  	  Connexant 2388x chip and the ZL10353 demodulator,
>  	  successor to the Zarlink MT352.
>  
> +	  Cards which may use this combination include:
> +	    DViCO FusionHDTV DVB-T Hybrid
> +	    DViCO FusionHDTV DVB-T Plus (new version)
> +
> +comment "ATSC (North American/Korean Terresterial/Cable DTV) frontends"
> +	depends on VIDEO_CX88_DVB && !VIDEO_CX88_DVB_ALL_FRONTENDS
> +
> +config VIDEO_CX88_DVB_NXT200X
> +	bool "NXT2002/NXT2004 ATSC Support"
> +	default y
> +	depends on VIDEO_CX88_DVB && !VIDEO_CX88_DVB_ALL_FRONTENDS
> +	select DVB_NXT200X
> +	---help---
> +	  This adds ATSC 8VSB and QAM64/256 support for cards based on the
> +	  Connexant 2388x chip and the NXT2002/NXT2004 demodulator.
> +
> +	  This combination is used by the ATI HDTV Wonder.
> +
>  config VIDEO_CX88_DVB_OR51132
>  	bool "OR51132 ATSC Support"
>  	default y
> @@ -102,14 +172,7 @@ config VIDEO_CX88_DVB_OR51132
>  	  This adds ATSC 8VSB and QAM64/256 support for cards based on the
>  	  Connexant 2388x chip and the OR51132 demodulator.
>  
> -config VIDEO_CX88_DVB_CX22702
> -	bool "Conexant CX22702 DVB-T Support"
> -	default y
> -	depends on VIDEO_CX88_DVB && !VIDEO_CX88_DVB_ALL_FRONTENDS
> -	select DVB_CX22702
> -	---help---
> -	  This adds DVB-T support for cards based on the
> -	  Connexant 2388x chip and the CX22702 demodulator.
> +	  This combination is used by the pcHDTV HD-3000.
>  
>  config VIDEO_CX88_DVB_LGDT330X
>  	bool "LG Electronics DT3302/DT3303 ATSC Support"
> @@ -120,20 +183,7 @@ config VIDEO_CX88_DVB_LGDT330X
>  	  This adds ATSC 8VSB and QAM64/256 support for cards based on the
>  	  Connexant 2388x chip and the LGDT3302/LGDT3303 demodulator.
>  
> -config VIDEO_CX88_DVB_NXT200X
> -	bool "NXT2002/NXT2004 ATSC Support"
> -	default y
> -	depends on VIDEO_CX88_DVB && !VIDEO_CX88_DVB_ALL_FRONTENDS
> -	select DVB_NXT200X
> -	---help---
> -	  This adds ATSC 8VSB and QAM64/256 support for cards based on the
> -	  Connexant 2388x chip and the NXT2002/NXT2004 demodulator.
> -
> -config VIDEO_CX88_DVB_CX24123
> -	bool "Conexant CX24123 DVB-S Support"
> -	default y
> -	depends on VIDEO_CX88_DVB && !VIDEO_CX88_DVB_ALL_FRONTENDS
> -	select DVB_CX24123
> -	---help---
> -	  This adds DVB-S support for cards based on the
> -	  Connexant 2388x chip and the CX24123 demodulator.
> +	  Cards which may use this combination include:
> +	    DViCO FusionHDTV 3 QAM / ATSC
> +	    DViCO FusionHDTV 3 Gold-T
> +	    DViCO FusionHDTV 5 Gold / Gold Plus


I really must say, overall these changes were some good ideas.  I hope 
you don't mind that I've picked and chosen from this.  I will apply the 
changes from points (1) and (2) later on today.... All those other 
changes I would really rather not.

Thank you very much for the time that you've spent on this.

Regards,

Michael Krufky



More information about the linux-dvb mailing list