113 lines
2.7 KiB
YAML
113 lines
2.7 KiB
YAML
|
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||
|
%YAML 1.2
|
||
|
---
|
||
|
$id: http://devicetree.org/schemas/iio/magnetometer/yamaha,yas530.yaml#
|
||
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||
|
|
||
|
title: Yamaha YAS530 family of magnetometer sensors
|
||
|
|
||
|
maintainers:
|
||
|
- Linus Walleij <linus.walleij@linaro.org>
|
||
|
|
||
|
description:
|
||
|
The Yamaha YAS530 magnetometers is a line of 3-axis magnetometers
|
||
|
first introduced by Yamaha in 2009 with the YAS530. They are successors
|
||
|
of Yamaha's first magnetometer YAS529. Over the years this magnetometer
|
||
|
has been miniaturized and appeared in a number of different variants.
|
||
|
|
||
|
properties:
|
||
|
$nodename:
|
||
|
pattern: '^magnetometer@[0-9a-f]+$'
|
||
|
|
||
|
compatible:
|
||
|
items:
|
||
|
- enum:
|
||
|
- yamaha,yas530
|
||
|
- yamaha,yas532
|
||
|
- yamaha,yas533
|
||
|
- yamaha,yas535
|
||
|
- yamaha,yas536
|
||
|
- yamaha,yas537
|
||
|
- yamaha,yas539
|
||
|
|
||
|
reg:
|
||
|
maxItems: 1
|
||
|
|
||
|
reset-gpios:
|
||
|
maxItems: 1
|
||
|
description: The YAS530 sensor has a RSTN pin used to reset
|
||
|
the logic inside the sensor. This GPIO line should connect
|
||
|
to that pin and be marked as GPIO_ACTIVE_LOW.
|
||
|
|
||
|
interrupts:
|
||
|
maxItems: 1
|
||
|
description: Interrupt for INT pin for interrupt generation.
|
||
|
The polarity, whether the interrupt is active on the rising
|
||
|
or the falling edge, is software-configurable in the hardware.
|
||
|
|
||
|
vdd-supply:
|
||
|
description: An optional regulator providing core power supply
|
||
|
on the VDD pin, typically 1.8 V or 3.0 V.
|
||
|
|
||
|
iovdd-supply:
|
||
|
description: An optional regulator providing I/O power supply
|
||
|
for the I2C interface on the IOVDD pin, typically 1.8 V.
|
||
|
|
||
|
mount-matrix:
|
||
|
description: An optional 3x3 mounting rotation matrix.
|
||
|
|
||
|
allOf:
|
||
|
- if:
|
||
|
not:
|
||
|
properties:
|
||
|
compatible:
|
||
|
items:
|
||
|
const: yamaha,yas530
|
||
|
then:
|
||
|
properties:
|
||
|
reset-gpios: false
|
||
|
|
||
|
- if:
|
||
|
properties:
|
||
|
compatible:
|
||
|
items:
|
||
|
const: yamaha,yas539
|
||
|
then:
|
||
|
properties:
|
||
|
interrupts: false
|
||
|
|
||
|
required:
|
||
|
- compatible
|
||
|
- reg
|
||
|
|
||
|
additionalProperties: false
|
||
|
|
||
|
examples:
|
||
|
- |
|
||
|
#include <dt-bindings/interrupt-controller/irq.h>
|
||
|
#include <dt-bindings/gpio/gpio.h>
|
||
|
i2c-0 {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
magnetometer@2e {
|
||
|
compatible = "yamaha,yas530";
|
||
|
reg = <0x2e>;
|
||
|
vdd-supply = <&ldo1_reg>;
|
||
|
iovdd-supply = <&ldo2_reg>;
|
||
|
reset-gpios = <&gpio6 12 GPIO_ACTIVE_LOW>;
|
||
|
interrupts = <13 IRQ_TYPE_EDGE_RISING>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
i2c-1 {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
magnetometer@2e {
|
||
|
compatible = "yamaha,yas539";
|
||
|
reg = <0x2e>;
|
||
|
vdd-supply = <&ldo1_reg>;
|
||
|
};
|
||
|
};
|