2009-03-30 17:06:43

by Mark Lord

[permalink] [raw]
Subject: Re: bttv ir patch from Mark Lord

Michael Krufky wrote:
> Mark Lord wrote:
>> Michael Krufky wrote:
>>> Hans Verkuil wrote:
>>>> Hi Mike,
>>>>
>>>> The attached patch should be queued for 2.6.29.X. It corresponds to changeset 11098 (v4l2-common: remove incorrect MODULE test) in our v4l-dvb tree and is part of the initial set of git patches going into 2.6.30.
>>>>
>>>> Without this patch loading ivtv as a module while v4l2-common is compiled into the kernel will cause a delayed load of the i2c modules that ivtv needs since request_module is never called directly.
>>>>
>>>> While it is nice to see the delayed load in action, it is not so nice in that ivtv fails to do a lot of necessary i2c initializations and will oops later on with a division-by-zero.
>>>>
>>>> Thanks to Mark Lord for reporting this and helping me figure out what was wrong.
>>>>
>>>> Regards,
>>>>
>>>> Hans
>>>>
>>>>
>>> Got it, thanks.
>>>
>>> In the future, please point to hash codes rather than revision ID's -- my rev IDs are not the same as yours, but hash codes are always unique.
>>>
>>> I'll queue this the moment Linus merges Mauro's pending request.
>> ..
>>
>> Can either of you guys figure out how to get this patch (or something
>> equivalent) merged? It's been pending for some time now.
>>
>> Thanks.
>>
>> Message-ID: <[email protected]>
>> Date: Tue, 03 Feb 2009 08:55:23 -0500
>> From: Mark Lord <[email protected]>
>> MIME-Version: 1.0
>> To: [email protected], Linux Kernel <[email protected]>
>> Subject: [PATCH] ir-kbd-i2c: support Hauppauge HVR-1600 R/C port
>> Content-Type: text/plain; charset=UTF-8; format=flowed
>> Content-Transfer-Encoding: 7bit
>>
>> (resending, with [email protected] this time)
>>
>> Update the ir-kbd-i2c driver to recognize the remote-control port
>> on the Hauppauge HV-1600 hybrid tuner card.
>>
>> Signed-off-by: Mark Lord <[email protected]>
>>
>> --- old/drivers/media/video/ir-kbd-i2c.c 2008-12-24 18:26:37.000000000 -0500
>> +++ linux/drivers/media/video/ir-kbd-i2c.c 2009-02-01 13:08:19.000000000 -0500
>> @@ -354,6 +354,11 @@
>> } else {
>> ir_codes = ir_codes_rc5_tv;
>> }
>> + } else if (adap->id == I2C_HW_B_CX2341X) {
>> + name = "Hauppauge";
>> + ir_type = IR_TYPE_RC5;
>> + ir->get_key = get_key_haup_xvr;
>> + ir_codes = ir_codes_hauppauge_new;
>> } else {
>> /* Handled by saa7134-input */
>> name = "SAA713x remote";
>> @@ -449,7 +454,7 @@
>> That's why we probe 0x1a (~0x34) first. CB
>> */
>>
>> - static const int probe_bttv[] = { 0x1a, 0x18, 0x4b, 0x64, 0x30, -1};
>> + static const int probe_bttv[] = { 0x1a, 0x18, 0x4b, 0x64, 0x30, 0x71, -1};
>> static const int probe_saa7134[] = { 0x7a, 0x47, 0x71, 0x2d, -1 };
>> static const int probe_em28XX[] = { 0x30, 0x47, -1 };
>> static const int probe_cx88[] = { 0x18, 0x6b, 0x71, -1 };
>>
>
> looks like a zilog, and you should use LIRC for that.
..

It's a Hauppauge remote port, just like the one on the (supported) PVR-250.
And I don't want the LIRC monstrosity when there's a perfectly good
kernel driver to run it directly. The patch does not prevent others
from using LIRC.
> PLEASE DO NOT HIJAAK unrelated threads with unrelated emails.
..

"Hijack", not "HIJAAK". :)

Resending to copy linux-kernel again.
Please do not edit/delete lists from the email headers, thanks.

thanks.


2009-03-30 17:16:45

by Hans Verkuil

[permalink] [raw]
Subject: Re: bttv ir patch from Mark Lord

On Monday 30 March 2009 19:06:28 Mark Lord wrote:
> Michael Krufky wrote:
> > Mark Lord wrote:
> >> Michael Krufky wrote:
> >>> Hans Verkuil wrote:
> >>>> Hi Mike,
> >>>>
> >>>> The attached patch should be queued for 2.6.29.X. It corresponds to
> >>>> changeset 11098 (v4l2-common: remove incorrect MODULE test) in our
> >>>> v4l-dvb tree and is part of the initial set of git patches going
> >>>> into 2.6.30.
> >>>>
> >>>> Without this patch loading ivtv as a module while v4l2-common is
> >>>> compiled into the kernel will cause a delayed load of the i2c
> >>>> modules that ivtv needs since request_module is never called
> >>>> directly.
> >>>>
> >>>> While it is nice to see the delayed load in action, it is not so
> >>>> nice in that ivtv fails to do a lot of necessary i2c initializations
> >>>> and will oops later on with a division-by-zero.
> >>>>
> >>>> Thanks to Mark Lord for reporting this and helping me figure out
> >>>> what was wrong.
> >>>>
> >>>> Regards,
> >>>>
> >>>> Hans
> >>>
> >>> Got it, thanks.
> >>>
> >>> In the future, please point to hash codes rather than revision ID's
> >>> -- my rev IDs are not the same as yours, but hash codes are always
> >>> unique.
> >>>
> >>> I'll queue this the moment Linus merges Mauro's pending request.
> >>
> >> ..
> >>
> >> Can either of you guys figure out how to get this patch (or something
> >> equivalent) merged? It's been pending for some time now.
> >>
> >> Thanks.
> >>
> >> Message-ID: <[email protected]>
> >> Date: Tue, 03 Feb 2009 08:55:23 -0500
> >> From: Mark Lord <[email protected]>
> >> MIME-Version: 1.0
> >> To: [email protected], Linux Kernel
> >> <[email protected]> Subject: [PATCH] ir-kbd-i2c: support
> >> Hauppauge HVR-1600 R/C port Content-Type: text/plain; charset=UTF-8;
> >> format=flowed
> >> Content-Transfer-Encoding: 7bit
> >>
> >> (resending, with [email protected] this time)
> >>
> >> Update the ir-kbd-i2c driver to recognize the remote-control port
> >> on the Hauppauge HV-1600 hybrid tuner card.
> >>
> >> Signed-off-by: Mark Lord <[email protected]>
> >>
> >> --- old/drivers/media/video/ir-kbd-i2c.c 2008-12-24
> >> 18:26:37.000000000 -0500 +++ linux/drivers/media/video/ir-kbd-i2c.c
> >> 2009-02-01 13:08:19.000000000 -0500 @@ -354,6 +354,11 @@
> >> } else {
> >> ir_codes = ir_codes_rc5_tv;
> >> }
> >> + } else if (adap->id == I2C_HW_B_CX2341X) {
> >> + name = "Hauppauge";
> >> + ir_type = IR_TYPE_RC5;
> >> + ir->get_key = get_key_haup_xvr;
> >> + ir_codes = ir_codes_hauppauge_new;
> >> } else {
> >> /* Handled by saa7134-input */
> >> name = "SAA713x remote";
> >> @@ -449,7 +454,7 @@
> >> That's why we probe 0x1a (~0x34) first. CB
> >> */
> >>
> >> - static const int probe_bttv[] = { 0x1a, 0x18, 0x4b, 0x64, 0x30,
> >> -1}; + static const int probe_bttv[] = { 0x1a, 0x18, 0x4b, 0x64,
> >> 0x30, 0x71, -1}; static const int probe_saa7134[] = { 0x7a, 0x47,
> >> 0x71, 0x2d, -1 }; static const int probe_em28XX[] = { 0x30, 0x47, -1
> >> };
> >> static const int probe_cx88[] = { 0x18, 0x6b, 0x71, -1 };
> >
> > looks like a zilog, and you should use LIRC for that.
>
> ..
>
> It's a Hauppauge remote port, just like the one on the (supported)
> PVR-250. And I don't want the LIRC monstrosity when there's a perfectly
> good kernel driver to run it directly. The patch does not prevent others
> from using LIRC.
>
> > PLEASE DO NOT HIJAAK unrelated threads with unrelated emails.
>
> ..
>
> "Hijack", not "HIJAAK". :)
>
> Resending to copy linux-kernel again.
> Please do not edit/delete lists from the email headers, thanks.
>
> thanks.

It's best to wait a bit. Jean Delvare is working on this ir-kbd-i2c driver
right now and when he's finished it should be much easier to add this. Most
importantly you can add this new i2c address to the cx18 driver rather than
add it to the probe_bttv list, which is rather overloaded anyway.

He should be finished within 1-3 weeks I guess. Probably sooner rather than
later. Just watch the linux-media list for it.

Regards,

Hans

--
Hans Verkuil - video4linux developer - sponsored by TANDBERG

2009-03-30 17:32:09

by Mark Lord

[permalink] [raw]
Subject: Re: bttv ir patch from Mark Lord

Hans Verkuil wrote:
>
> It's best to wait a bit. Jean Delvare is working on this ir-kbd-i2c driver
> right now and when he's finished it should be much easier to add this. Most
> importantly you can add this new i2c address to the cx18 driver rather than
> add it to the probe_bttv list, which is rather overloaded anyway.
>
> He should be finished within 1-3 weeks I guess. Probably sooner rather than
> later. Just watch the linux-media list for it.
..

Thanks. I'll just watch for it arriving upstream in 2.6.31 (?) then,
if the current ir-kbd-i2c patch doesn't end up in 2.6.30 already.

Good idea on the cleanup in there, too. It was looking a bit tattered
around the edges, and my patch doesn't really help much with that aspect. :)

Cheers