Thread (7 messages) 7 messages, 2 authors, 2014-08-19

Re: [PATCH v6] input: drv260x: Add TI drv260x haptics driver

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2014-08-19 20:24:44
Also in: linux-devicetree, lkml

On Tue, Aug 19, 2014 at 08:13:32PM +0000, Murphy, Dan wrote:
On 08/19/2014 03:07 PM, Dmitry Torokhov wrote:
quoted
On Tue, Aug 19, 2014 at 07:35:06PM +0000, Murphy, Dan wrote:
quoted
Dmitry

On 08/19/2014 02:24 PM, Dmitry Torokhov wrote:
quoted
Hi Dan,

On Fri, Aug 15, 2014 at 10:47:50AM -0500, Dan Murphy wrote:
quoted
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
quoted
quoted
+	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.
+
[...]
quoted
+#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.
What else uses the platform data structure? You are accessing gpio by name, not
by number, in the driver so I am not sure how non-dt case will use u32 defined
in platform data.
The haptics instance just stores the gpio descriptor returned from this call.
Right.
The devm_gpiod looks at the platform data is CONFIG_OF is not set.
Umm, how? You do not pass it anywhere...

Thanks.

-- 
Dmitry
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help