Re: [PATCH v7 3/5] dt-bindings: iio: magnetometer: ak8975: add gpio reset support

From: Jonathan Cameron
Date: Sun May 31 2020 - 07:01:20 EST


On Thu, 28 May 2020 16:59:28 +0200
Jonathan Albrieux <jonathan.albrieux@xxxxxxxxx> wrote:

> Add reset-gpio support.
>
> Without reset's deassertion during ak8975_power_on(), driver's probe fails
> on ak8975_who_i_am() while checking for device identity for AK09911 chip.
>
> AK09911 has an active low reset gpio to handle register's reset.
> AK09911 datasheet says that, if not used, reset pin should be connected
> to VID. This patch emulates this situation.
>
> Signed-off-by: Jonathan Albrieux <jonathan.albrieux@xxxxxxxxx>
> Reviewed-by: Rob Herring <robh@xxxxxxxxxx>

Applied to the togreg branch of iio.git and pushed out as testing
for the autobuilders to play with it.

thanks,

Jonathan

> ---
> .../bindings/iio/magnetometer/asahi-kasei,ak8975.yaml | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/iio/magnetometer/asahi-kasei,ak8975.yaml b/Documentation/devicetree/bindings/iio/magnetometer/asahi-kasei,ak8975.yaml
> index 55b18784e503..e8af53d60759 100644
> --- a/Documentation/devicetree/bindings/iio/magnetometer/asahi-kasei,ak8975.yaml
> +++ b/Documentation/devicetree/bindings/iio/magnetometer/asahi-kasei,ak8975.yaml
> @@ -47,6 +47,11 @@ properties:
> mount-matrix:
> description: an optional 3x3 mounting rotation matrix.
>
> + reset-gpios:
> + description: |
> + an optional pin needed for AK09911 to set the reset state. This should
> + be usually active low
> +
> required:
> - compatible
> - reg
> @@ -54,6 +59,7 @@ required:
> examples:
> - |
> #include <dt-bindings/interrupt-controller/irq.h>
> + #include <dt-bindings/gpio/gpio.h>
> i2c {
> #address-cells = <1>;
> #size-cells = <0>;
> @@ -64,6 +70,7 @@ examples:
> interrupt-parent = <&gpio6>;
> interrupts = <15 IRQ_TYPE_EDGE_RISING>;
> vdd-supply = <&ldo_3v3_gnss>;
> + reset-gpios = <&msmgpio 111 GPIO_ACTIVE_LOW>;
> mount-matrix = "-0.984807753012208", /* x0 */
> "0", /* y0 */
> "-0.173648177666930", /* z0 */