RE: [RFC] [PATCH 1/3] OMAP4: Keyboard Controller Support

Arce, Abraham
2010-05-06T02:30:24Z

Thanks Kevin,

> > Keyboard controller for OMAP4 with built-in scanning algorithm.
> > The following implementations are used:
> >
> > - matrix_keypac.c logic
> > - hwmod framework
> > - threaded irq
> >
> > Signed-off-by: Syed Rafiuddin <rafiuddin.syed@ti.com>
> > Signed-off-by: Abraham Arce <x0066660@ti.com>
>
> Some general comments...
>
> What's missing here is a separation of the driver and the device.
> What you need is for arch code to register a platfrom_device (using
> hwmod + omap_device). Then this driver will use the standard
> platform_device resource calls to get its base address, IRQs, etc. and
> any platform_data.
>
> IOW, as Felipe mentioned, the driver should not be doing the hwmod +
> omap_device init and registration.

As metioned to Felipe, my approach is

sdp4430_keypad_init() {
...
omap_hwmod_lookup(oh_name);
...
kzalloc(sizeof(struct matrix_keypad_platform_data), GFP_KERNEL);
...
omap_device_build(name, id, oh, pdata,
...
}

and then called within

omap_4430sdp_init()

Best Regards
Abraham