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 */