From 28f47069e0c0436a507ca9172a60b09b8a2a8fb6 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Fri, 1 Mar 2013 11:28:27 -0800 Subject: [PATCH] 3.4-stable patches added patches: ata_piix-add-device-ids-for-intel-wellsburg-pch.patch ata_piix-ide-mode-sata-patch-for-intel-avoton-deviceids.patch perf-tools-fix-build-with-bison-2.3-and-older.patch staging-comedi-check-s-async-for-poll-read-and-write.patch staging-comedi-ni_labpc-correct-differential-channel-sequence-for-ai-commands.patch staging-comedi-ni_labpc-set-up-command4-register-after-command3.patch usb-hid-quirks-for-masterkit-ma901-usb-radio.patch --- ...d-device-ids-for-intel-wellsburg-pch.patch | 37 +++++++++ ...ata-patch-for-intel-avoton-deviceids.patch | 36 +++++++++ ...s-fix-build-with-bison-2.3-and-older.patch | 74 +++++++++++++++++ queue-3.4/series | 7 ++ ...heck-s-async-for-poll-read-and-write.patch | 68 ++++++++++++++++ ...ial-channel-sequence-for-ai-commands.patch | 54 +++++++++++++ ...-up-command4-register-after-command3.patch | 79 +++++++++++++++++++ ...quirks-for-masterkit-ma901-usb-radio.patch | 45 +++++++++++ 8 files changed, 400 insertions(+) create mode 100644 queue-3.4/ata_piix-add-device-ids-for-intel-wellsburg-pch.patch create mode 100644 queue-3.4/ata_piix-ide-mode-sata-patch-for-intel-avoton-deviceids.patch create mode 100644 queue-3.4/perf-tools-fix-build-with-bison-2.3-and-older.patch create mode 100644 queue-3.4/staging-comedi-check-s-async-for-poll-read-and-write.patch create mode 100644 queue-3.4/staging-comedi-ni_labpc-correct-differential-channel-sequence-for-ai-commands.patch create mode 100644 queue-3.4/staging-comedi-ni_labpc-set-up-command4-register-after-command3.patch create mode 100644 queue-3.4/usb-hid-quirks-for-masterkit-ma901-usb-radio.patch diff --git a/queue-3.4/ata_piix-add-device-ids-for-intel-wellsburg-pch.patch b/queue-3.4/ata_piix-add-device-ids-for-intel-wellsburg-pch.patch new file mode 100644 index 00000000000..96ad596152b --- /dev/null +++ b/queue-3.4/ata_piix-add-device-ids-for-intel-wellsburg-pch.patch @@ -0,0 +1,37 @@ +From 3aee8bc52c415aba8148f144e5e5359b0fd75dd1 Mon Sep 17 00:00:00 2001 +From: James Ralston +Date: Fri, 8 Feb 2013 17:24:12 -0800 +Subject: ata_piix: Add Device IDs for Intel Wellsburg PCH + +From: James Ralston + +commit 3aee8bc52c415aba8148f144e5e5359b0fd75dd1 upstream. + +This patch adds the IDE-mode SATA Device IDs for the Intel Wellsburg PCH + +Signed-off-by: James Ralston +Signed-off-by: Jeff Garzik +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/ata/ata_piix.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +--- a/drivers/ata/ata_piix.c ++++ b/drivers/ata/ata_piix.c +@@ -339,6 +339,15 @@ static const struct pci_device_id piix_p + { 0x8086, 0x1f30, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, + /* SATA Controller IDE (Avoton) */ + { 0x8086, 0x1f31, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, ++ /* SATA Controller IDE (Wellsburg) */ ++ { 0x8086, 0x8d00, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, ++ /* SATA Controller IDE (Wellsburg) */ ++ { 0x8086, 0x8d08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, ++ /* SATA Controller IDE (Wellsburg) */ ++ { 0x8086, 0x8d60, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, ++ /* SATA Controller IDE (Wellsburg) */ ++ { 0x8086, 0x8d68, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, ++ + { } /* terminate list */ + }; + diff --git a/queue-3.4/ata_piix-ide-mode-sata-patch-for-intel-avoton-deviceids.patch b/queue-3.4/ata_piix-ide-mode-sata-patch-for-intel-avoton-deviceids.patch new file mode 100644 index 00000000000..8954e878851 --- /dev/null +++ b/queue-3.4/ata_piix-ide-mode-sata-patch-for-intel-avoton-deviceids.patch @@ -0,0 +1,36 @@ +From aaa515277db9585eeb4fdeb4637b9f9df50a1dd9 Mon Sep 17 00:00:00 2001 +From: Seth Heasley +Date: Fri, 25 Jan 2013 11:57:05 -0800 +Subject: ata_piix: IDE-mode SATA patch for Intel Avoton DeviceIDs + +From: Seth Heasley + +commit aaa515277db9585eeb4fdeb4637b9f9df50a1dd9 upstream. + +This patch adds the IDE-mode SATA DeviceIDs for the Intel Avoton SOC. + +Signed-off-by: Seth Heasley +Signed-off-by: Jeff Garzik +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/ata/ata_piix.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +--- a/drivers/ata/ata_piix.c ++++ b/drivers/ata/ata_piix.c +@@ -331,6 +331,14 @@ static const struct pci_device_id piix_p + { 0x8086, 0x8c09, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, + /* SATA Controller IDE (DH89xxCC) */ + { 0x8086, 0x2326, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, ++ /* SATA Controller IDE (Avoton) */ ++ { 0x8086, 0x1f20, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, ++ /* SATA Controller IDE (Avoton) */ ++ { 0x8086, 0x1f21, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, ++ /* SATA Controller IDE (Avoton) */ ++ { 0x8086, 0x1f30, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, ++ /* SATA Controller IDE (Avoton) */ ++ { 0x8086, 0x1f31, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, + { } /* terminate list */ + }; + diff --git a/queue-3.4/perf-tools-fix-build-with-bison-2.3-and-older.patch b/queue-3.4/perf-tools-fix-build-with-bison-2.3-and-older.patch new file mode 100644 index 00000000000..e11b8522473 --- /dev/null +++ b/queue-3.4/perf-tools-fix-build-with-bison-2.3-and-older.patch @@ -0,0 +1,74 @@ +From vlee@twitter.com Fri Mar 1 11:21:19 2013 +From: Vinson Lee +Date: Tue, 26 Feb 2013 18:30:30 -0800 +Subject: perf tools: Fix build with bison 2.3 and older. +To: stable@vger.kernel.org +Cc: Vinson Lee , Ingo Molnar , Jiri Olsa , Li Zefan , Namhyung Kim , Paul Mackerras , Pekka Enberg , Arnaldo Carvalho de Melo +Message-ID: <1361932230-11746-1-git-send-email-vlee@twitter.com> + +From: Vinson Lee + +commit 85df3b3769222894e9692b383c7af124b7721086 upstream. + +The %name-prefix "prefix" syntax is not available on bison 2.3 and +older. Substitute with the -p "prefix" command-line option for +compatibility with older versions of bison. + +This patch fixes this build error with older versions of bison. + + CC util/sysfs.o + BISON util/pmu-bison.c +util/pmu.y:2.14-24: syntax error, unexpected string, expecting = +make: *** [util/pmu-bison.c] Error 1 + +Signed-off-by: Vinson Lee +Tested-by: Li Zefan +Cc: Ingo Molnar +Cc: Jiri Olsa +Cc: Li Zefan +Cc: Namhyung Kim +Cc: Paul Mackerras +Cc: Pekka Enberg +Link: http://lkml.kernel.org/r/1360792138-29186-1-git-send-email-vlee@twitter.com +Signed-off-by: Arnaldo Carvalho de Melo +Signed-off-by: Greg Kroah-Hartman +--- + tools/perf/Makefile | 4 ++-- + tools/perf/util/parse-events.y | 1 - + tools/perf/util/pmu.y | 1 - + 3 files changed, 2 insertions(+), 4 deletions(-) + +--- a/tools/perf/Makefile ++++ b/tools/perf/Makefile +@@ -241,13 +241,13 @@ $(OUTPUT)util/parse-events-flex.c: util/ + $(QUIET_FLEX)$(FLEX) --header-file=$(OUTPUT)util/parse-events-flex.h -t util/parse-events.l > $(OUTPUT)util/parse-events-flex.c + + $(OUTPUT)util/parse-events-bison.c: util/parse-events.y +- $(QUIET_BISON)$(BISON) -v util/parse-events.y -d -o $(OUTPUT)util/parse-events-bison.c ++ $(QUIET_BISON)$(BISON) -v util/parse-events.y -d -o $(OUTPUT)util/parse-events-bison.c -p parse_events_ + + $(OUTPUT)util/pmu-flex.c: util/pmu.l + $(QUIET_FLEX)$(FLEX) --header-file=$(OUTPUT)util/pmu-flex.h -t util/pmu.l > $(OUTPUT)util/pmu-flex.c + + $(OUTPUT)util/pmu-bison.c: util/pmu.y +- $(QUIET_BISON)$(BISON) -v util/pmu.y -d -o $(OUTPUT)util/pmu-bison.c ++ $(QUIET_BISON)$(BISON) -v util/pmu.y -d -o $(OUTPUT)util/pmu-bison.c -p perf_pmu_ + + $(OUTPUT)util/parse-events.o: $(OUTPUT)util/parse-events-flex.c $(OUTPUT)util/parse-events-bison.c + $(OUTPUT)util/pmu.o: $(OUTPUT)util/pmu-flex.c $(OUTPUT)util/pmu-bison.c +--- a/tools/perf/util/parse-events.y ++++ b/tools/perf/util/parse-events.y +@@ -1,5 +1,4 @@ + +-%name-prefix "parse_events_" + %parse-param {struct list_head *list_all} + %parse-param {struct list_head *list_event} + %parse-param {int *idx} +--- a/tools/perf/util/pmu.y ++++ b/tools/perf/util/pmu.y +@@ -1,5 +1,4 @@ + +-%name-prefix "perf_pmu_" + %parse-param {struct list_head *format} + %parse-param {char *name} + diff --git a/queue-3.4/series b/queue-3.4/series index ec3d71ed39a..a77dffc995a 100644 --- a/queue-3.4/series +++ b/queue-3.4/series @@ -37,3 +37,10 @@ cgroup-fix-exit-vs-rmdir-race.patch ab8500-chargalg-only-root-should-have-write-permission-on-sysfs-file.patch ab8500_btemp-demote-initcall-sequence.patch acpi-add-dmi-entry-for-sony-vgn-fw41e_h.patch +staging-comedi-ni_labpc-correct-differential-channel-sequence-for-ai-commands.patch +staging-comedi-ni_labpc-set-up-command4-register-after-command3.patch +staging-comedi-check-s-async-for-poll-read-and-write.patch +perf-tools-fix-build-with-bison-2.3-and-older.patch +ata_piix-ide-mode-sata-patch-for-intel-avoton-deviceids.patch +ata_piix-add-device-ids-for-intel-wellsburg-pch.patch +usb-hid-quirks-for-masterkit-ma901-usb-radio.patch diff --git a/queue-3.4/staging-comedi-check-s-async-for-poll-read-and-write.patch b/queue-3.4/staging-comedi-check-s-async-for-poll-read-and-write.patch new file mode 100644 index 00000000000..92cac5be00c --- /dev/null +++ b/queue-3.4/staging-comedi-check-s-async-for-poll-read-and-write.patch @@ -0,0 +1,68 @@ +From abbotti@mev.co.uk Fri Mar 1 11:20:18 2013 +From: Ian Abbott +Date: Wed, 27 Feb 2013 10:56:19 +0000 +Subject: staging: comedi: check s->async for poll(), read() and write() +To: stable@vger.kernel.org +Cc: gregkh@linuxfoundation.org, Ian Abbott +Message-ID: <1361962579-4790-1-git-send-email-abbotti@mev.co.uk> + +From: Ian Abbott + +commit cc400e185c07c15a42d2635995f422de5b94b696 upstream. + +Some low-level comedi drivers (incorrectly) point `dev->read_subdev` or +`dev->write_subdev` to a subdevice that does not support asynchronous +commands. Comedi's poll(), read() and write() file operation handlers +assume these subdevices do support asynchronous commands. In +particular, they assume `s->async` is valid (where `s` points to the +read or write subdevice), which it won't be if it has been set +incorrectly. This can lead to a NULL pointer dereference. + +Check `s->async` is non-NULL in `comedi_poll()`, `comedi_read()` and +`comedi_write()` to avoid the bug. + +Signed-off-by: Ian Abbott +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/staging/comedi/comedi_fops.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +--- a/drivers/staging/comedi/comedi_fops.c ++++ b/drivers/staging/comedi/comedi_fops.c +@@ -1577,7 +1577,7 @@ static unsigned int comedi_poll(struct f + + mask = 0; + read_subdev = comedi_get_read_subdevice(dev_file_info); +- if (read_subdev) { ++ if (read_subdev && read_subdev->async) { + poll_wait(file, &read_subdev->async->wait_head, wait); + if (!read_subdev->busy + || comedi_buf_read_n_available(read_subdev->async) > 0 +@@ -1587,7 +1587,7 @@ static unsigned int comedi_poll(struct f + } + } + write_subdev = comedi_get_write_subdevice(dev_file_info); +- if (write_subdev) { ++ if (write_subdev && write_subdev->async) { + poll_wait(file, &write_subdev->async->wait_head, wait); + comedi_buf_write_alloc(write_subdev->async, + write_subdev->async->prealloc_bufsz); +@@ -1629,7 +1629,7 @@ static ssize_t comedi_write(struct file + } + + s = comedi_get_write_subdevice(dev_file_info); +- if (s == NULL) { ++ if (s == NULL || s->async == NULL) { + retval = -EIO; + goto done; + } +@@ -1740,7 +1740,7 @@ static ssize_t comedi_read(struct file * + } + + s = comedi_get_read_subdevice(dev_file_info); +- if (s == NULL) { ++ if (s == NULL || s->async == NULL) { + retval = -EIO; + goto done; + } diff --git a/queue-3.4/staging-comedi-ni_labpc-correct-differential-channel-sequence-for-ai-commands.patch b/queue-3.4/staging-comedi-ni_labpc-correct-differential-channel-sequence-for-ai-commands.patch new file mode 100644 index 00000000000..d63d16c62bb --- /dev/null +++ b/queue-3.4/staging-comedi-ni_labpc-correct-differential-channel-sequence-for-ai-commands.patch @@ -0,0 +1,54 @@ +From abbotti@mev.co.uk Fri Mar 1 11:18:44 2013 +From: Ian Abbott +Date: Wed, 27 Feb 2013 12:52:45 +0000 +Subject: staging: comedi: ni_labpc: correct differential channel sequence for AI commands +To: stable@vger.kernel.org +Cc: Ian Abbott +Message-ID: <1361969566-32521-1-git-send-email-abbotti@mev.co.uk> + +From: Ian Abbott + +Commit 4c4bc25d0fa6beaf054c0b4c3b324487f266c820 upstream. + +Tuomas reported problems getting +meaningful output from a Lab-PC+ in differential mode for AI cmds, but +AI insn reads gave correct readings. He tracked it down to two +problems, one of which is addressed by this patch. + +It seems the setting of the channel bits for particular scanning modes +was incorrect for differential mode. (Only half the number of channels +are available in differential mode; comedi refers to them as channels 0, +1, 2 and 3, but the hardware documentation refers to them as channels 0, +2, 4 and 6.) In differential mode, the setting of the channel enable +bits in the command1 register should depend on whether the scan enable +bit is set. Effectively, we need to double the comedi channel number +when the scan enable bit is not set in differential mode. The scan +enable bit gets set when the AI scan mode is `MODE_MULT_CHAN_UP` or +`MODE_MULT_CHAN_DOWN`, and gets cleared when the AI scan mode is +`MODE_SINGLE_CHAN` or `MODE_SINGLE_CHAN_INTERVAL`. The existing test +for whether the comedi channel number needs to be doubled in +differential mode is incorrect in `labpc_ai_cmd()`. This patch corrects +the test. + +Thanks to Tuomas for suggesting the fix. + +Signed-off-by: Ian Abbott +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/staging/comedi/drivers/ni_labpc.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +--- a/drivers/staging/comedi/drivers/ni_labpc.c ++++ b/drivers/staging/comedi/drivers/ni_labpc.c +@@ -1264,7 +1264,9 @@ static int labpc_ai_cmd(struct comedi_de + else + channel = CR_CHAN(cmd->chanlist[0]); + /* munge channel bits for differential / scan disabled mode */ +- if (labpc_ai_scan_mode(cmd) != MODE_SINGLE_CHAN && aref == AREF_DIFF) ++ if ((labpc_ai_scan_mode(cmd) == MODE_SINGLE_CHAN || ++ labpc_ai_scan_mode(cmd) == MODE_SINGLE_CHAN_INTERVAL) && ++ aref == AREF_DIFF) + channel *= 2; + devpriv->command1_bits |= ADC_CHAN_BITS(channel); + devpriv->command1_bits |= thisboard->ai_range_code[range]; diff --git a/queue-3.4/staging-comedi-ni_labpc-set-up-command4-register-after-command3.patch b/queue-3.4/staging-comedi-ni_labpc-set-up-command4-register-after-command3.patch new file mode 100644 index 00000000000..4a1a5b6d5ee --- /dev/null +++ b/queue-3.4/staging-comedi-ni_labpc-set-up-command4-register-after-command3.patch @@ -0,0 +1,79 @@ +From abbotti@mev.co.uk Fri Mar 1 11:19:33 2013 +From: Ian Abbott +Date: Wed, 27 Feb 2013 12:52:46 +0000 +Subject: staging: comedi: ni_labpc: set up command4 register *after* command3 +To: stable@vger.kernel.org +Cc: Ian Abbott +Message-ID: <1361969566-32521-2-git-send-email-abbotti@mev.co.uk> + +From: Ian Abbott + +Commit 22056e2b46246d97ff0f7c6e21a77b8daa07f02c upstream. + +Tuomas reported problems getting +meaningful output from a Lab-PC+ in differential mode for AI cmds, but +AI insn reads gave correct readings. He tracked it down to two +problems, one of which is addressed by this patch. + +It seems that writing to the command3 register after writing to the +command4 register in `labpc_ai_cmd()` messes up the differential +reference bit setting in the command4 register. Set up the command4 +register after the command3 register (as in `labpc_ai_rinsn()`) to avoid +the problem. + +Thanks to Tuomas for suggesting the fix. + +Signed-off-by: Ian Abbott +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/staging/comedi/drivers/ni_labpc.c | 31 +++++++++++++++--------------- + 1 file changed, 16 insertions(+), 15 deletions(-) + +--- a/drivers/staging/comedi/drivers/ni_labpc.c ++++ b/drivers/staging/comedi/drivers/ni_labpc.c +@@ -1282,21 +1282,6 @@ static int labpc_ai_cmd(struct comedi_de + devpriv->write_byte(devpriv->command1_bits, + dev->iobase + COMMAND1_REG); + } +- /* setup any external triggering/pacing (command4 register) */ +- devpriv->command4_bits = 0; +- if (cmd->convert_src != TRIG_EXT) +- devpriv->command4_bits |= EXT_CONVERT_DISABLE_BIT; +- /* XXX should discard first scan when using interval scanning +- * since manual says it is not synced with scan clock */ +- if (labpc_use_continuous_mode(cmd) == 0) { +- devpriv->command4_bits |= INTERVAL_SCAN_EN_BIT; +- if (cmd->scan_begin_src == TRIG_EXT) +- devpriv->command4_bits |= EXT_SCAN_EN_BIT; +- } +- /* single-ended/differential */ +- if (aref == AREF_DIFF) +- devpriv->command4_bits |= ADC_DIFF_BIT; +- devpriv->write_byte(devpriv->command4_bits, dev->iobase + COMMAND4_REG); + + devpriv->write_byte(cmd->chanlist_len, + dev->iobase + INTERVAL_COUNT_REG); +@@ -1376,6 +1361,22 @@ static int labpc_ai_cmd(struct comedi_de + devpriv->command3_bits &= ~ADC_FNE_INTR_EN_BIT; + devpriv->write_byte(devpriv->command3_bits, dev->iobase + COMMAND3_REG); + ++ /* setup any external triggering/pacing (command4 register) */ ++ devpriv->command4_bits = 0; ++ if (cmd->convert_src != TRIG_EXT) ++ devpriv->command4_bits |= EXT_CONVERT_DISABLE_BIT; ++ /* XXX should discard first scan when using interval scanning ++ * since manual says it is not synced with scan clock */ ++ if (labpc_use_continuous_mode(cmd) == 0) { ++ devpriv->command4_bits |= INTERVAL_SCAN_EN_BIT; ++ if (cmd->scan_begin_src == TRIG_EXT) ++ devpriv->command4_bits |= EXT_SCAN_EN_BIT; ++ } ++ /* single-ended/differential */ ++ if (aref == AREF_DIFF) ++ devpriv->command4_bits |= ADC_DIFF_BIT; ++ devpriv->write_byte(devpriv->command4_bits, dev->iobase + COMMAND4_REG); ++ + /* startup acquisition */ + + /* command2 reg */ diff --git a/queue-3.4/usb-hid-quirks-for-masterkit-ma901-usb-radio.patch b/queue-3.4/usb-hid-quirks-for-masterkit-ma901-usb-radio.patch new file mode 100644 index 00000000000..327ef58a722 --- /dev/null +++ b/queue-3.4/usb-hid-quirks-for-masterkit-ma901-usb-radio.patch @@ -0,0 +1,45 @@ +From 0322bd3980b3ebf7dde8474e22614cb443d6479a Mon Sep 17 00:00:00 2001 +From: Alexey Klimov +Date: Mon, 12 Nov 2012 02:57:03 -0300 +Subject: [hid] usb hid quirks for Masterkit MA901 usb radio + +From: Alexey Klimov + +commit 0322bd3980b3ebf7dde8474e22614cb443d6479a upstream. + +Don't let Masterkit MA901 USB radio be handled by usb hid drivers. +This device will be handled by radio-ma901.c driver. + +Signed-off-by: Alexey Klimov +Acked-by: Hans Verkuil +Acked-by: Jiri Kosina +Signed-off-by: Mauro Carvalho Chehab +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/hid/hid-core.c | 1 + + drivers/hid/hid-ids.h | 3 +++ + 2 files changed, 4 insertions(+) + +--- a/drivers/hid/hid-core.c ++++ b/drivers/hid/hid-core.c +@@ -1922,6 +1922,7 @@ static const struct hid_device_id hid_ig + { HID_USB_DEVICE(USB_VENDOR_ID_LD, USB_DEVICE_ID_LD_HYBRID) }, + { HID_USB_DEVICE(USB_VENDOR_ID_LD, USB_DEVICE_ID_LD_HEATCONTROL) }, + { HID_USB_DEVICE(USB_VENDOR_ID_MADCATZ, USB_DEVICE_ID_MADCATZ_BEATPAD) }, ++ { HID_USB_DEVICE(USB_VENDOR_ID_MASTERKIT, USB_DEVICE_ID_MASTERKIT_MA901RADIO) }, + { HID_USB_DEVICE(USB_VENDOR_ID_MCC, USB_DEVICE_ID_MCC_PMD1024LS) }, + { HID_USB_DEVICE(USB_VENDOR_ID_MCC, USB_DEVICE_ID_MCC_PMD1208LS) }, + { HID_USB_DEVICE(USB_VENDOR_ID_MICROCHIP, USB_DEVICE_ID_PICKIT1) }, +--- a/drivers/hid/hid-ids.h ++++ b/drivers/hid/hid-ids.h +@@ -520,6 +520,9 @@ + #define USB_VENDOR_ID_MADCATZ 0x0738 + #define USB_DEVICE_ID_MADCATZ_BEATPAD 0x4540 + ++#define USB_VENDOR_ID_MASTERKIT 0x16c0 ++#define USB_DEVICE_ID_MASTERKIT_MA901RADIO 0x05df ++ + #define USB_VENDOR_ID_MCC 0x09db + #define USB_DEVICE_ID_MCC_PMD1024LS 0x0076 + #define USB_DEVICE_ID_MCC_PMD1208LS 0x007a -- 2.47.3