Re: [PATCH] Logitech G13 driver (fixed cc list --- ignore others)
From: Rick L. Vinyard, Jr. <hidden>
Date: 2010-01-04 22:24:01
Also in:
lkml
Jiri Kosina wrote:
On Wed, 16 Dec 2009, Pavel Machek wrote:quoted
quoted
Although identified as a HID, the device does not support standard HID input messages. As a result, a sub-input device is allocated and registered separately in g13_probe(). The raw events are monitored and key presses/joystick activity is reported through the input device after referencing an indexed keymap. Additionally, this device contains a 160x43 monochrome LCD display. A registered framebuffer device manages this display. The design of this portion of the driver was based on the design of the hecubafb driver with deferred framebuffer I/O since there is no real memory to map. This patch is against the torvalds/linux-2.6.git tree.Should this use auxdisplay framework and be located there?Well, the device is still primarily HID device in its nature, so either keeping the whole driver in drivers/hid, or separating it into two drivers, one for the HID part and second for the framebuffer part should be acceptable.
The framebuffer part uses the same interrupt endpoint for both HID and display. IIRC there were issues with two drivers using the same interrupt endpoint.
quoted
quoted
--- /dev/null +++ b/drivers/hid/hid-g13-logo.xbm@@ -0,0 +1,75 @@ +#define g13_lcd_width 160 +#define g13_lcd_height 43 +static unsigned char g13_lcd_bits[] = { + 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,0x00,quoted
+ 0x00, 0x00, 0x00, 0x28, 0x03, 0x00, 0x40, 0x01, 0x00, 0xc0, 0x3f,0x00,quoted
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,0xa1,quoted
+ 0x08, 0x00, 0x08, 0x00, 0x00, 0xe0, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00,I'd prefer to go without another logo. Just make sure default penguin gets there or something.What logo is this, BTW? :)
It's similar to the default G13 load image, but with tux on the left and the GNU gnu on the right. I tried to particularly clean up tux a bit since the default monochrome logo is 80x80 and the display is 160x43. The only alternatives I could think of were to use the default logo and load it at 80x43 which cuts off Tux at the nipples, resample in the driver, or leave the logo off. I didn't like the first because it didn't look like tux without his belly and feet, the second seemed overly complex, and the third doesn't provide a visual cue to the user that it's plugged in and all is well. The visual cue is particularly necessary because the device displays a G13 logo on initialization even when no working driver is present. It's problematic because it appears as if the device is ready, so the use of a penguin provides a Linux specific cue.
I will proceed with reviewing the driver soon, sorry for slightly higher latencies these days.
No problem... as you can see my latency responding is rather high.