Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit af86ce79 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab
Browse files

[media] remove the old RC_MAP_HAUPPAUGE_NEW RC map



The rc-hauppauge-new map is a messy thing, as it bundles 3

different remote controllers as if they were just one,
discarding the address byte. Also, some key maps are wrong.

With the conversion to the new rc-core, it is likely that
most of the devices won't be working properly, as the i2c
driver and the raw decoders are now providing 16 bits for
the remote, instead of just 8.

 delete mode 100644 drivers/media/rc/keymaps/rc-hauppauge-new.c

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: default avatarJarod Wilson <jarod@redhat.com>
parent 15195d3a
Loading
Loading
Loading
Loading
+12 −3
Original line number Diff line number Diff line
@@ -102,6 +102,7 @@ struct budget_ci_ir {
	int rc5_device;
	u32 ir_key;
	bool have_command;
	bool full_rc5;		/* Outputs a full RC5 code */
};

struct budget_ci {
@@ -154,11 +155,18 @@ static void msp430_ir_interrupt(unsigned long data)
		return;
	budget_ci->ir.have_command = false;

	/* FIXME: We should generate complete scancodes with device info */
	if (budget_ci->ir.rc5_device != IR_DEVICE_ANY &&
	    budget_ci->ir.rc5_device != (command & 0x1f))
		return;

	if (budget_ci->ir.full_rc5) {
		rc_keydown(dev,
			   budget_ci->ir.rc5_device <<8 | budget_ci->ir.ir_key,
			   (command & 0x20) ? 1 : 0);
		return;
	}

	/* FIXME: We should generate complete scancodes for all devices */
	rc_keydown(dev, budget_ci->ir.ir_key, (command & 0x20) ? 1 : 0);
}

@@ -206,7 +214,8 @@ static int msp430_ir_init(struct budget_ci *budget_ci)
	case 0x1011:
	case 0x1012:
		/* The hauppauge keymap is a superset of these remotes */
		dev->map_name = RC_MAP_HAUPPAUGE_NEW;
		dev->map_name = RC_MAP_HAUPPAUGE;
		budget_ci->ir.full_rc5 = true;

		if (rc5_device < 0)
			budget_ci->ir.rc5_device = 0x1f;
+0 −1
Original line number Diff line number Diff line
@@ -37,7 +37,6 @@ obj-$(CONFIG_RC_MAP) += rc-adstech-dvb-t-pci.o \
			rc-gadmei-rm008z.o \
			rc-genius-tvgo-a11mce.o \
			rc-gotview7135.o \
			rc-hauppauge-new.o \
			rc-imon-mce.o \
			rc-imon-pad.o \
			rc-iodata-bctv7e.o \
+0 −100
Original line number Diff line number Diff line
/* hauppauge-new.h - Keytable for hauppauge_new Remote Controller
 *
 * keymap imported from ir-keymaps.c
 *
 * Copyright (c) 2010 by Mauro Carvalho Chehab <mchehab@redhat.com>
 *
 * 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>

/* Hauppauge: the newer, gray remotes (seems there are multiple
 * slightly different versions), shipped with cx88+ivtv cards.
 * almost rc5 coding, but some non-standard keys */

static struct rc_map_table hauppauge_new[] = {
	/* Keys 0 to 9 */
	{ 0x00, KEY_0 },
	{ 0x01, KEY_1 },
	{ 0x02, KEY_2 },
	{ 0x03, KEY_3 },
	{ 0x04, KEY_4 },
	{ 0x05, KEY_5 },
	{ 0x06, KEY_6 },
	{ 0x07, KEY_7 },
	{ 0x08, KEY_8 },
	{ 0x09, KEY_9 },

	{ 0x0a, KEY_TEXT },		/* keypad asterisk as well */
	{ 0x0b, KEY_RED },		/* red button */
	{ 0x0c, KEY_RADIO },
	{ 0x0d, KEY_MENU },
	{ 0x0e, KEY_SUBTITLE },		/* also the # key */
	{ 0x0f, KEY_MUTE },
	{ 0x10, KEY_VOLUMEUP },
	{ 0x11, KEY_VOLUMEDOWN },
	{ 0x12, KEY_PREVIOUS },		/* previous channel */
	{ 0x14, KEY_UP },
	{ 0x15, KEY_DOWN },
	{ 0x16, KEY_LEFT },
	{ 0x17, KEY_RIGHT },
	{ 0x18, KEY_VCR },		/* Videos */
	{ 0x19, KEY_AUDIO },		/* Music */
	/* 0x1a: Pictures - presume this means
	   "Multimedia Home Platform" -
	   no "PICTURES" key in input.h
	 */
	{ 0x1a, KEY_CAMERA },

	{ 0x1b, KEY_EPG },		/* Guide */
	{ 0x1c, KEY_TV },
	{ 0x1e, KEY_NEXTSONG },		/* skip >| */
	{ 0x1f, KEY_EXIT },		/* back/exit */
	{ 0x20, KEY_CHANNELUP },	/* channel / program + */
	{ 0x21, KEY_CHANNELDOWN },	/* channel / program - */
	{ 0x22, KEY_VIDEO },		/* source (old black remote) */
	{ 0x24, KEY_PREVIOUSSONG },	/* replay |< */
	{ 0x25, KEY_ENTER },		/* OK */
	{ 0x26, KEY_SLEEP },		/* minimize (old black remote) */
	{ 0x29, KEY_BLUE },		/* blue key */
	{ 0x2e, KEY_GREEN },		/* green button */
	{ 0x30, KEY_PAUSE },		/* pause */
	{ 0x32, KEY_REWIND },		/* backward << */
	{ 0x34, KEY_FASTFORWARD },	/* forward >> */
	{ 0x35, KEY_PLAY },
	{ 0x36, KEY_STOP },
	{ 0x37, KEY_RECORD },		/* recording */
	{ 0x38, KEY_YELLOW },		/* yellow key */
	{ 0x3b, KEY_SELECT },		/* top right button */
	{ 0x3c, KEY_ZOOM },		/* full */
	{ 0x3d, KEY_POWER },		/* system power (green button) */
};

static struct rc_map_list hauppauge_new_map = {
	.map = {
		.scan    = hauppauge_new,
		.size    = ARRAY_SIZE(hauppauge_new),
		.rc_type = RC_TYPE_UNKNOWN,	/* Legacy IR type */
		.name    = RC_MAP_HAUPPAUGE_NEW,
	}
};

static int __init init_rc_map_hauppauge_new(void)
{
	return rc_map_register(&hauppauge_new_map);
}

static void __exit exit_rc_map_hauppauge_new(void)
{
	rc_map_unregister(&hauppauge_new_map);
}

module_init(init_rc_map_hauppauge_new)
module_exit(exit_rc_map_hauppauge_new)

MODULE_LICENSE("GPL");
MODULE_AUTHOR("Mauro Carvalho Chehab <mchehab@redhat.com>");
+1 −1
Original line number Diff line number Diff line
@@ -96,7 +96,7 @@ static int cx18_i2c_new_ir(struct cx18 *cx, struct i2c_adapter *adap, u32 hw,
	/* Our default information for ir-kbd-i2c.c to use */
	switch (hw) {
	case CX18_HW_Z8F0811_IR_RX_HAUP:
		init_data->ir_codes = RC_MAP_HAUPPAUGE_NEW;
		init_data->ir_codes = RC_MAP_HAUPPAUGE;
		init_data->internal_get_key_func = IR_KBD_GET_KEY_HAUP_XVR;
		init_data->type = RC_TYPE_RC5;
		init_data->name = cx->card_name;
+2 −2
Original line number Diff line number Diff line
@@ -283,7 +283,7 @@ int cx88_ir_init(struct cx88_core *core, struct pci_dev *pci)
	case CX88_BOARD_PCHDTV_HD3000:
	case CX88_BOARD_PCHDTV_HD5500:
	case CX88_BOARD_HAUPPAUGE_IRONLY:
		ir_codes = RC_MAP_HAUPPAUGE_NEW;
		ir_codes = RC_MAP_HAUPPAUGE;
		ir->sampling = 1;
		break;
	case CX88_BOARD_WINFAST_DTV2000H:
@@ -604,7 +604,7 @@ void cx88_i2c_init_ir(struct cx88_core *core)
		if (*addrp == 0x71) {
			/* Hauppauge XVR */
			core->init_data.name = "cx88 Hauppauge XVR remote";
			core->init_data.ir_codes = RC_MAP_HAUPPAUGE_NEW;
			core->init_data.ir_codes = RC_MAP_HAUPPAUGE;
			core->init_data.type = RC_TYPE_RC5;
			core->init_data.internal_get_key_func = IR_KBD_GET_KEY_HAUP_XVR;

Loading