diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2010-10-22 18:52:53 +0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2010-10-23 02:05:37 +0400 |
commit | 3459d4553b95084a6390e9b62687488538f33c57 (patch) | |
tree | 2a486ba1f05e4a8a37b5300e9830c3044124b251 /drivers/media/IR/mceusb.c | |
parent | 17c2b1fd71f75a50284a33af9bc0d98ed1cbcd30 (diff) | |
download | linux-3459d4553b95084a6390e9b62687488538f33c57.tar.xz |
[media] mceusb: Allow a per-model device name
It is better to use a per-model device name, especially on
multi-function devices like Polaris. So, allow overriding the
default name at the mceusb model table.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Jarod Wilson <jarod@redhat.com>
Diffstat (limited to 'drivers/media/IR/mceusb.c')
-rw-r--r-- | drivers/media/IR/mceusb.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/media/IR/mceusb.c b/drivers/media/IR/mceusb.c index 4d4ab7046bfa..6c3918867257 100644 --- a/drivers/media/IR/mceusb.c +++ b/drivers/media/IR/mceusb.c @@ -124,6 +124,7 @@ struct mceusb_model { u32 is_polaris:1; const char *rc_map; /* Allow specify a per-board map */ + const char *name; /* per-board name */ }; static const struct mceusb_model mceusb_model[] = { @@ -150,6 +151,7 @@ static const struct mceusb_model mceusb_model[] = { * to allow testing it */ .rc_map = RC_MAP_RC5_HAUPPAUGE_NEW, + .name = "cx231xx MCE IR", }, }; @@ -955,6 +957,7 @@ static struct input_dev *mceusb_init_input_dev(struct mceusb_dev *ir) struct ir_dev_props *props; struct device *dev = ir->dev; const char *rc_map = RC_MAP_RC6_MCE; + const char *name = "Media Center Ed. eHome Infrared Remote Transceiver"; int ret = -ENODEV; idev = input_allocate_device(); @@ -970,8 +973,11 @@ static struct input_dev *mceusb_init_input_dev(struct mceusb_dev *ir) goto props_alloc_failed; } - snprintf(ir->name, sizeof(ir->name), "Media Center Ed. eHome " - "Infrared Remote Transceiver (%04x:%04x)", + if (mceusb_model[ir->model].name) + name = mceusb_model[ir->model].name; + + snprintf(ir->name, sizeof(ir->name), "%s (%04x:%04x)", + name, le16_to_cpu(ir->usbdev->descriptor.idVendor), le16_to_cpu(ir->usbdev->descriptor.idProduct)); |