lkml.org 
[lkml]   [2010]   [Jan]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] Logitech G13 driver (fixed cc list --- ignore others)
From
On Tue, Dec 15, 2009 at 5:22 AM, Rick L. Vinyard Jr.
<rvinyard@cs.nmsu.edu> wrote:
> 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.

Hi Rick,

Interesting work. I recommend CCing linux-fbdev@vger.kernel.org too
since it contains a fbdev interface.

> +config LOGITECH_G13
> +       tristate "Logitech G13 gameboard support"
> +       depends on HID_LOGITECH
> +       depends on FB
> +       select FB_SYS_FILLRECT
> +       select FB_SYS_COPYAREA
> +       select FB_SYS_IMAGEBLIT
> +       select FB_SYS_FOPS

Does this need to select FB_DEFERRED_IO?

> --- /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,

Was there a reason for having a new logo file? If so, you might want
to put it in the comments and also put it together with the standard
kernel logo.

> +/* 160*43 rounded to nearest whole byte which is 160*48 since bytes are
> +   vertical the y component must be a multiple of 8 */
> +#define G13FB_SIZE (160*48/8)

Minor nit, I think there is a macro for this, DIV_ROUND_UP, or maybe
this could be better done in the function that uses this value.

> +static ssize_t g13_set_mled(struct hid_device *hdev, unsigned mled);

Does this need to be here or can the code be reordered?

> +static struct fb_var_screeninfo g13fb_var = {
> +       .xres = G13FB_WIDTH,
> +       .yres = G13FB_HEIGHT,
> +       .xres_virtual = G13FB_WIDTH,
> +       .yres_virtual = G13FB_HEIGHT,
> +       .bits_per_pixel = 1,
> +       .nonstd = 1,
> +};

I think the nonstd is a bug. Yes, hecubafb and metronomefb seem to
have the same bug as well. nonstd is used if you want something like
FB_NONSTD_HAM or FB_NONSTD_REV_PIX_IN_B, which I don't think is what
you want.

Hope this helps.

Best regards,
jaya
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2010-01-05 01:07    [W:0.146 / U:0.740 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site