Re: [PATCH 01/10] staging: iio: tsl2583: add of_match table for device tree support

From: Jonathan Cameron
Date: Sun Oct 30 2016 - 13:44:20 EST


On 28/10/16 11:00, Brian Masney wrote:
> Add device tree support for the tsl2583 IIO driver with no custom
> properties.
>
> Signed-off-by: Brian Masney <masneyb@xxxxxxxxxxxxx>
Trivial enough that I feel I can take this without an explicit devicetree
ack. Of course one is always welcome if anyone gets a chance to look at it.
I won't have it exposed in a non rebasing tree until perhaps the second half
of the week.
> ---
> .../devicetree/bindings/iio/light/tsl2583.txt | 26 ++++++++++++++++++++++
> drivers/staging/iio/light/tsl2583.c | 13 +++++++++++
> 2 files changed, 39 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/light/tsl2583.txt
>
> diff --git a/Documentation/devicetree/bindings/iio/light/tsl2583.txt b/Documentation/devicetree/bindings/iio/light/tsl2583.txt
> new file mode 100644
> index 0000000..8e2066c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/light/tsl2583.txt
> @@ -0,0 +1,26 @@
> +* TAOS TSL 2580/2581/2583 ALS sensor
> +
> +Required properties:
> +
> + - compatible: Should be one of
> + "amstaos,tsl2580"
> + "amstaos,tsl2581"
> + "amstaos,tsl2583"
> + - reg: the I2C address of the device
> +
> +Optional properties:
> +
> + - 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.
> +
> + - vcc-supply: phandle to the regulator that provides power to the sensor.
> +
> +Example:
> +
> +tsl2581@29 {
> + compatible = "amstaos,tsl2581";
> + reg = <0x29>;
> +};
> diff --git a/drivers/staging/iio/light/tsl2583.c b/drivers/staging/iio/light/tsl2583.c
> index 08f1583..fd4b6ef 100644
> --- a/drivers/staging/iio/light/tsl2583.c
> +++ b/drivers/staging/iio/light/tsl2583.c
> @@ -947,11 +947,24 @@ static struct i2c_device_id taos_idtable[] = {
> };
> MODULE_DEVICE_TABLE(i2c, taos_idtable);
>
> +#ifdef CONFIG_OF
> +static const struct of_device_id taos2583_of_match[] = {
> + { .compatible = "amstaos,tsl2580", },
> + { .compatible = "amstaos,tsl2581", },
> + { .compatible = "amstaos,tsl2583", },
> + { },
> +};
> +MODULE_DEVICE_TABLE(of, taos2583_of_match);
> +#else
> +#define taos2583_of_match NULL
> +#endif
> +
> /* Driver definition */
> static struct i2c_driver taos_driver = {
> .driver = {
> .name = "tsl2583",
> .pm = TAOS_PM_OPS,
> + .of_match_table = taos2583_of_match,
> },
> .id_table = taos_idtable,
> .probe = taos_probe,
>