Input: davinci_keyscan - add device_enable method to platform data
Add a function pointer in the platform data of the DaVinci Keyscan driver called device_enable, in order to perform board specific actions when the device is initialized, like setup the PINMUX configuration. Signed-off-by: Miguel Aguilar <miguel.aguilar@ridgerun.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
This commit is contained in:
parent
30a589fde0
commit
861a64428c
2 changed files with 9 additions and 0 deletions
|
@ -29,6 +29,7 @@ enum davinci_matrix_types {
|
|||
};
|
||||
|
||||
struct davinci_ks_platform_data {
|
||||
int (*device_enable)(struct device *dev);
|
||||
unsigned short *keymap;
|
||||
u32 keymapsize;
|
||||
u8 rep:1;
|
||||
|
|
|
@ -174,6 +174,14 @@ static int __init davinci_ks_probe(struct platform_device *pdev)
|
|||
struct davinci_ks_platform_data *pdata = pdev->dev.platform_data;
|
||||
int error, i;
|
||||
|
||||
if (pdata->device_enable) {
|
||||
error = pdata->device_enable(dev);
|
||||
if (error < 0) {
|
||||
dev_dbg(dev, "device enable function failed\n");
|
||||
return error;
|
||||
}
|
||||
}
|
||||
|
||||
if (!pdata->keymap) {
|
||||
dev_dbg(dev, "no keymap from pdata\n");
|
||||
return -EINVAL;
|
||||
|
|
Loading…
Add table
Reference in a new issue