On 08/19/2014 03:07 PM, Dmitry Torokhov wrote: > On Tue, Aug 19, 2014 at 07:35:06PM +0000, Murphy, Dan wrote: >> Dmitry >> >> On 08/19/2014 02:24 PM, Dmitry Torokhov wrote: >>> Hi Dan, >>> >>> On Fri, Aug 15, 2014 at 10:47:50AM -0500, Dan Murphy wrote: >>>> diff --git a/drivers/input/misc/Kconfig b/drivers/input/misc/Kconfig >>>> index 2ff4425..99f6762 100644 >>>> --- a/drivers/input/misc/Kconfig >>>> +++ b/drivers/input/misc/Kconfig >>>> @@ -676,4 +676,13 @@ config INPUT_SOC_BUTTON_ARRAY >>>> To compile this driver as a module, choose M here: the >>>> module will be called soc_button_array. >>>> >>>> +config INPUT_DRV260X_HAPTICS >>>> + tristate "TI DRV260X haptics support" >>>> + depends on INPUT && I2C >>> >>> This also needs "select REGMAP_I2C" >>> >> >> This one is OK >> >>>> + help >>>> + Say Y to enable support for the TI DRV260X haptics driver. >>>> + >>>> + To compile this driver as a module, choose M here: the >>>> + module will be called drv260x-haptics. >>>> + >>> >>> [...] >>> >>>> +#ifndef _LINUX_DRV260X_PDATA_H >>>> +#define _LINUX_DRV260X_PDATA_H >>>> + >>>> +struct drv260x_platform_data { >>>> + int enable_gpio; >>> >>> I do not see this used anywhere. >> >> But this is actually used here >> >> haptics->enable_gpio = devm_gpiod_get(&client->dev, "enable"); >> >> for the non-dt case > > "haptics" is not instance of drv260x_platform_data but drv260x_data which > defines: > > struct drv260x_data { > ... > struct gpio_desc *enable_gpio; > ... > > That one I kept. > Yes that is correct but the enable_gpio for non-dt enabled devices this enable_gpio needs to come from the platform data structure. Without the enable gpio in the platform data structure there is no way for non-dt enabled devices to set the gpio value. The haptics instance just stores the gpio descriptor returned from this call. The devm_gpiod looks at the platform data is CONFIG_OF is not set. Dan -- ------------------ Dan Murphy -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html