linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Add support for Delock 61959 and its remote control
@ 2013-04-13 15:03 Jakob Haufe
  2013-04-13 15:03 ` [PATCH 1/2] rc: Add rc-delock-61959 Jakob Haufe
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Jakob Haufe @ 2013-04-13 15:03 UTC (permalink / raw)
  To: linux-media

This time for real with all bells and whistles:

Delock 61959 is a relabeled MexMedia UB-425TC with a different USB ID and a
different remote.

Patch 1 adds the keytable for the remote control and patch 2 adds support for
the device itself. I'm reusing maxmedia_ub425_tc as I didn't want to duplicate
it without need.

DVB-T is not working (yet) because of the DRX-K firmware issue.


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

* [PATCH 1/2] rc: Add rc-delock-61959
  2013-04-13 15:03 [PATCH] Add support for Delock 61959 and its remote control Jakob Haufe
@ 2013-04-13 15:03 ` Jakob Haufe
  2013-04-13 16:33   ` Antti Palosaari
  2013-04-13 15:03 ` [PATCH 2/2] em28xx: Add support for 1b80:e1cc Delock 61959 Jakob Haufe
  2013-04-13 16:32 ` [PATCH] Add support for Delock 61959 and its remote control Antti Palosaari
  2 siblings, 1 reply; 6+ messages in thread
From: Jakob Haufe @ 2013-04-13 15:03 UTC (permalink / raw)
  To: linux-media; +Cc: Jakob Haufe

This adds the keytable for the remote that comes with the Delock 61959.

NEC protocol with address 0x866b.

Signed-off-by: Jakob Haufe <sur5r@sur5r.net>
---
 drivers/media/rc/keymaps/Makefile          |    1 +
 drivers/media/rc/keymaps/rc-delock-61959.c |   83 ++++++++++++++++++++++++++++
 include/media/rc-map.h                     |    1 +
 3 files changed, 85 insertions(+)
 create mode 100644 drivers/media/rc/keymaps/rc-delock-61959.c

diff --git a/drivers/media/rc/keymaps/Makefile b/drivers/media/rc/keymaps/Makefile
index 7786619..e2b7ddb 100644
--- a/drivers/media/rc/keymaps/Makefile
+++ b/drivers/media/rc/keymaps/Makefile
@@ -20,6 +20,7 @@ obj-$(CONFIG_RC_MAP) += rc-adstech-dvb-t-pci.o \
 			rc-budget-ci-old.o \
 			rc-cinergy-1400.o \
 			rc-cinergy.o \
+			rc-delock-61959.o \
 			rc-dib0700-nec.o \
 			rc-dib0700-rc5.o \
 			rc-digitalnow-tinytwin.o \
diff --git a/drivers/media/rc/keymaps/rc-delock-61959.c b/drivers/media/rc/keymaps/rc-delock-61959.c
new file mode 100644
index 0000000..01bed86
--- /dev/null
+++ b/drivers/media/rc/keymaps/rc-delock-61959.c
@@ -0,0 +1,83 @@
+/* rc-delock-61959.c - Keytable for Delock
+ *
+ * Copyright (c) 2013 by Jakob Haufe <sur5r@sur5r.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ */
+
+#include <media/rc-map.h>
+#include <linux/module.h>
+
+/*
+ * Keytable for remote provided with Delock 61959
+ */
+static struct rc_map_table delock_61959[] = {
+	{ 0x866b16, KEY_POWER2 },	/* Power */
+	{ 0x866b0c, KEY_POWER },	/* Shut Down */
+
+	{ 0x866b00, KEY_1},
+	{ 0x866b01, KEY_2},
+	{ 0x866b02, KEY_3},
+	{ 0x866b03, KEY_4},
+	{ 0x866b04, KEY_5},
+	{ 0x866b05, KEY_6},
+	{ 0x866b06, KEY_7},
+	{ 0x866b07, KEY_8},
+	{ 0x866b08, KEY_9},
+	{ 0x866b14, KEY_0},
+
+	{ 0x866b0a, KEY_ZOOM},		/* Full Screen */
+	{ 0x866b10, KEY_CAMERA},	/* Photo */
+	{ 0x866b0e, KEY_CHANNEL},	/* circular arrow / Recall */
+	{ 0x866b13, KEY_ESC},           /* Back */
+
+	{ 0x866b20, KEY_UP},
+	{ 0x866b21, KEY_DOWN},
+	{ 0x866b42, KEY_LEFT},
+	{ 0x866b43, KEY_RIGHT},
+	{ 0x866b0b, KEY_OK},
+
+	{ 0x866b11, KEY_CHANNELUP},
+	{ 0x866b1b, KEY_CHANNELDOWN},
+
+	{ 0x866b12, KEY_VOLUMEUP},
+	{ 0x866b48, KEY_VOLUMEDOWN},
+	{ 0x866b44, KEY_MUTE},
+
+	{ 0x866b1a, KEY_RECORD},
+	{ 0x866b41, KEY_PLAY},
+	{ 0x866b40, KEY_STOP},
+	{ 0x866b19, KEY_PAUSE},
+	{ 0x866b1c, KEY_FASTFORWARD},	/* >> / FWD */
+	{ 0x866b1e, KEY_REWIND},	/* << / REW */
+
+};
+
+static struct rc_map_list delock_61959_map = {
+	.map = {
+		.scan    = delock_61959,
+		.size    = ARRAY_SIZE(delock_61959),
+		.rc_type = RC_TYPE_NEC,
+		.name    = RC_MAP_DELOCK_61959,
+	}
+};
+
+static int __init init_rc_map_delock_61959(void)
+{
+	return rc_map_register(&delock_61959_map);
+}
+
+static void __exit exit_rc_map_delock_61959(void)
+{
+	rc_map_unregister(&delock_61959_map);
+}
+
+module_init(init_rc_map_delock_61959)
+module_exit(exit_rc_map_delock_61959)
+
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Jakob Haufe <sur5r@sur5r.net>");
+MODULE_DESCRIPTION("Delock 61959 remote keytable");
diff --git a/include/media/rc-map.h b/include/media/rc-map.h
index f74ee6f..46326ab 100644
--- a/include/media/rc-map.h
+++ b/include/media/rc-map.h
@@ -111,6 +111,7 @@ void rc_map_init(void);
 #define RC_MAP_BUDGET_CI_OLD             "rc-budget-ci-old"
 #define RC_MAP_CINERGY_1400              "rc-cinergy-1400"
 #define RC_MAP_CINERGY                   "rc-cinergy"
+#define RC_MAP_DELOCK_61959              "rc-delock-61959"
 #define RC_MAP_DIB0700_NEC_TABLE         "rc-dib0700-nec"
 #define RC_MAP_DIB0700_RC5_TABLE         "rc-dib0700-rc5"
 #define RC_MAP_DIGITALNOW_TINYTWIN       "rc-digitalnow-tinytwin"
-- 
1.7.10.4


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

* [PATCH 2/2] em28xx: Add support for 1b80:e1cc Delock 61959
  2013-04-13 15:03 [PATCH] Add support for Delock 61959 and its remote control Jakob Haufe
  2013-04-13 15:03 ` [PATCH 1/2] rc: Add rc-delock-61959 Jakob Haufe
@ 2013-04-13 15:03 ` Jakob Haufe
  2013-04-13 16:34   ` Antti Palosaari
  2013-04-13 16:32 ` [PATCH] Add support for Delock 61959 and its remote control Antti Palosaari
  2 siblings, 1 reply; 6+ messages in thread
From: Jakob Haufe @ 2013-04-13 15:03 UTC (permalink / raw)
  To: linux-media; +Cc: Jakob Haufe

Hardware is the same as MaxMedia UB425-TC but ships with a different
remote.

Signed-off-by: Jakob Haufe <sur5r@sur5r.net>
---
 drivers/media/usb/em28xx/em28xx-cards.c |   16 ++++++++++++++++
 drivers/media/usb/em28xx/em28xx-dvb.c   |    5 +++--
 drivers/media/usb/em28xx/em28xx.h       |    1 +
 3 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/drivers/media/usb/em28xx/em28xx-cards.c b/drivers/media/usb/em28xx/em28xx-cards.c
index 1d3866f..f625907 100644
--- a/drivers/media/usb/em28xx/em28xx-cards.c
+++ b/drivers/media/usb/em28xx/em28xx-cards.c
@@ -374,6 +374,7 @@ static struct em28xx_reg_seq hauppauge_930c_digital[] = {
 #endif
 
 /* 1b80:e425 MaxMedia UB425-TC
+ * 1b80:e1cc Delock 61959
  * GPIO_6 - demod reset, 0=active
  * GPIO_7 - LED, 0=active
  */
@@ -2016,6 +2017,19 @@ struct em28xx_board em28xx_boards[] = {
 		.i2c_speed    = EM28XX_I2C_CLK_WAIT_ENABLE |
 				EM28XX_I2C_FREQ_400_KHZ,
 	},
+	/* 1b80:e1cc Delock 61959
+	 * Empia EM2874B + Micronas DRX 3913KA2 + NXP TDA18271HDC2
+         * mostly the same as MaxMedia UB-425-TC but different remote */
+	[EM2874_BOARD_DELOCK_61959] = {
+		.name          = "Delock 61959",
+		.tuner_type    = TUNER_ABSENT,
+		.tuner_gpio    = maxmedia_ub425_tc,
+		.has_dvb       = 1,
+		.ir_codes      = RC_MAP_DELOCK_61959,
+		.def_i2c_bus   = 1,
+		.i2c_speed     = EM28XX_I2C_CLK_WAIT_ENABLE |
+				EM28XX_I2C_FREQ_400_KHZ,
+	},
 };
 const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards);
 
@@ -2177,6 +2191,8 @@ struct usb_device_id em28xx_id_table[] = {
 			.driver_info = EM2884_BOARD_PCTV_510E },
 	{ USB_DEVICE(0x2013, 0x0251),
 			.driver_info = EM2884_BOARD_PCTV_520E },
+	{ USB_DEVICE(0x1b80, 0xe1cc),
+			.driver_info = EM2874_BOARD_DELOCK_61959 },
 	{ },
 };
 MODULE_DEVICE_TABLE(usb, em28xx_id_table);
diff --git a/drivers/media/usb/em28xx/em28xx-dvb.c b/drivers/media/usb/em28xx/em28xx-dvb.c
index 42a6a26..663c998 100644
--- a/drivers/media/usb/em28xx/em28xx-dvb.c
+++ b/drivers/media/usb/em28xx/em28xx-dvb.c
@@ -1213,6 +1213,7 @@ static int em28xx_dvb_init(struct em28xx *dev)
 			dvb_attach(a8293_attach, dvb->fe[0], &dev->i2c_adap[dev->def_i2c_bus],
 				&em28xx_a8293_config);
 		break;
+	case EM2874_BOARD_DELOCK_61959:
 	case EM2874_BOARD_MAXMEDIA_UB425_TC:
 		/* attach demodulator */
 		dvb->fe[0] = dvb_attach(drxk_attach, &maxmedia_ub425_tc_drxk,
@@ -1232,8 +1233,8 @@ static int em28xx_dvb_init(struct em28xx *dev)
 		}
 
 		/* TODO: we need drx-3913k firmware in order to support DVB-T */
-		em28xx_info("MaxMedia UB425-TC: only DVB-C supported by that " \
-				"driver version\n");
+		em28xx_info("MaxMedia UB425-TC/Delock 61959: only DVB-C " \
+				"supported by that driver version\n");
 
 		break;
 	case EM2884_BOARD_PCTV_510E:
diff --git a/drivers/media/usb/em28xx/em28xx.h b/drivers/media/usb/em28xx/em28xx.h
index a9323b6..59a9580 100644
--- a/drivers/media/usb/em28xx/em28xx.h
+++ b/drivers/media/usb/em28xx/em28xx.h
@@ -130,6 +130,7 @@
 #define EM2884_BOARD_PCTV_520E			  86
 #define EM2884_BOARD_TERRATEC_HTC_USB_XS	  87
 #define EM2884_BOARD_C3TECH_DIGITAL_DUO		  88
+#define EM2874_BOARD_DELOCK_61959		  89
 
 /* Limits minimum and default number of buffers */
 #define EM28XX_MIN_BUF 4
-- 
1.7.10.4


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

* Re: [PATCH] Add support for Delock 61959 and its remote control
  2013-04-13 15:03 [PATCH] Add support for Delock 61959 and its remote control Jakob Haufe
  2013-04-13 15:03 ` [PATCH 1/2] rc: Add rc-delock-61959 Jakob Haufe
  2013-04-13 15:03 ` [PATCH 2/2] em28xx: Add support for 1b80:e1cc Delock 61959 Jakob Haufe
@ 2013-04-13 16:32 ` Antti Palosaari
  2 siblings, 0 replies; 6+ messages in thread
From: Antti Palosaari @ 2013-04-13 16:32 UTC (permalink / raw)
  To: Jakob Haufe; +Cc: linux-media

On 04/13/2013 06:03 PM, Jakob Haufe wrote:
> This time for real with all bells and whistles:
>
> Delock 61959 is a relabeled MexMedia UB-425TC with a different USB ID and a
> different remote.
>
> Patch 1 adds the keytable for the remote control and patch 2 adds support for
> the device itself. I'm reusing maxmedia_ub425_tc as I didn't want to duplicate
> it without need.
>
> DVB-T is not working (yet) because of the DRX-K firmware issue.

Patches seems to be correct. Thank you!

regards
Antti

-- 
http://palosaari.fi/

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

* Re: [PATCH 1/2] rc: Add rc-delock-61959
  2013-04-13 15:03 ` [PATCH 1/2] rc: Add rc-delock-61959 Jakob Haufe
@ 2013-04-13 16:33   ` Antti Palosaari
  0 siblings, 0 replies; 6+ messages in thread
From: Antti Palosaari @ 2013-04-13 16:33 UTC (permalink / raw)
  To: Jakob Haufe; +Cc: linux-media

On 04/13/2013 06:03 PM, Jakob Haufe wrote:
> This adds the keytable for the remote that comes with the Delock 61959.
>
> NEC protocol with address 0x866b.
>
> Signed-off-by: Jakob Haufe <sur5r@sur5r.net>

Reviewed-by: Antti Palosaari <crope@iki.fi>



-- 
http://palosaari.fi/

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

* Re: [PATCH 2/2] em28xx: Add support for 1b80:e1cc Delock 61959
  2013-04-13 15:03 ` [PATCH 2/2] em28xx: Add support for 1b80:e1cc Delock 61959 Jakob Haufe
@ 2013-04-13 16:34   ` Antti Palosaari
  0 siblings, 0 replies; 6+ messages in thread
From: Antti Palosaari @ 2013-04-13 16:34 UTC (permalink / raw)
  To: Jakob Haufe; +Cc: linux-media

On 04/13/2013 06:03 PM, Jakob Haufe wrote:
> Hardware is the same as MaxMedia UB425-TC but ships with a different
> remote.
>
> Signed-off-by: Jakob Haufe <sur5r@sur5r.net>

Reviewed-by: Antti Palosaari <crope@iki.fi>

-- 
http://palosaari.fi/

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

end of thread, other threads:[~2013-04-13 16:35 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-13 15:03 [PATCH] Add support for Delock 61959 and its remote control Jakob Haufe
2013-04-13 15:03 ` [PATCH 1/2] rc: Add rc-delock-61959 Jakob Haufe
2013-04-13 16:33   ` Antti Palosaari
2013-04-13 15:03 ` [PATCH 2/2] em28xx: Add support for 1b80:e1cc Delock 61959 Jakob Haufe
2013-04-13 16:34   ` Antti Palosaari
2013-04-13 16:32 ` [PATCH] Add support for Delock 61959 and its remote control Antti Palosaari

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).