Re: [PATCH] Add support for keyboard on SEGA Dreamcast

Mike Frysinger
2007-09-05T04:36:11Z

[-- Attachment #1: Type: text/plain, Size: 1273 bytes --]

On Tuesday 04 September 2007, Adrian McMenamin wrote:
> --- a/drivers/input/keyboard/Kconfig
> +++ b/drivers/input/keyboard/Kconfig
> + Say Y here if you have a DreamCast console running Linux and have

funny caps in Dreamcast

> --- /dev/null
> +++ b/drivers/input/keyboard/maple_keyb.c
> +static void dc_scan_kbd(struct dc_kbd *kbd)

still some funny wrappings in this func ...

> + printk
> + ("Unknown key (scancode %#x) released.",
> + kbd->old[i]);
> ...
> + printk
> + ("Unknown key (scancode %#x) pressed.",
> + kbd->new[i]);

missing KERN log levels in those printk's

> +static int dc_kbd_connect(struct maple_device *dev)
> +{
> ...
> + struct dc_kbd *kbd;
> ...
> + kbd = kzalloc(sizeof(struct dc_kbd), GFP_KERNEL);

i find this more readable/managable myself:
kbd = kzalloc(*kbd, GFP_KERNEL);

> + kbd->dev = input_allocate_device();
> ...
> + retval = input_register_device(kbd->dev);
> + if (unlikely(retval))
> + goto cleanup;
> ...
> + cleanup:
> + kfree(kbd);
> + return -EINVAL;

i'm not familiar with the input layer, but do you need to deallocate that
input device if the register fails ? if so, i guess dc_kbd_disconnect()
would need tweaking too ...
-mike

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 827 bytes --]