All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL FOR 2.6.37] new AF9015 devices
@ 2010-09-09 21:12 Antti Palosaari
  2010-09-09 23:19 ` Stefan Lippers-Hollmann
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Antti Palosaari @ 2010-09-09 21:12 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Stefan Lippers-Hollmann; +Cc: linux-media, TerraTux

Moikka Mauro!
This patch series adds support for TerraTec Cinergy T Stick Dual RC and 
TerraTec Cinergy T Stick RC. Also MxL5007T devices with ref. design IDs 
should be working. Cinergy T Stick remote is most likely not working 
since it seems to use different remote as Cinergy T Dual... Stefan could 
you test and ensure T Stick is working?

and thanks to TerraTec!

t. Antti


The following changes since commit c9889354c6d36d6278ed851c74ace02d72efdd59:

   V4L/DVB: rc-core: increase repeat time (2010-09-08 13:04:40 -0300)

are available in the git repository at:
   git://linuxtv.org/anttip/media_tree.git af9015

Antti Palosaari (6):
       af9015: simple comment update
       af9015: fix bug introduced by commit 
490ade7e3f4474f626a8f5d778ead4e599b94fbcas
       af9013: add support for MaxLinear MxL5007T tuner
       af9015: add support for TerraTec Cinergy T Stick Dual RC
       af9015: add remote support for TerraTec Cinergy T Stick Dual RC
       af9015: map TerraTec Cinergy T Stick Dual RC remote to device ID

  drivers/media/dvb/dvb-usb/Kconfig         |    1 +
  drivers/media/dvb/dvb-usb/af9015.c        |   50 +++++++++++++----------
  drivers/media/dvb/dvb-usb/af9015.h        |   63 
+++++++++++++++++++++++++++++
  drivers/media/dvb/dvb-usb/dvb-usb-ids.h   |    1 +
  drivers/media/dvb/frontends/af9013.c      |    1 +
  drivers/media/dvb/frontends/af9013.h      |    1 +
  drivers/media/dvb/frontends/af9013_priv.h |    5 +-
  7 files changed, 99 insertions(+), 23 deletions(-)


-- 
http://palosaari.fi/

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [GIT PULL FOR 2.6.37] new AF9015 devices
  2010-09-09 21:12 [GIT PULL FOR 2.6.37] new AF9015 devices Antti Palosaari
@ 2010-09-09 23:19 ` Stefan Lippers-Hollmann
  2010-09-10  0:54 ` Stefan Lippers-Hollmann
  2010-09-22 19:02 ` Mauro Carvalho Chehab
  2 siblings, 0 replies; 6+ messages in thread
From: Stefan Lippers-Hollmann @ 2010-09-09 23:19 UTC (permalink / raw)
  To: Antti Palosaari; +Cc: Mauro Carvalho Chehab, linux-media, TerraTux

Hi

On Friday 10 September 2010, Antti Palosaari wrote:
> Moikka Mauro!
> This patch series adds support for TerraTec Cinergy T Stick Dual RC and 
> TerraTec Cinergy T Stick RC. Also MxL5007T devices with ref. design IDs 
> should be working. Cinergy T Stick remote is most likely not working 
> since it seems to use different remote as Cinergy T Dual... Stefan could 
> you test and ensure T Stick is working?
> 
> and thanks to TerraTec!
[...]

DVB-T is working fine with my TerraTec "Cinergy T RC MKII" 0ccd:0097 
(branch af9015), as you expected the remote control doesn't react to 
the generic USB_VID_TERRATEC matching and the given IR codes. No ill 
effects though, the shipped remote just appears to be "dead" with those
settings. So these patches are fine and aren't a regression for my device.


I actually tried my luck with your suggestions for debugging the IR 
support, but as the remote continued to act in a weird (bouncing keycodes 
and no stable mappings at all), I didn't get very far. Except that the
EEPROM hash is 0x11f6768f.

A brutal first attempt to replace the predefined ir_codes_terratec/ 
af9015_ir_terratec with my current assumptions results in very similar,
erratic behaviour:

static struct ir_scancode ir_codes_terratec[] = {
	{ 0x0057, KEY_1 },
	{ 0x0020, KEY_2 },
	{ 0x0026, KEY_3 },
	{ 0x0056, KEY_4 },
	{ 0x0021, KEY_5 },
	{ 0x0027, KEY_6 },
	{ 0x004b, KEY_7 },
	{ 0x0022, KEY_8 },
	{ 0x0009, KEY_9 },
	{ 0x0023, KEY_0 },
	{ 0x0024, KEY_CHANNELUP },
	{ 0x0025, KEY_CHANNELDOWN },
	{ 0x004e, KEY_ZOOM },
	{ 0x0010, KEY_MUTE },
	{ 0x001f, KEY_VOLUMEDOWN },
	{ 0x001e, KEY_VOLUMEUP },
	{ 0x001c, KEY_GOTO },         /* jump */
	{ 0x043d, KEY_POWER },
};

static u8 af9015_ir_terratec[] = {
	0x80, 0x7f, 0x12, 0xed, 0x3d, 0x04, 0x00, /* power */
	0x80, 0x7f, 0x01, 0xfe, 0x10, 0x00, 0x00, /* mute */
	0x80, 0x7f, 0x1a, 0xe5, 0x57, 0x00, 0x00, /* 1 */
	0x80, 0x7f, 0x02, 0xfd, 0x56, 0x00, 0x00, /* 4 */
	0x80, 0x7f, 0x1e, 0xe1, 0x4b, 0x00, 0x00, /* 7 */
	0x80, 0x7f, 0x03, 0xfc, 0x4e, 0x00, 0x00, /* zoom */
	0x80, 0x7f, 0x04, 0xfb, 0x1e, 0x00, 0x00, /* volume up */
	0x80, 0x7f, 0x05, 0xfa, 0x1f, 0x00, 0x00, /* volume down */
	0x80, 0x7f, 0x06, 0xf9, 0x20, 0x00, 0x00, /* 2 */
	0x80, 0x7f, 0x07, 0xf8, 0x21, 0x00, 0x00, /* 5 */
	0x80, 0x7f, 0x08, 0xf7, 0x22, 0x00, 0x00, /* 8 */
	0x80, 0x7f, 0x09, 0xf6, 0x23, 0x00, 0x00, /* 0 */
	0x80, 0x7f, 0x0a, 0xf5, 0x24, 0x00, 0x00, /* channel up */
	0x80, 0x7f, 0x1b, 0xe4, 0x25, 0x00, 0x00, /* channel down */
	0x80, 0x7f, 0x1f, 0xe0, 0x26, 0x00, 0x00, /* 3 */
	0x80, 0x7f, 0x0d, 0xf2, 0x27, 0x00, 0x00, /* 6 */
	0x80, 0x7f, 0x0c, 0xf3, 0x09, 0x00, 0x00, /* 9 */
	0x80, 0x7f, 0x0e, 0xf1, 0x1c, 0x00, 0x00, /* jump */
};

The numbers seem to match, the rest was mostly "guessed" from the apparent 
strategy (top-->down. left-->right), but pressing '1' still results in 
"111111" (repeating until terminated by ctrl-c), pressing '4' in "54444445"
(until terminated).

Regards
	Stefan Lippers-Hollmann

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [GIT PULL FOR 2.6.37] new AF9015 devices
  2010-09-09 21:12 [GIT PULL FOR 2.6.37] new AF9015 devices Antti Palosaari
  2010-09-09 23:19 ` Stefan Lippers-Hollmann
@ 2010-09-10  0:54 ` Stefan Lippers-Hollmann
  2010-09-10 10:12   ` Antti Palosaari
  2010-09-22 19:02 ` Mauro Carvalho Chehab
  2 siblings, 1 reply; 6+ messages in thread
From: Stefan Lippers-Hollmann @ 2010-09-10  0:54 UTC (permalink / raw)
  To: Antti Palosaari; +Cc: Mauro Carvalho Chehab, linux-media, TerraTux

Hi

On Friday 10 September 2010, Antti Palosaari wrote:
> Moikka Mauro!
> This patch series adds support for TerraTec Cinergy T Stick Dual RC and 
> TerraTec Cinergy T Stick RC. Also MxL5007T devices with ref. design IDs 
> should be working. Cinergy T Stick remote is most likely not working 
> since it seems to use different remote as Cinergy T Dual... Stefan could 
> you test and ensure T Stick is working?
> 
> and thanks to TerraTec!
[...]

Another test and some further debugging of the IR core usedby the af9015 
branch of this git tree led me to partial success. DVB-T functionality 
continues to be fine and I've now found the proper values for this remote,
however once a key gets pressed, it is never released (unless another key 
gets pressed which is then struck or unless I ctrl-c it (only works on 
terminals). Likewise I'm not sure yet how to distinguish between the 
"Cinergy T Dual" and my "Cinergy T RC MKII":

lsusb:		0ccd:0097 TerraTec Electronic GmbH Cinergy T RC MKII
EEPROM hash:	0x11f6768f

static struct ir_scancode ir_codes_terratec[] = {
	{ 0x001e, KEY_1 },
	{ 0x001f, KEY_2 },
	{ 0x0020, KEY_3 },
	{ 0x0021, KEY_4 },
	{ 0x0022, KEY_5 },
	{ 0x0023, KEY_6 },
	{ 0x0024, KEY_7 },
	{ 0x0025, KEY_8 },
	{ 0x0026, KEY_9 },
	{ 0x0027, KEY_0 },
	{ 0x004b, KEY_CHANNELUP },
	{ 0x004e, KEY_CHANNELDOWN },
	{ 0x0009, KEY_ZOOM },
	{ 0x0010, KEY_MUTE },
	{ 0x0056, KEY_VOLUMEDOWN },
	{ 0x0057, KEY_VOLUMEUP },
	{ 0x001c, KEY_GOTO },	/* jump */
	{ 0x043d, KEY_POWER },
};

static u8 af9015_ir_terratec[] = {
	0x80, 0x7f, 0x12, 0xed, 0x3d, 0x04, 0x00, /* power */
	0x80, 0x7f, 0x01, 0xfe, 0x10, 0x00, 0x00, /* mute */
	0x80, 0x7f, 0x1a, 0xe5, 0x57, 0x00, 0x00, /* vol+ */
	0x80, 0x7f, 0x02, 0xfd, 0x56, 0x00, 0x00, /* vol- */
	0x80, 0x7f, 0x1e, 0xe1, 0x4b, 0x00, 0x00, /* ch+ */
	0x80, 0x7f, 0x03, 0xfc, 0x4e, 0x00, 0x00, /* ch- */
	0x80, 0x7f, 0x04, 0xfb, 0x1e, 0x00, 0x00, /* 1 */
	0x80, 0x7f, 0x05, 0xfa, 0x1f, 0x00, 0x00, /* 2 */
	0x80, 0x7f, 0x06, 0xf9, 0x20, 0x00, 0x00, /* 3 */
	0x80, 0x7f, 0x07, 0xf8, 0x21, 0x00, 0x00, /* 4 */
	0x80, 0x7f, 0x08, 0xf7, 0x22, 0x00, 0x00, /* 5 */
	0x80, 0x7f, 0x09, 0xf6, 0x23, 0x00, 0x00, /* 6 */
	0x80, 0x7f, 0x0a, 0xf5, 0x24, 0x00, 0x00, /* 7 */
	0x80, 0x7f, 0x1b, 0xe4, 0x25, 0x00, 0x00, /* 8 */
	0x80, 0x7f, 0x1f, 0xe0, 0x26, 0x00, 0x00, /* 9 */
	0x80, 0x7f, 0x0d, 0xf2, 0x27, 0x00, 0x00, /* 0 */
	0x80, 0x7f, 0x0c, 0xf3, 0x09, 0x00, 0x00, /* zoom */
	0x80, 0x7f, 0x0e, 0xf1, 0x1c, 0x00, 0x00, /* jump */
};

Likewise lirc's irrecord comes up with this lircd.conf:

begin remote

  name  lircd.conf.Cinergy-T-RC-MKII
  bits           56
  eps            30
  aeps          100

  one             0     0
  zero            0     0
  pre_data_bits   8
  pre_data       0x0
  gap          452913
  toggle_bit_mask 0x0

      begin codes
          KEY_1                    0x01000200000001 0x00000000000000
          KEY_2                    0x01000300000001 0x00000000000000
          KEY_3                    0x01000400000001 0x00000000000000
          KEY_4                    0x01000500000001 0x00000000000000
          KEY_5                    0x01000600000001 0x00000000000000
          KEY_6                    0x01000700000001 0x00000000000000
          KEY_7                    0x01000800000001 0x00000000000000
          KEY_8                    0x01000900000001 0x00000000000000
          KEY_9                    0x01000A00000001 0x00000000000000
          KEY_0                    0x01000B00000001 0x00000000000000
          KEY_CHANNELUP            0x01019200000001 0x00000000000000
          KEY_CHANNELDOWN          0x01019300000001 0x00000000000000
          KEY_ZOOM                 0x01017400000001 0x00000000000000
          KEY_MUTE                 0x01007100000001 0x00000000000000
          KEY_VOLUMEDOWN           0x01007200000001 0x00000000000000
          KEY_VOLUMEUP             0x01007300000001 0x00000000000000
          KEY_GOTO                 0x01016200000001 0x00000000000000
          KEY_POWER                0x01007400000001 0x00000000000000
      end codes

end remote

Given that keys, once pressed, remain to be stuck, using both lirc's 
dev/input and without any dæmon trying to catch keypresses, I have not 
reached a functional configuration.

Regards
	Stefan Lippers-Hollmann

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [GIT PULL FOR 2.6.37] new AF9015 devices
  2010-09-10  0:54 ` Stefan Lippers-Hollmann
@ 2010-09-10 10:12   ` Antti Palosaari
  2010-09-10 11:47     ` Stefan Lippers-Hollmann
  0 siblings, 1 reply; 6+ messages in thread
From: Antti Palosaari @ 2010-09-10 10:12 UTC (permalink / raw)
  To: Stefan Lippers-Hollmann; +Cc: linux-media

On 09/10/2010 03:54 AM, Stefan Lippers-Hollmann wrote:
> Another test and some further debugging of the IR core usedby the af9015
> branch of this git tree led me to partial success. DVB-T functionality
> continues to be fine and I've now found the proper values for this remote,
> however once a key gets pressed, it is never released (unless another key
> gets pressed which is then struck or unless I ctrl-c it (only works on
> terminals). Likewise I'm not sure yet how to distinguish between the
> "Cinergy T Dual" and my "Cinergy T RC MKII":


> Given that keys, once pressed, remain to be stuck, using both lirc's
> dev/input and without any dæmon trying to catch keypresses, I have not
> reached a functional configuration.

That`s known issue. Chip configures USB HID polling interval wrongly and 
due to that HID starts repeating usually. There is USB-ID mapped quirks 
in HID driver to avoid that, but only for few ADF9015 IDs...

I know how to fix that totally. I have been waiting new IR core merge 
before switch remote from broken HID + polling to memory read based one. 
But maybe I can do it just now and convert it later to IR core.

Antti


-- 
http://palosaari.fi/

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [GIT PULL FOR 2.6.37] new AF9015 devices
  2010-09-10 10:12   ` Antti Palosaari
@ 2010-09-10 11:47     ` Stefan Lippers-Hollmann
  0 siblings, 0 replies; 6+ messages in thread
From: Stefan Lippers-Hollmann @ 2010-09-10 11:47 UTC (permalink / raw)
  To: Antti Palosaari; +Cc: linux-media

Hi

On Friday 10 September 2010, Antti Palosaari wrote:
>  sure yet how to distinguish between the
> > "Cinergy T Dual" and my "Cinergy T RC MKII":
> 
> 
> > Given that keys, once pressed, remain to be stuck, using both lirc's
> > dev/input and without any dæmon trying to catch keypresses, I have not
> > reached a functional configuration.
> 
> That`s known issue. Chip configures USB HID polling interval wrongly and 
> due to that HID starts repeating usually. There is USB-ID mapped quir

Yes, now I see it. A quickly hacked test seems to improve the stuck key 
events a lot (some keys still have a tendency to get stuck, but in general 
it works):

--- a/drivers/hid/usbhid/hid-quirks.c
+++ b/drivers/hid/usbhid/hid-quirks.c
@@ -45,6 +45,7 @@ static const struct hid_blacklist {
 	{ USB_VENDOR_ID_TOPMAX, USB_DEVICE_ID_TOPMAX_COBRAPAD, HID_QUIRK_BADPAD },
 
 	{ USB_VENDOR_ID_AFATECH, USB_DEVICE_ID_AFATECH_AF9016, HID_QUIRK_FULLSPEED_INTERVAL },
+	{ 0x0ccd, 0x0097, HID_QUIRK_FULLSPEED_INTERVAL },
 
 	{ USB_VENDOR_ID_ETURBOTOUCH, USB_DEVICE_ID_ETURBOTOUCH, HID_QUIRK_MULTI_INPUT },
 	{ USB_VENDOR_ID_PANTHERLORD, USB_DEVICE_ID_PANTHERLORD_TWIN_USB_JOYSTICK, HID_QUIRK_MULTI_INPUT | HID_QUIRK_SKIP_OUTPUT_REPORTS },

Regards
	Stefan Lippers-Hollmann

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [GIT PULL FOR 2.6.37] new AF9015 devices
  2010-09-09 21:12 [GIT PULL FOR 2.6.37] new AF9015 devices Antti Palosaari
  2010-09-09 23:19 ` Stefan Lippers-Hollmann
  2010-09-10  0:54 ` Stefan Lippers-Hollmann
@ 2010-09-22 19:02 ` Mauro Carvalho Chehab
  2 siblings, 0 replies; 6+ messages in thread
From: Mauro Carvalho Chehab @ 2010-09-22 19:02 UTC (permalink / raw)
  To: Antti Palosaari
  Cc: Stefan Lippers-Hollmann, linux-media, TerraTux, Patrick Boettcher

Em 09-09-2010 18:12, Antti Palosaari escreveu:
> Moikka Mauro!
> This patch series adds support for TerraTec Cinergy T Stick Dual RC and TerraTec Cinergy T Stick RC. Also MxL5007T devices with ref. design IDs should be working. Cinergy T Stick remote is most likely not working since it seems to use different remote as Cinergy T Dual... Stefan could you test and ensure T Stick is working?
> 
> and thanks to TerraTec!
> 
> t. Antti
> 
> 
> The following changes since commit c9889354c6d36d6278ed851c74ace02d72efdd59:
> 
>   V4L/DVB: rc-core: increase repeat time (2010-09-08 13:04:40 -0300)
> 
> are available in the git repository at:
>   git://linuxtv.org/anttip/media_tree.git af9015
> 
> Antti Palosaari (6):
>       af9015: simple comment update

Hmm... dvb-usb.h defines it as:
	struct dvb_usb_device_description devices[12];

It took me some time to find the current limit ;)

IMO, instead of just comment it as: 
	.num_device_descs = 9, /* check max from dvb-usb.h */

The better would be to add a definition at dvb-usb.h header for the max limit, and properly pointing it
on your drivers, like:

on dvb-usb.h:

	#define MAX_DEVICES_PER_DEV_PROPS	12
...
	struct dvb_usb_device_description devices[MAX_DEVICES_PER_DEV_PROPS];

on af9015 (and others):
	.num_device_descs = 9, /* max is MAX_DEVICES_PER_DEV_PROPS as defined on dvb-usb.h */

I'll apply this patch to avoid breaking your series, but please provide me a fix.

>       af9015: fix bug introduced by commit 490ade7e3f4474f626a8f5d778ead4e599b94fbcas
>       af9013: add support for MaxLinear MxL5007T tuner
>       af9015: add support for TerraTec Cinergy T Stick Dual RC
>       af9015: add remote support for TerraTec Cinergy T Stick Dual RC
>       af9015: map TerraTec Cinergy T Stick Dual RC remote to device ID
> 
>  drivers/media/dvb/dvb-usb/Kconfig         |    1 +
>  drivers/media/dvb/dvb-usb/af9015.c        |   50 +++++++++++++----------
>  drivers/media/dvb/dvb-usb/af9015.h        |   63 +++++++++++++++++++++++++++++
>  drivers/media/dvb/dvb-usb/dvb-usb-ids.h   |    1 +
>  drivers/media/dvb/frontends/af9013.c      |    1 +
>  drivers/media/dvb/frontends/af9013.h      |    1 +
>  drivers/media/dvb/frontends/af9013_priv.h |    5 +-
>  7 files changed, 99 insertions(+), 23 deletions(-)
> 
> 
Cheers,
Mauro

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-09-22 19:03 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-09 21:12 [GIT PULL FOR 2.6.37] new AF9015 devices Antti Palosaari
2010-09-09 23:19 ` Stefan Lippers-Hollmann
2010-09-10  0:54 ` Stefan Lippers-Hollmann
2010-09-10 10:12   ` Antti Palosaari
2010-09-10 11:47     ` Stefan Lippers-Hollmann
2010-09-22 19:02 ` Mauro Carvalho Chehab

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.