[PATCH] input: arizona-haptics - Add device property for HAP_ACT

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




This adds a device property for setting the configuration for the
HAP_ACT register field so that the connected actuator type can be
configured on systems that are not using pdata.

Signed-off-by: Richard Fitzgerald <rf@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
---
 Documentation/devicetree/bindings/input/arizona-haptics.txt | 10 ++++++++++
 MAINTAINERS                                                 |  1 +
 drivers/input/misc/arizona-haptics.c                        |  7 +++++++
 3 files changed, 18 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/arizona-haptics.txt

diff --git a/Documentation/devicetree/bindings/input/arizona-haptics.txt b/Documentation/devicetree/bindings/input/arizona-haptics.txt
new file mode 100644
index 0000000..a3e767b
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/arizona-haptics.txt
@@ -0,0 +1,10 @@
+Cirrus Logic Arizona class audio SoCs
+
+This document lists haptics bindings for these codecs.
+Also see the primary binding document:
+  ../mfd/arizona.txt
+
+Optional properties:
+  - wlf,hap-act : Single value defining the actuator type, as per the HAP_ACT
+    register field. See the codec datasheet for the available HAP_ACT values
+    and their meaning.
diff --git a/MAINTAINERS b/MAINTAINERS
index 26edd83..be4ea3e 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -13377,6 +13377,7 @@ W:	https://github.com/CirrusLogic/linux-drivers/wiki
 S:	Supported
 F:	Documentation/hwmon/wm83??
 F:	Documentation/devicetree/bindings/extcon/extcon-arizona.txt
+F:	Documentation/devicetree/bindings/input/arizona*.txt
 F:	Documentation/devicetree/bindings/regulator/arizona-regulator.txt
 F:	Documentation/devicetree/bindings/mfd/arizona.txt
 F:	arch/arm/mach-s3c64xx/mach-crag6410*
diff --git a/drivers/input/misc/arizona-haptics.c b/drivers/input/misc/arizona-haptics.c
index 21dc1b8..0264d95 100644
--- a/drivers/input/misc/arizona-haptics.c
+++ b/drivers/input/misc/arizona-haptics.c
@@ -14,6 +14,7 @@
 #include <linux/platform_device.h>
 #include <linux/input.h>
 #include <linux/slab.h>
+#include <linux/property.h>
 
 #include <sound/soc.h>
 #include <sound/soc-dapm.h>
@@ -164,6 +165,12 @@ static int arizona_haptics_probe(struct platform_device *pdev)
 
 	haptics->arizona = arizona;
 
+	if (!dev_get_platdata(arizona->dev))
+		device_property_read_u32(arizona->dev, "wlf,hap-act",
+					 &arizona->pdata.hap_act);
+
+	dev_dbg(arizona->dev, "hap_act=%u\n", arizona->pdata.hap_act);
+
 	ret = regmap_update_bits(arizona->regmap, ARIZONA_HAPTICS_CONTROL_1,
 				 ARIZONA_HAP_ACT, arizona->pdata.hap_act);
 	if (ret != 0) {
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux