V4L/DVB: dvb-usb: prepare drivers for using rc-core
This is a big patch, yet trivial. It just move the RC properties
to a separate struct, in order to prepare the dvb-usb drivers to
use rc-core. There's no change on the behavior of the drivers.
With this change, it is possible to have both legacy and rc-core
based code inside the dvb-usb-remote, allowing a gradual migration
to rc-core, driver per driver.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
diff --git a/drivers/media/dvb/dvb-usb/m920x.c b/drivers/media/dvb/dvb-usb/m920x.c
index 1e1cb6b..bdef1a1 100644
--- a/drivers/media/dvb/dvb-usb/m920x.c
+++ b/drivers/media/dvb/dvb-usb/m920x.c
@@ -69,7 +69,7 @@
int adap_enabled[M9206_MAX_ADAPTERS] = { 0 };
/* Remote controller init. */
- if (d->props.rc_query) {
+ if (d->props.rc.legacy.rc_query) {
deb("Initialising remote control\n");
while (rc_seq->address) {
if ((ret = m920x_write(d->udev, M9206_CORE,
@@ -142,9 +142,9 @@
if ((ret = m920x_read(d->udev, M9206_CORE, 0x0, M9206_RC_KEY, rc_state + 1, 1)) != 0)
goto unlock;
- for (i = 0; i < d->props.rc_key_map_size; i++)
- if (rc5_data(&d->props.rc_key_map[i]) == rc_state[1]) {
- *event = d->props.rc_key_map[i].keycode;
+ for (i = 0; i < d->props.rc.legacy.rc_key_map_size; i++)
+ if (rc5_data(&d->props.rc.legacy.rc_key_map[i]) == rc_state[1]) {
+ *event = d->props.rc.legacy.rc_key_map[i].keycode;
switch(rc_state[0]) {
case 0x80:
@@ -784,10 +784,12 @@
.firmware = "dvb-usb-megasky-02.fw",
.download_firmware = m920x_firmware_download,
- .rc_interval = 100,
- .rc_key_map = ir_codes_megasky_table,
- .rc_key_map_size = ARRAY_SIZE(ir_codes_megasky_table),
- .rc_query = m920x_rc_query,
+ .rc.legacy = {
+ .rc_interval = 100,
+ .rc_key_map = ir_codes_megasky_table,
+ .rc_key_map_size = ARRAY_SIZE(ir_codes_megasky_table),
+ .rc_query = m920x_rc_query,
+ },
.size_of_priv = sizeof(struct m920x_state),
@@ -885,10 +887,12 @@
.firmware = "dvb-usb-tvwalkert.fw",
.download_firmware = m920x_firmware_download,
- .rc_interval = 100,
- .rc_key_map = ir_codes_tvwalkertwin_table,
- .rc_key_map_size = ARRAY_SIZE(ir_codes_tvwalkertwin_table),
- .rc_query = m920x_rc_query,
+ .rc.legacy = {
+ .rc_interval = 100,
+ .rc_key_map = ir_codes_tvwalkertwin_table,
+ .rc_key_map_size = ARRAY_SIZE(ir_codes_tvwalkertwin_table),
+ .rc_query = m920x_rc_query,
+ },
.size_of_priv = sizeof(struct m920x_state),
@@ -992,10 +996,12 @@
.usb_ctrl = DEVICE_SPECIFIC,
.download_firmware = NULL,
- .rc_interval = 100,
- .rc_key_map = ir_codes_pinnacle310e_table,
- .rc_key_map_size = ARRAY_SIZE(ir_codes_pinnacle310e_table),
- .rc_query = m920x_rc_query,
+ .rc.legacy = {
+ .rc_interval = 100,
+ .rc_key_map = ir_codes_pinnacle310e_table,
+ .rc_key_map_size = ARRAY_SIZE(ir_codes_pinnacle310e_table),
+ .rc_query = m920x_rc_query,
+ },
.size_of_priv = sizeof(struct m920x_state),