Re: [PATCHv4 2/5] Input: edt-ft5x06: Add DT support
From: Mark Rutland <mark.rutland@arm.com>
Date: 2014-03-20 13:22:01
Also in:
linux-devicetree, lkml
On Thu, Mar 20, 2014 at 11:40:55AM +0000, Lothar Waßmann wrote:
Hi, Mark Rutland wrote:quoted
On Wed, Mar 19, 2014 at 01:09:20PM +0000, Lothar Waßmann wrote:quoted
Signed-off-by: Lothar Waßmann <redacted> --- .../bindings/input/touchscreen/edt-ft5x06.txt | 41 ++++++ drivers/input/touchscreen/edt-ft5x06.c | 144 +++++++++++++++----- 2 files changed, 154 insertions(+), 31 deletions(-) create mode 100644 Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txtdiff --git a/Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt b/Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt new file mode 100644 index 0000000..e5adc76 --- /dev/null +++ b/Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt@@ -0,0 +1,41 @@ +FocalTech EDT-FT5x06 Polytouch driver +===================================== + +Required properties: + - compatible: "edt,edt-ft5x06"Is the 'x' part of a particular product name, or is this a class of devices?The FT5x06 datasheet lists 3 variants for different panel sizes. I'll add distinct compatible strings for those chips, though their SW interface is (currently) identical: |Required properties: | - compatible: "edt,edt-ft5206", "edt,edt-ft5x06" | or: "edt,edt-ft5306", "edt,edt-ft5x06" | or: "edt,edt-ft5406", "edt,edt-ft5x06"
Drop the "edt,edt-ft5x06" string. If they really appear to be identical from a programmer's perspective, choose a particular variant to be used as the fallback. There could be a future variant that would appear to match the x string yet was completely incompatible with the expected programming interface.
quoted
quoted
+ - reg: I2C slave address of the chip (0x38) + - interrupt-parent: a phandle pointing to the interrupt controller + serving the interrupt for this chip + - interrupts: interrupt specification for this chipHow many? What are they for?I'll change it to: | - interrupts: interrupt specification for the touchdetect | interrupt
That sounds fine to me.
quoted
quoted
+ - report_rate: allows setting the report rate in the range from 3 to + 14.However, why can the kernel not decide the report rate? This doesn't sound like something that needs to vary per-board. Also, s/_/-/ in property names, please.OK, I'll drop the property, which also simplyfies the code a bit.
Sounds good to me.
quoted
quoted
+#define EDT_GET_PROP(name, reg) { \ + const u32 *prop = of_get_property(np, #name, NULL); \ + if (prop) \ + edt_ft5x06_register_write(tsdata, reg, be32_to_cpu(*prop)); \ +}Use of_property_read_u32, it'll handle endianness conversion for you. Use of of_get_property is almost always wrong.Sure.
Cheers, Mark.