HID: new driver for PicoLCD device
Add basic driver for PicoLCD graphics device. Initially support keypad with input device and provide support for debugging communication via events file from debugfs. Signed-off-by: Bruno Prémont <bonbons@linux-vserver.org> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
This commit is contained in:
parent
3971047930
commit
236db47c2b
6 changed files with 1223 additions and 0 deletions
17
Documentation/ABI/testing/sysfs-driver-hid-picolcd
Normal file
17
Documentation/ABI/testing/sysfs-driver-hid-picolcd
Normal file
|
@ -0,0 +1,17 @@
|
|||
What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/operation_mode
|
||||
Date: March 2010
|
||||
Contact: Bruno Prémont <bonbons@linux-vserver.org>
|
||||
Description: Make it possible to switch the PicoLCD device between LCD
|
||||
(firmware) and bootloader (flasher) operation modes.
|
||||
|
||||
Reading: returns list of available modes, the active mode being
|
||||
enclosed in brackets ('[' and ']')
|
||||
|
||||
Writing: causes operation mode switch. Permitted values are
|
||||
the non-active mode names listed when read, optionally followed
|
||||
by a delay value expressed in ms.
|
||||
|
||||
Note: when switching mode the current PicoLCD HID device gets
|
||||
disconnected and reconnects after above delay (default value
|
||||
is 5 seconds though this default should not be relied on).
|
||||
|
|
@ -262,6 +262,24 @@ config HID_PETALYNX
|
|||
---help---
|
||||
Support for Petalynx Maxter remote control.
|
||||
|
||||
config HID_PICOLCD
|
||||
tristate "PicoLCD (graphic version)"
|
||||
depends on USB_HID
|
||||
---help---
|
||||
This provides support for Minibox PicoLCD devices, currently
|
||||
only the graphical ones are supported.
|
||||
|
||||
This includes support for the following device features:
|
||||
- Keypad
|
||||
- Switching between Firmware and Flash mode
|
||||
Features that are not (yet) supported:
|
||||
- Framebuffer for monochrome 256x64 display
|
||||
- Backlight control
|
||||
- Contrast control
|
||||
- IR
|
||||
- General purpose outputs
|
||||
- EEProm / Flash access
|
||||
|
||||
config HID_QUANTA
|
||||
tristate "Quanta Optical Touch"
|
||||
depends on USB_HID
|
||||
|
|
|
@ -44,6 +44,7 @@ obj-$(CONFIG_HID_ORTEK) += hid-ortek.o
|
|||
obj-$(CONFIG_HID_QUANTA) += hid-quanta.o
|
||||
obj-$(CONFIG_HID_PANTHERLORD) += hid-pl.o
|
||||
obj-$(CONFIG_HID_PETALYNX) += hid-petalynx.o
|
||||
obj-$(CONFIG_HID_PICOLCD) += hid-picolcd.o
|
||||
obj-$(CONFIG_HID_SAMSUNG) += hid-samsung.o
|
||||
obj-$(CONFIG_HID_SMARTJOYPLUS) += hid-sjoy.o
|
||||
obj-$(CONFIG_HID_SONY) += hid-sony.o
|
||||
|
|
|
@ -1335,6 +1335,8 @@ static const struct hid_device_id hid_blacklist[] = {
|
|||
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD2) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_SPACETRAVELLER) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_SPACENAVIGATOR) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_MICROCHIP, USB_DEVICE_ID_PICOLCD) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_MICROCHIP, USB_DEVICE_ID_PICOLCD_BOOTLOADER) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_SIDEWINDER_GV) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_NE4K) },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_LK6K) },
|
||||
|
|
|
@ -341,6 +341,8 @@
|
|||
#define USB_VENDOR_ID_MICROCHIP 0x04d8
|
||||
#define USB_DEVICE_ID_PICKIT1 0x0032
|
||||
#define USB_DEVICE_ID_PICKIT2 0x0033
|
||||
#define USB_DEVICE_ID_PICOLCD 0xc002
|
||||
#define USB_DEVICE_ID_PICOLCD_BOOTLOADER 0xf002
|
||||
|
||||
#define USB_VENDOR_ID_MICROSOFT 0x045e
|
||||
#define USB_DEVICE_ID_SIDEWINDER_GV 0x003b
|
||||
|
|
1183
drivers/hid/hid-picolcd.c
Normal file
1183
drivers/hid/hid-picolcd.c
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue