[pull] http://linuxtv.org/hg/~tap/v4l-dvb

2009-04-30 Thread Trent Piepho
Mauro,

Please pull from http://linuxtv.org/hg/~tap/v4l-dvb

for the following 4 changesets:

01/04: compat: Add DMA_BIT_MASK() macro
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=486add0e3f1f

02/04: zoran: fix bug when enumerating format -1
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=f144948f22c8

03/04: v4l2-ioctl: Check buffer types using g_fmt instead of try_fmt
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=b54857195e2c

04/04: v4l2-ioctl: Clear buffer type specific trailing fields/padding
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=7cbf08aeb840


 linux/drivers/media/video/v4l2-ioctl.c |   45 -
 linux/drivers/media/video/zoran/zoran_driver.c |   30 +++-
 v4l/compat.h   |7 ++-
 3 files changed, 55 insertions(+), 27 deletions(-)

Thanks,
Trent
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[pull] http://linuxtv.org/hg/~tap/v4l-dvb

2009-03-28 Thread Trent Piepho
Mauro,

Please pull from http://linuxtv.org/hg/~tap/v4l-dvb

for the following 14 changesets:

01/14: build: Fix kernel output directory support
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=346bab8698ea

02/14: v4l2-ioctl:  Check format for S_PARM and G_PARM
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=44632c5fe5b2

03/14: saa7146: Remove buffer type check from vidioc_g_parm
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=c879e8f8c32b

04/14: bttv: Remove buffer type check from vidioc_g_parm
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=935d095cbc31

05/14: gspca: Stop setting buffer type, and avoid memset in querycap
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=089aaa41d473

06/14: omap24xxcam: Remove buffer type check from vidioc_s/g_parm
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=c545d5d1afcc

07/14: stkwebcam: Remove buffer type check from g_parm and q/dq/reqbufs
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=fb30bf07ca40

08/14: vino: Remove code for things already done by video_ioctl2
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=900a6e99e7b0

09/14: cafe_ccic: Remove buffer type check from XXXbuf
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=e698f5e2e1db

10/14: cx23885-417: Don't need to zero ioctl parameter fields
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=76e7154479e4

11/14: cx88-blackbird: Stop setting buffer type in XXX_fmt_vid_cap
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=ea402dd306a6

12/14: meye: Remove buffer type checks from XXX_fmt_vid_cap, XXXbuf
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=1d2ae100255d

13/14: usbvision: Remove buffer type checks from enum_fmt_vid_cap, XXXbuf
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=5dd6945acfc3

14/14: zr364xx: Remove code for things already done by video_ioctl2
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=406c54139ea6


 linux/drivers/media/common/saa7146_video.c|4
 linux/drivers/media/video/bt8xx/bttv-driver.c |3
 linux/drivers/media/video/cafe_ccic.c |   14
 linux/drivers/media/video/cx23885/cx23885-417.c   |   29 -
 linux/drivers/media/video/cx88/cx88-blackbird.c   |5
 linux/drivers/media/video/gspca/gspca.c   |5
 linux/drivers/media/video/meye.c  |   32 -
 linux/drivers/media/video/omap24xxcam.c   |7
 linux/drivers/media/video/stk-webcam.c|   11
 linux/drivers/media/video/usbvision/usbvision-video.c |   10
 linux/drivers/media/video/v4l2-ioctl.c|7
 linux/drivers/media/video/vino.c  |  335 +++---
 linux/drivers/media/video/zr364xx.c   |   16
 v4l/Makefile  |3
 14 files changed, 158 insertions(+), 323 deletions(-)

Thanks,
Trent

--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[pull] http://linuxtv.org/hg/~tap/v4l-dvb

2009-03-13 Thread Trent Piepho
Mauro,

Please pull from http://linuxtv.org/hg/~tap/v4l-dvb

for the following changeset:

01/01: build: have make_kconfig.pl ignore comments
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=9debb0a2ec70


 make_kconfig.pl |   13 +
 1 files changed, 9 insertions(+), 4 deletions(-)

Thanks,
Trent

--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[pull] http://linuxtv.org/hg/~tap/v4l-dvb-zoran

2009-03-10 Thread Trent Piepho
Mauro,

Please pull from http://linuxtv.org/hg/~tap/v4l-dvb-zoran

for the following 6 changesets:

01/06: build: Clean up FM801-TEA575x Kconfig
http://linuxtv.org/hg/~tap/v4l-dvb-zoran?cmd=changeset;node=a9792eb3e828

02/06: zoran: Unify buffer descriptors
http://linuxtv.org/hg/~tap/v4l-dvb-zoran?cmd=changeset;node=41592ce6cba3

03/06: zoran: Drop the lock_norm module parameter
http://linuxtv.org/hg/~tap/v4l-dvb-zoran?cmd=changeset;node=da9f9c766f07

04/06: zoran: Don't frighten users with failed buffer allocation
http://linuxtv.org/hg/~tap/v4l-dvb-zoran?cmd=changeset;node=f0a275bde923

05/06: zoran: Pass zoran_fh pointers instead of file pointers
http://linuxtv.org/hg/~tap/v4l-dvb-zoran?cmd=changeset;node=9eb7b94aa6b6

06/06: zoran: replace functions names in strings with __func__
http://linuxtv.org/hg/~tap/v4l-dvb-zoran?cmd=changeset;node=60b0989f6c7a


 linux/Documentation/video4linux/Zoran  |3
 linux/drivers/media/video/zoran/zoran.h|   59 -
 linux/drivers/media/video/zoran/zoran_card.c   |  115 --
 linux/drivers/media/video/zoran/zoran_device.c |   20
 linux/drivers/media/video/zoran/zoran_device.h |2
 linux/drivers/media/video/zoran/zoran_driver.c | 1357 ++---
 v4l/Kconfig.sound  |9
 7 files changed, 669 insertions(+), 896 deletions(-)

Thanks,
Trent

--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PULL] http://linuxtv.org/hg/~tap/v4l-dvb

2009-03-05 Thread Trent Piepho
Mauro,

Please pull from http://linuxtv.org/hg/~tap/v4l-dvb

for the following 2 changesets:

01/02: compat: Add INIT_DELAYED_WORK
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=f6382daee1df

02/02: zoran: Change first argument to zoran_v4l2_buffer_status
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=784ecbdb42a5


 linux/drivers/media/video/zoran/zoran_driver.c |9 -
 v4l/compat.h   |1 +
 2 files changed, 5 insertions(+), 5 deletions(-)

Thanks,
Trent

--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PULL] http://linuxtv.org/hg/~tap/v4l-dvb

2009-03-03 Thread Trent Piepho
Mauro,

Please pull from http://linuxtv.org/hg/~tap/v4l-dvb

for the following 4 changesets:

01/04: videodev: not possible to register NULL video_device
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=3c87763acae5

02/04: cx88: remove unnecessary forward declaration of cx88_core
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=ffc649bf14a6

03/04: compat: rename struct delayed_work to work_struct on pre-2.6.20
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=62d29b435438

04/04: v4l2: Move code to zero querybuf output struct to v4l2_ioctl
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=d31e6e7a8241


 linux/drivers/media/dvb/b2c2/flexcop-pci.c|4 
 linux/drivers/media/dvb/dvb-usb/dvb-usb.h |4 
 linux/drivers/media/radio/radio-si470x.c  |4 
 linux/drivers/media/video/cx88/cx88.h |1 -
 linux/drivers/media/video/em28xx/em28xx.h |4 
 linux/drivers/media/video/meye.c  |4 
 linux/drivers/media/video/stk-webcam.c|8 +---
 linux/drivers/media/video/usbvision/usbvision-video.c |3 ---
 linux/drivers/media/video/v4l2-dev.c  |7 +++
 linux/drivers/media/video/v4l2-ioctl.c|5 +
 linux/drivers/media/video/zoran/zoran_driver.c|6 --
 v4l/compat.h  |8 
 12 files changed, 17 insertions(+), 41 deletions(-)

Thanks,
Trent

--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PULL] http://linuxtv.org/hg/~tap/v4l-dvb

2009-03-03 Thread Mauro Carvalho Chehab
On Tue, 3 Mar 2009 13:59:27 -0800 (PST)
Trent Piepho xy...@speakeasy.org wrote:

 04/04: v4l2: Move code to zero querybuf output struct to v4l2_ioctl
 http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=d31e6e7a8241

Hmm.. The idea of using this memset seemed interesting:

f02233e4 (Trent Piepho  2009-03-03 20:44:45 -0300  974) 
memset(0, p-bytesused,
f02233e4 (Trent Piepho  2009-03-03 20:44:45 -0300  975) 
   sizeof(*p) - offsetof(typeof(*p), bytesused));

But the end result is that, when compiling it on my -git tree, to have those 
errors with i386:

drivers/media/video/v4l2-ioctl.c: In function ‘__video_do_ioctl’:
drivers/media/video/v4l2-ioctl.c:974: warning: cast from pointer to integer of 
different size
drivers/media/video/v4l2-ioctl.c:974: warning: cast from pointer to integer of 
different size
drivers/media/video/v4l2-ioctl.c:974: warning: passing argument 2 of 
‘__memset_generic’ makes integer from pointer without a cast
drivers/media/video/v4l2-ioctl.c:974: warning: passing argument 2 of 
‘__memset_generic’ makes integer from pointer without a cast

Could you please provide us a fix?


Cheers,
Mauro
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PULL] http://linuxtv.org/hg/~tap/v4l-dvb

2009-02-09 Thread Mauro Carvalho Chehab
On Thu, 5 Feb 2009 10:57:21 -0800 (PST)
Trent Piepho xy...@speakeasy.org wrote:

 Mauro,
 
 Please pull from http://linuxtv.org/hg/~tap/v4l-dvb
 
 for the following 3 changesets:
 
 01/03: cx88: Fix MPEG kconfig dependencies
 http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=2e05fd69e6b6

Hmm... This patch converts a depends on into a select. This is not nice, since
select is known to not be properly handled by kernel build system. Also, the
kbuild maintainer recommended us to use select only for options that doesn't
have any dependency.

This is reflected on Kbuild docs:

Note: select should be used with care. select will force a symbol to a value
without visiting the dependencies. By abusing select you are able to select a
symbol FOO even if FOO depends on BAR that is not set. In general use select
only for non-visible symbols (no prompts anywhere) and for symbols with no
dependencies. That will limit the usefulness but on the other hand avoid the
illegal configurations all over. kconfig should one day warn about such things.

So, IMO, we should solve the issue using a different logic that relies only on
depends on.


Cheers,
Mauro
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PULL] http://linuxtv.org/hg/~tap/v4l-dvb

2009-02-09 Thread Trent Piepho
On Mon, 9 Feb 2009, Mauro Carvalho Chehab wrote:
 On Thu, 5 Feb 2009 10:57:21 -0800 (PST)
 Trent Piepho xy...@speakeasy.org wrote:
  01/03: cx88: Fix MPEG kconfig dependencies
  http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=2e05fd69e6b6

 Hmm... This patch converts a depends on into a select. This is not nice, since
 select is known to not be properly handled by kernel build system. Also, the
 kbuild maintainer recommended us to use select only for options that doesn't
 have any dependency.
 This is reflected on Kbuild docs:

 Note: select should be used with care. select will force a symbol to a value
 without visiting the dependencies. By abusing select you are able to select a
 symbol FOO even if FOO depends on BAR that is not set. In general use select

I'm aware of the problem with select.  One way to deal with is to have
whatever is selecting FOO also depend on BAR.  In this case CX88_MPEG only
has one dependency, VIDEO_CX88.  Both CX88_BLACKBIRD and CX88_DVB already
depend on VIDEO_CX88 so there is no problem.  Since CX88_MPEG is a hidden
option and it's highly unlikely it will gain a dependency that
CX88_BLACKBIRD and CX88_DVB do not also also have, I think this use of
select is not so bad.

 So, IMO, we should solve the issue using a different logic that relies only on
 depends on.

This can be done, it was the other option I mentioned.  MPEG needs to be
made a visible option, which BLACKBIRD and DVB will then depend on instead
of selecting.  I didn't do this because of complaints about kernel
configuration getting too complex with too many options.  So I didn't think
a patch exposing another option would be better.

It would look something like this:

config VIDEO_CX88_MPEG
tristate MPEG and digital TV interface
depends on VIDEO_CX88
help
  Support for the MPEG port on Conexant CX2388x chips, which shows up
  as function 2 of the PCI device.  This is used by DVB/ATSC digital TV
  cards as well as cards with the Conexant Blackbird CX23416 MPEG
  encoder.

config VIDEO_CX88_MPEG
tristate DVB/ATSC Support for cx2388x based TV cards
depends on VIDEO_CX88_MPEG
...

config VIDEO_CX88_BLACKBIRD
tristate Blackbird MPEG encoder support (cx2388x + cx23416)
depends on VIDEO_CX88_MPEG
...

Would that be better?  No select, but there is another option for the user to
pick when configuring their cards.
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PULL] http://linuxtv.org/hg/~tap/v4l-dvb

2009-02-09 Thread Mauro Carvalho Chehab
On Mon, 9 Feb 2009 16:48:27 -0800 (PST)
Trent Piepho xy...@speakeasy.org wrote:

 On Mon, 9 Feb 2009, Mauro Carvalho Chehab wrote:
  On Thu, 5 Feb 2009 10:57:21 -0800 (PST)
  Trent Piepho xy...@speakeasy.org wrote:
   01/03: cx88: Fix MPEG kconfig dependencies
   http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=2e05fd69e6b6
 
  Hmm... This patch converts a depends on into a select. This is not nice, 
  since
  select is known to not be properly handled by kernel build system. Also, the
  kbuild maintainer recommended us to use select only for options that doesn't
  have any dependency.
  This is reflected on Kbuild docs:
 
  Note: select should be used with care. select will force a symbol to a value
  without visiting the dependencies. By abusing select you are able to select 
  a
  symbol FOO even if FOO depends on BAR that is not set. In general use select
 
 I'm aware of the problem with select.  One way to deal with is to have
 whatever is selecting FOO also depend on BAR.  In this case CX88_MPEG only
 has one dependency, VIDEO_CX88.  Both CX88_BLACKBIRD and CX88_DVB already
 depend on VIDEO_CX88 so there is no problem.  Since CX88_MPEG is a hidden
 option and it's highly unlikely it will gain a dependency that
 CX88_BLACKBIRD and CX88_DVB do not also also have, I think this use of
 select is not so bad.

I took some time during this kernel cycle trying to fix mpeg dependencies. One
issue that I had to deal with is that some possible configurations with CX88,
CX88_BLACKBIRD and CX88_DVB causes breakages (weird configs like having one as
M and others as Y). Those weird configurations don't have any practical usage,
but causes lot of headaches at the Kconfig logic.

I suspect that the current way compiles fine in-kernel, but maybe the
out-of-tree logic may have some troubles on handling it (at least, Ingo and
others that likes to play with all possible configurations didn't complain
yet with the current cx88 Kbuild).

  So, IMO, we should solve the issue using a different logic that relies only 
  on
  depends on.
 
 This can be done, it was the other option I mentioned.  MPEG needs to be
 made a visible option, which BLACKBIRD and DVB will then depend on instead
 of selecting.  I didn't do this because of complaints about kernel
 configuration getting too complex with too many options.  So I didn't think
 a patch exposing another option would be better.
 
 It would look something like this:
 
 config VIDEO_CX88_MPEG
   tristate MPEG and digital TV interface
   depends on VIDEO_CX88
   help
 Support for the MPEG port on Conexant CX2388x chips, which shows up
 as function 2 of the PCI device.  This is used by DVB/ATSC digital TV
 cards as well as cards with the Conexant Blackbird CX23416 MPEG
 encoder.
 
 config VIDEO_CX88_MPEG
  I'm assuming CX88_DVB here.
   tristate DVB/ATSC Support for cx2388x based TV cards
   depends on VIDEO_CX88_MPEG
   ...
 
 config VIDEO_CX88_BLACKBIRD
   tristate Blackbird MPEG encoder support (cx2388x + cx23416)
   depends on VIDEO_CX88_MPEG
   ...
 
 Would that be better?  No select, but there is another option for the user to
 pick when configuring their cards.

I almost used a similar logic like above (just replacing tristate by boolean on
CX88_DVB and CX88_BLACKBIRD to avoid the weird and unpractical kconfigs).

I agree that adding more questions to the poor end-user is evil. So, I decided
for a hidden var for CX88_MPEG, than adding a meaningless option (on the user
POV), on the latest CX88 Kbuild changeset.

Cheers,
Mauro
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PULL] http://linuxtv.org/hg/~tap/v4l-dvb

2009-02-09 Thread Trent Piepho
On Tue, 10 Feb 2009, Mauro Carvalho Chehab wrote:
  On Mon, 9 Feb 2009, Mauro Carvalho Chehab wrote:
   On Thu, 5 Feb 2009 10:57:21 -0800 (PST)
   Trent Piepho xy...@speakeasy.org wrote:
01/03: cx88: Fix MPEG kconfig dependencies
http://linuxtv.org/hg/~tap/v4l-dvb?cmd=changeset;node=2e05fd69e6b6
  
   Hmm... This patch converts a depends on into a select. This is not nice, 
   since
   select is known to not be properly handled by kernel build system. Also, 
   the
   kbuild maintainer recommended us to use select only for options that 
   doesn't
   have any dependency.
   This is reflected on Kbuild docs:
  
   Note: select should be used with care. select will force a symbol to a 
   value
   without visiting the dependencies. By abusing select you are able to 
   select a
   symbol FOO even if FOO depends on BAR that is not set. In general use 
   select
 
  I'm aware of the problem with select.  One way to deal with is to have
  whatever is selecting FOO also depend on BAR.  In this case CX88_MPEG only
  has one dependency, VIDEO_CX88.  Both CX88_BLACKBIRD and CX88_DVB already
  depend on VIDEO_CX88 so there is no problem.  Since CX88_MPEG is a hidden
  option and it's highly unlikely it will gain a dependency that
  CX88_BLACKBIRD and CX88_DVB do not also also have, I think this use of
  select is not so bad.

 I took some time during this kernel cycle trying to fix mpeg dependencies. One
 issue that I had to deal with is that some possible configurations with CX88,
 CX88_BLACKBIRD and CX88_DVB causes breakages (weird configs like having one as
 M and others as Y). Those weird configurations don't have any practical usage,
 but causes lot of headaches at the Kconfig logic.

Both of the methods I've show will work 100% correctly with any combination
of Y, M, and so on.

 I suspect that the current way compiles fine in-kernel, but maybe the

I don't think it will.  It's going to set MPEG to 'y' when CX88_VIDEO is
'm' because the default line will override the dependency.  Trying to avoid
select by using default X if ... lines has the same problem as select:
dependencies are ignored.  It's worse than select since it's more complex
and fails on various odd cases like one 'y' and one 'm'.

  It would look something like this:
 
  config VIDEO_CX88_MPEG
  tristate MPEG and digital TV interface
  depends on VIDEO_CX88
  help
Support for the MPEG port on Conexant CX2388x chips, which shows up
as function 2 of the PCI device.  This is used by DVB/ATSC digital TV
cards as well as cards with the Conexant Blackbird CX23416 MPEG
encoder.
 
  config VIDEO_CX88_MPEG
   I'm assuming CX88_DVB here.
  tristate DVB/ATSC Support for cx2388x based TV cards
  depends on VIDEO_CX88_MPEG
  ...
 
  config VIDEO_CX88_BLACKBIRD
  tristate Blackbird MPEG encoder support (cx2388x + cx23416)
  depends on VIDEO_CX88_MPEG
  ...
 
  Would that be better?  No select, but there is another option for the user 
  to
  pick when configuring their cards.

 I almost used a similar logic like above (just replacing tristate by boolean 
 on
 CX88_DVB and CX88_BLACKBIRD to avoid the weird and unpractical kconfigs).
 I agree that adding more questions to the poor end-user is evil. So, I decided
 for a hidden var for CX88_MPEG, than adding a meaningless option (on the user
 POV), on the latest CX88 Kbuild changeset.

Is the latest CX88 kbuild changeset different than what's in Hg now?  I
think my patch with select is the best way.  There is no reason that MPEG
would depend on something that DVB and BLACKBIRD don't, so there is no
problem with select.  There is also no problem with MPEG getting selected
from many places throughout the kernel which might not have the right
dependencies, since nothing besides DVB and BLACKBIRD are going to select
it.
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PULL] http://linuxtv.org/hg/~tap/v4l-dvb

2009-02-09 Thread Mauro Carvalho Chehab
On Mon, 9 Feb 2009 20:01:05 -0800 (PST)
Trent Piepho xy...@speakeasy.org wrote:

 ...
  I took some time during this kernel cycle trying to fix mpeg dependencies. 
  One
  issue that I had to deal with is that some possible configurations with 
  CX88,
  CX88_BLACKBIRD and CX88_DVB causes breakages (weird configs like having one 
  as
  M and others as Y). Those weird configurations don't have any practical 
  usage,
  but causes lot of headaches at the Kconfig logic.
 
 Both of the methods I've show will work 100% correctly with any combination
 of Y, M, and so on.
 
  I suspect that the current way compiles fine in-kernel, but maybe the
 
 I don't think it will.  It's going to set MPEG to 'y' when CX88_VIDEO is
 'm' because the default line will override the dependency.  Trying to avoid
 select by using default X if ... lines has the same problem as select:
 dependencies are ignored.  It's worse than select since it's more complex
 and fails on various odd cases like one 'y' and one 'm'.
 ...
 
  I almost used a similar logic like above (just replacing tristate by 
  boolean on
  CX88_DVB and CX88_BLACKBIRD to avoid the weird and unpractical kconfigs).
  I agree that adding more questions to the poor end-user is evil. So, I 
  decided
  for a hidden var for CX88_MPEG, than adding a meaningless option (on the 
  user
  POV), on the latest CX88 Kbuild changeset.
 
 Is the latest CX88 kbuild changeset different than what's in Hg now?  I
 think my patch with select is the best way.  There is no reason that MPEG
 would depend on something that DVB and BLACKBIRD don't, so there is no
 problem with select.  There is also no problem with MPEG getting selected
 from many places throughout the kernel which might not have the right
 dependencies, since nothing besides DVB and BLACKBIRD are going to select
 it.

Take a look on the changesets I'm referring:

changeset:   10190:eb1848dcb073
user:Mauro Carvalho Chehab mche...@redhat.com
date:Tue Jan 06 17:06:07 2009 -0200
summary: cx88: Fix some Kbuild troubles

changeset:   10191:7c430437c967
user:Mauro Carvalho Chehab mche...@redhat.com
date:Wed Jan 07 00:53:22 2009 -0200
summary: cx88: Fix Kconfig MPEG dependencies

There is a large descriptionon 10190 explaining what were the issues. I had
even to touch inside the code to avoid breakages, since, otherwise, things like
this would break compilation:

CONFIG_VIDEO_CX88=y
CONFIG_VIDEO_CX88_BLACKBIRD=y
CONFIG_VIDEO_CX88_DVB=m
CONFIG_DVB_CORE=m

Btw, at the in-kernel compilation, if you do something like:

config FOO
depends on BAR
default y

if BAR is m, then FOO is also m; if BAR is n then FOO is n.

I've checked it, and also, this is what Roman (Kbuild maintainer) recommended
us as a way to avoid the usage of select:

http://lkml.org/lkml/2008/5/25/220

I suspect that the issue is on the parsing rules on our build system. I would
like to have the offended .config, in order to test against 2.6.29-rc and see
if we have such troubles upstream.

Cheers,
Mauro
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html