From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-f66.google.com ([74.125.82.66]:34108 "EHLO mail-wm0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753202AbcICKaI (ORCPT ); Sat, 3 Sep 2016 06:30:08 -0400 Message-ID: <1472898600.1918.4.camel@googlemail.com> Subject: [PATCH v2] iio: sx9500: add final devicetree support From: Christoph Fritz Reply-To: chf.fritz@googlemail.com To: Fabio Estevam , Jonathan Cameron , Vlad Dogaru , Hartmut Knaack Cc: linux-iio@vger.kernel.org, "devicetree@vger.kernel.org" Date: Sat, 03 Sep 2016 12:30:00 +0200 In-Reply-To: References: <1472827740.1929.26.camel@googlemail.com> <1472828671.1929.32.camel@googlemail.com> <1472829819.12668.3.camel@googlemail.com> <1472834833.12668.11.camel@googlemail.com> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Sender: linux-iio-owner@vger.kernel.org List-Id: linux-iio@vger.kernel.org This makes sx9500 driver usable on devicetree based platforms too. Signed-off-by: Christoph Fritz --- Changes in v2: - fix docu: add optional property reset-gpios - adapt docu: change example "reset-gpios" .../devicetree/bindings/iio/proximity/sx9500.txt | 24 ++++++++++++++++++++++ drivers/iio/proximity/sx9500.c | 7 +++++++ 2 files changed, 31 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/proximity/sx9500.txt diff --git a/Documentation/devicetree/bindings/iio/proximity/sx9500.txt b/Documentation/devicetree/bindings/iio/proximity/sx9500.txt new file mode 100644 index 0000000..b301dd2 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/proximity/sx9500.txt @@ -0,0 +1,24 @@ +Semtech's SX9500 capacitive proximity button device driver + +Required properties: + - compatible: must be "semtech,sx9500" + - reg: i2c address where to find the device + - interrupt-parent : should be the phandle for the interrupt controller + - interrupts : the sole interrupt generated by the device + + Refer to interrupt-controller/interrupts.txt for generic + interrupt client node bindings. + +Optional properties: + - reset-gpios: Reference to the GPIO connected to the device's active + low reset pin. + +Example: + +sx9500@28 { + compatible = "semtech,sx9500"; + reg = <0x28>; + interrupt-parent = <&gpio2>; + interrupts = <16 IRQ_TYPE_LEVEL_LOW>; + reset-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>; +}; diff --git a/drivers/iio/proximity/sx9500.c b/drivers/iio/proximity/sx9500.c index 66cd09a..a136b34 100644 --- a/drivers/iio/proximity/sx9500.c +++ b/drivers/iio/proximity/sx9500.c @@ -1025,6 +1025,12 @@ static const struct acpi_device_id sx9500_acpi_match[] = { }; MODULE_DEVICE_TABLE(acpi, sx9500_acpi_match); +static const struct of_device_id sx9500_of_match[] = { + { .compatible = "semtech,sx9500", }, + { } +}; +MODULE_DEVICE_TABLE(of, sx9500_of_match); + static const struct i2c_device_id sx9500_id[] = { {"sx9500", 0}, { }, @@ -1035,6 +1041,7 @@ static struct i2c_driver sx9500_driver = { .driver = { .name = SX9500_DRIVER_NAME, .acpi_match_table = ACPI_PTR(sx9500_acpi_match), + .of_match_table = of_match_ptr(sx9500_of_match), .pm = &sx9500_pm_ops, }, .probe = sx9500_probe, -- 2.1.4