mirror of
https://github.com/linux-msm/laptops-kernel.git
synced 2026-08-13 14:19:53 -07:00
Merge branch 'togreg' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git
This commit is contained in:
@@ -887,6 +887,7 @@ Tobias Klauser <tklauser@distanz.ch> <klto@zhaw.ch>
|
||||
Tobias Klauser <tklauser@distanz.ch> <tklauser@nuerscht.ch>
|
||||
Tobias Klauser <tklauser@distanz.ch> <tklauser@xenon.tklauser.home>
|
||||
Todor Tomov <todor.too@gmail.com> <todor.tomov@linaro.org>
|
||||
Tomasz Duszynski <tduszyns@gmail.com> <tomasz.duszynski@octakon.com>
|
||||
Tomasz Jeznach <tomasz.jeznach@linux.dev> <tjeznach@rivosinc.com>
|
||||
Tony Luck <tony.luck@intel.com>
|
||||
Trilok Soni <quic_tsoni@quicinc.com> <tsoni@codeaurora.org>
|
||||
|
||||
@@ -770,6 +770,7 @@ Description:
|
||||
3.85kohm_to_gnd: connected to ground via a 3.85kOhm resistor,
|
||||
6kohm_to_gnd: connected to ground via a 6kOhm resistor,
|
||||
7.7kohm_to_gnd: connected to ground via a 7.7kOhm resistor,
|
||||
10kohm_to_gnd: connected to ground via a 10kOhm resistor,
|
||||
16kohm_to_gnd: connected to ground via a 16kOhm resistor,
|
||||
20kohm_to_gnd: connected to ground via a 20kOhm resistor,
|
||||
32kohm_to_gnd: connected to ground via a 32kOhm resistor,
|
||||
@@ -917,7 +918,7 @@ Description:
|
||||
|
||||
Note the driver will assume the last p events requested are
|
||||
to be enabled where p is how many it supports (which may vary
|
||||
depending on the exact set requested. So if you want to be
|
||||
depending on the exact set requested). So if you want to be
|
||||
sure you have set what you think you have, check the contents of
|
||||
these attributes after everything is configured. Drivers may
|
||||
have to buffer any parameters so that they are consistent when
|
||||
@@ -973,7 +974,7 @@ Description:
|
||||
|
||||
Note the driver will assume the last p events requested are
|
||||
to be enabled where p is however many it supports (which may
|
||||
vary depending on the exact set requested. So if you want to be
|
||||
vary depending on the exact set requested). So if you want to be
|
||||
sure you have set what you think you have, check the contents of
|
||||
these attributes after everything is configured. Drivers may
|
||||
have to buffer any parameters so that they are consistent when
|
||||
@@ -1528,9 +1529,9 @@ Description:
|
||||
the unused bits, so to get a clean value the bits value must be
|
||||
used to mask the buffer output value appropriately. The storagebits
|
||||
value also specifies the data alignment. So s48/64>>2 will be a
|
||||
signed 48 bit integer stored in a 64 bit location aligned to a 64
|
||||
bit boundary. To obtain the clean value, shift right 2 and apply a
|
||||
mask to zero the top 16 bits of the result.
|
||||
signed 48-bit integer stored in a 64-bit location aligned to a
|
||||
64-bit boundary. To obtain the clean value, shift right 2 and apply
|
||||
a mask to zero the top 16 bits of the result.
|
||||
For other storage combinations this attribute will be extended
|
||||
appropriately.
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ Description:
|
||||
In bridge applications, such as strain gauges and load cells,
|
||||
the bridge itself consumes the majority of the current in the
|
||||
system. To minimize the current consumption of the system,
|
||||
the bridge can be disconnected (when it is not being used
|
||||
the bridge can be disconnected (when it is not being used)
|
||||
using the bridge_switch_en attribute.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_voltage2-voltage2_shorted_raw
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency_resolution
|
||||
KernelVersion: 3.4.0
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Stores channel Y frequency resolution/channel spacing in Hz for PLL
|
||||
devices. The given value directly influences the operating mode when
|
||||
fractional-N synthesis is required, as it derives values for
|
||||
configurable modulus parameters used in the calculation of the output
|
||||
frequency. It is assumed that the algorithm used to compute the various
|
||||
dividers is able to generate proper values for multiples of the channel
|
||||
spacing.
|
||||
@@ -1,13 +1,3 @@
|
||||
What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency_resolution
|
||||
KernelVersion: 3.4.0
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Stores channel Y frequency resolution/channel spacing in Hz.
|
||||
The value given directly influences the MODULUS used by
|
||||
the fractional-N PLL. It is assumed that the algorithm
|
||||
that is used to compute the various dividers, is able to
|
||||
generate proper values for multiples of channel spacing.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_refin_frequency
|
||||
KernelVersion: 3.4.0
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
|
||||
@@ -73,6 +73,47 @@ properties:
|
||||
device design and can interact with other characteristics such as
|
||||
settling time.
|
||||
|
||||
reference-sources:
|
||||
$ref: /schemas/types.yaml#/definitions/string-array
|
||||
description:
|
||||
Indicates the voltage reference source or sources for this channel. Some
|
||||
ADCs usually allow choosing between internal reference sources or a pair
|
||||
of external pins.
|
||||
|
||||
input-chopping:
|
||||
type: boolean
|
||||
description:
|
||||
If set, the positive and negative input channels are swapped on every
|
||||
other conversion to reduce offset error. This generally comes at the
|
||||
expense of added settling time between conversions, so should be omitted
|
||||
on systems with high-frequency signals or high data rate requirements.
|
||||
|
||||
excitation-channels:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32-array
|
||||
description:
|
||||
Excitation current sources provide current to resistive temperature
|
||||
devices (RTDs), thermistors, diodes and other resistive sensors that
|
||||
require constant current biasing.
|
||||
|
||||
This array describes the mux configuration of the excitation current
|
||||
sources. The values correspond to pins similar to the diff-channels and
|
||||
single-channel properties.
|
||||
|
||||
excitation-current-nanoamp:
|
||||
description:
|
||||
Excitation current sources provide current to resistive temperature
|
||||
devices (RTDs), thermistors, diodes and other resistive sensors that
|
||||
require constant current biasing.
|
||||
|
||||
This array describes the current configuration of the excitation current
|
||||
sources. The index in the array corresponds to the same index in the
|
||||
excitation-channels array.
|
||||
|
||||
burn-out-current-nanoamp:
|
||||
description:
|
||||
Burn-out current sources provide current to the channel's input pins for
|
||||
open-circuit or short-circuit detection.
|
||||
|
||||
anyOf:
|
||||
- oneOf:
|
||||
- required:
|
||||
|
||||
@@ -39,6 +39,7 @@ properties:
|
||||
- adi,ad4087
|
||||
- adi,ad4088
|
||||
- adi,ad4880
|
||||
- adi,ad4883
|
||||
- adi,ad4884
|
||||
|
||||
reg:
|
||||
@@ -102,6 +103,7 @@ allOf:
|
||||
contains:
|
||||
enum:
|
||||
- adi,ad4880
|
||||
- adi,ad4883
|
||||
- adi,ad4884
|
||||
then:
|
||||
properties:
|
||||
|
||||
@@ -33,6 +33,26 @@ properties:
|
||||
description:
|
||||
Analog supply voltage (AVDD).
|
||||
|
||||
vsup-supply:
|
||||
description:
|
||||
Supply voltage for the on-chip regulator (VSUP).
|
||||
|
||||
dvdd-supply:
|
||||
description:
|
||||
Digital supply voltage (DVDD). On the HX711, DVDD is a
|
||||
board-supplied digital rail; it was missing from the original
|
||||
binding. On the HX710B, DVDD must be greater than or equal to
|
||||
AVDD; when DVDD is a battery rail and AVDD is a regulated supply,
|
||||
one channel monitors the DVDD-AVDD difference for battery level
|
||||
detection.
|
||||
|
||||
rate-gpios:
|
||||
description:
|
||||
GPIO connected to the RATE pin. When driven low the output data
|
||||
rate is 10 SPS; when driven high it is 80 SPS. If omitted the
|
||||
RATE pin state is determined by the board wiring.
|
||||
maxItems: 1
|
||||
|
||||
clock-frequency:
|
||||
description:
|
||||
Controls the SCK bit-bang timing. The value is used to derive the
|
||||
@@ -57,6 +77,7 @@ examples:
|
||||
compatible = "avia,hx711";
|
||||
sck-gpios = <&gpio3 10 GPIO_ACTIVE_HIGH>;
|
||||
dout-gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
|
||||
rate-gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>;
|
||||
avdd-supply = <&avdd>;
|
||||
clock-frequency = <100000>;
|
||||
};
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
$id: http://devicetree.org/schemas/iio/adc/mediatek,mt6359-auxadc.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: MediaTek MT6350 series PMIC AUXADC
|
||||
title: MediaTek MT6350 series and similar PMIC AUXADC
|
||||
|
||||
maintainers:
|
||||
- AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
|
||||
@@ -20,6 +20,7 @@ properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- enum:
|
||||
- mediatek,mt6323-auxadc
|
||||
- mediatek,mt6357-auxadc
|
||||
- mediatek,mt6358-auxadc
|
||||
- mediatek,mt6359-auxadc
|
||||
|
||||
@@ -22,7 +22,9 @@ properties:
|
||||
- const: rockchip,rk3562-saradc
|
||||
- const: rockchip,rk3588-saradc
|
||||
- items:
|
||||
- const: rockchip,rk3576-saradc
|
||||
- enum:
|
||||
- rockchip,rk3576-saradc
|
||||
- rockchip,rv1106-saradc
|
||||
- const: rockchip,rk3588-saradc
|
||||
- items:
|
||||
- enum:
|
||||
|
||||
@@ -0,0 +1,219 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/adc/ti,ads112c14.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Texas Instruments' ADS112C14 and similar ADC chips
|
||||
|
||||
description: |
|
||||
Supports the following Texas Instruments' ADC chips:
|
||||
- ADS112C14 (16-bit)
|
||||
- ADS122C14 (24-bit)
|
||||
|
||||
https://www.ti.com/lit/ds/symlink/ads122c14.pdf
|
||||
|
||||
These chips are primarily designed for use with resistive sensors such as
|
||||
RTDs, thermocouples, Wheatstone bridges, etc. The channel bindings reflect
|
||||
this in that each channel represents the conditions required to make a
|
||||
measurement rather than strictly just the physical input channels.
|
||||
|
||||
maintainers:
|
||||
- David Lechner <dlechner@baylibre.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- ti,ads112c14
|
||||
- ti,ads122c14
|
||||
|
||||
reg:
|
||||
items:
|
||||
- minimum: 0x40
|
||||
maximum: 0x47
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
description: Optional external clock connected to GPIO3 pin.
|
||||
|
||||
avdd-supply: true
|
||||
dvdd-supply: true
|
||||
|
||||
refp-supply: true
|
||||
refn-supply: true
|
||||
|
||||
ti,refp-refn-resistor-ohms:
|
||||
description:
|
||||
The resistance of the external resistor between REFP and REFN when using
|
||||
resistor bridge driven by current outputs for RTD measurements.
|
||||
|
||||
interrupts:
|
||||
minItems: 1
|
||||
items:
|
||||
- description: /FAULT interrupt (GPIO2 pin)
|
||||
- description: /DRDY interrupt (GPIO3 pin)
|
||||
|
||||
interrupt-names:
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
items:
|
||||
enum: [fault, drdy]
|
||||
|
||||
gpio-controller: true
|
||||
'#gpio-cells':
|
||||
const: 2
|
||||
|
||||
'#address-cells':
|
||||
const: 1
|
||||
|
||||
'#size-cells':
|
||||
const: 0
|
||||
|
||||
patternProperties:
|
||||
^channel@[0-9a-f]$:
|
||||
$ref: adc.yaml
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
properties:
|
||||
reg:
|
||||
items:
|
||||
- maximum: 15 # arbitrary limit, channel@ can be any combination of AIN0-AIN7
|
||||
|
||||
single-channel:
|
||||
maximum: 7
|
||||
|
||||
diff-channels:
|
||||
items:
|
||||
maximum: 7
|
||||
|
||||
bipolar: true
|
||||
|
||||
input-chopping: true
|
||||
|
||||
excitation-channels:
|
||||
maxItems: 2
|
||||
items:
|
||||
maximum: 7
|
||||
|
||||
excitation-current-nanoamp:
|
||||
maxItems: 2
|
||||
items:
|
||||
enum: [1000, 10000, 20000, 30000, 40000, 50000, 60000, 70000, 80000,
|
||||
90000, 100000, 200000, 300000, 400000, 500000, 600000, 700000,
|
||||
800000, 900000, 1000000]
|
||||
|
||||
burn-out-current-nanoamp:
|
||||
items:
|
||||
- enum: [200, 1000, 10000]
|
||||
|
||||
reference-sources:
|
||||
items:
|
||||
- enum: [internal-2.5v, internal-1.25v, external, avdd]
|
||||
default: internal-2.5v
|
||||
|
||||
dependencies:
|
||||
excitation-channels: [ excitation-current-nanoamp ]
|
||||
excitation-current-nanoamp: [ excitation-channels ]
|
||||
|
||||
oneOf:
|
||||
- required: [ single-channel ]
|
||||
- required: [ diff-channels ]
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- avdd-supply
|
||||
- dvdd-supply
|
||||
|
||||
dependencies:
|
||||
refn-supply: [ refp-supply ]
|
||||
|
||||
oneOf:
|
||||
- required: [ refp-supply ]
|
||||
- required: [ "ti,refp-refn-resistor-ohms" ]
|
||||
- properties:
|
||||
refp-supply: false
|
||||
refn-supply: false
|
||||
ti,refp-refn-resistor-ohms: false
|
||||
|
||||
# /DRDY out and CLK in use the same AIN7/GPIO3 pin.
|
||||
if:
|
||||
required:
|
||||
- interrupt-names
|
||||
properties:
|
||||
interrupt-names:
|
||||
contains:
|
||||
const: drdy
|
||||
then:
|
||||
properties:
|
||||
clocks: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
adc@40 {
|
||||
compatible = "ti,ads112c14";
|
||||
reg = <0x40>;
|
||||
|
||||
avdd-supply = <&avdd>;
|
||||
dvdd-supply = <&dvdd>;
|
||||
|
||||
/* 3-Wire RTD: Two IDACs, One Measurement (AIN1-AIN2) */
|
||||
|
||||
ti,refp-refn-resistor-ohms = <500>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
channel@0 {
|
||||
reg = <0>;
|
||||
diff-channels = <1>, <2>;
|
||||
input-chopping;
|
||||
excitation-channels = <0>, <3>;
|
||||
excitation-current-nanoamp = <500000>, <500000>;
|
||||
reference-sources = "external";
|
||||
label = "rtd";
|
||||
};
|
||||
};
|
||||
};
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
adc@40 {
|
||||
compatible = "ti,ads112c14";
|
||||
reg = <0x40>;
|
||||
|
||||
avdd-supply = <&avdd>;
|
||||
dvdd-supply = <&dvdd>;
|
||||
|
||||
/* Resistive Bridge Measurement With a Thermistor for Temperature Compensation */
|
||||
|
||||
refp-supply = <&avdd>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
channel@0 {
|
||||
reg = <0>;
|
||||
diff-channels = <6>, <7>;
|
||||
bipolar;
|
||||
reference-sources = "external";
|
||||
label = "bridge";
|
||||
};
|
||||
|
||||
channel@1 {
|
||||
reg = <1>;
|
||||
diff-channels = <1>, <2>;
|
||||
reference-sources = "internal-2.5v";
|
||||
label = "thermistor";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,154 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
# Copyright (C) 2022 - 2026, Advanced Micro Devices, Inc.
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/adc/xlnx,versal-sysmon.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: AMD/Xilinx Versal System Monitor
|
||||
|
||||
maintainers:
|
||||
- Salih Erim <salih.erim@amd.com>
|
||||
|
||||
description:
|
||||
The AMD/Xilinx Versal System Monitor (SysMon) is the successor to the
|
||||
Zynq UltraScale+ AMS block. It provides on-chip voltage and temperature
|
||||
monitoring with up to 160 voltage measurement points and up to
|
||||
64 temperature satellites distributed across the SoC. The hardware
|
||||
supports configurable threshold alarms and oversampling. The device
|
||||
can be accessed via memory-mapped I/O or via an I2C interface.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: xlnx,versal-sysmon
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
'#io-channel-cells':
|
||||
const: 1
|
||||
|
||||
voltage-channels:
|
||||
type: object
|
||||
description:
|
||||
Container for voltage measurement channels.
|
||||
|
||||
properties:
|
||||
'#address-cells':
|
||||
const: 1
|
||||
|
||||
'#size-cells':
|
||||
const: 0
|
||||
|
||||
patternProperties:
|
||||
'^channel@([0-9a-f]|[1-9][0-9a-f])$':
|
||||
$ref: adc.yaml
|
||||
|
||||
description:
|
||||
Measures a voltage rail. The register index and rail
|
||||
name are assigned by the hardware design tool (Vivado).
|
||||
|
||||
properties:
|
||||
reg:
|
||||
minimum: 0
|
||||
maximum: 159
|
||||
description:
|
||||
Voltage measurement register index assigned by the hardware
|
||||
design tool.
|
||||
|
||||
required:
|
||||
- reg
|
||||
- label
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
required:
|
||||
- '#address-cells'
|
||||
- '#size-cells'
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
temperature-channels:
|
||||
type: object
|
||||
description:
|
||||
Container for temperature satellite measurement channels.
|
||||
|
||||
properties:
|
||||
'#address-cells':
|
||||
const: 1
|
||||
|
||||
'#size-cells':
|
||||
const: 0
|
||||
|
||||
patternProperties:
|
||||
'^channel@([1-9a-f]|[1-3][0-9a-f]|40)$':
|
||||
$ref: adc.yaml
|
||||
|
||||
description:
|
||||
Reads a temperature satellite sensor. Each satellite monitors
|
||||
a specific region of the SoC die.
|
||||
|
||||
properties:
|
||||
reg:
|
||||
minimum: 1
|
||||
maximum: 64
|
||||
description:
|
||||
Temperature satellite number (1-based hardware index).
|
||||
|
||||
required:
|
||||
- reg
|
||||
- label
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
required:
|
||||
- '#address-cells'
|
||||
- '#size-cells'
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
|
||||
sysmon@f1270000 {
|
||||
compatible = "xlnx,versal-sysmon";
|
||||
reg = <0xf1270000 0x4000>;
|
||||
interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#io-channel-cells = <1>;
|
||||
|
||||
voltage-channels {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
channel@0 {
|
||||
reg = <0>;
|
||||
label = "vccaux";
|
||||
};
|
||||
|
||||
channel@3 {
|
||||
reg = <3>;
|
||||
label = "vcc_ram";
|
||||
bipolar;
|
||||
};
|
||||
};
|
||||
|
||||
temperature-channels {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
channel@a {
|
||||
reg = <10>;
|
||||
label = "aie-temp-ch1";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -8,6 +8,7 @@ title: Sensirion SCD30 carbon dioxide sensor
|
||||
|
||||
maintainers:
|
||||
- Maxwell Doose <m32285159@gmail.com>
|
||||
- Tomasz Duszynski <tduszyns@gmail.com>
|
||||
|
||||
description: |
|
||||
Air quality sensor capable of measuring co2 concentration, temperature
|
||||
|
||||
@@ -10,15 +10,17 @@ maintainers:
|
||||
- Kim Seer Paller <kimseer.paller@analog.com>
|
||||
|
||||
description: |
|
||||
The AD3530/AD3530R (8-channel) and AD3531/AD3531R (4-channel) are low-power,
|
||||
16-bit, buffered voltage output digital-to-analog converters (DACs) with
|
||||
software-programmable gain controls, providing full-scale output spans of 2.5V
|
||||
or 5V for reference voltages of 2.5V. These devices operate from a single 2.7V
|
||||
to 5.5V supply and are guaranteed monotonic by design. The "R" variants
|
||||
include a 2.5V, 5ppm/°C internal reference, which is disabled by default.
|
||||
The AD3530/AD3530R (8-channel), AD3531/AD3531R (4-channel), and AD3532/AD3532R
|
||||
(16-channel) are low-power, 16-bit, buffered voltage output digital-to-analog
|
||||
converters (DACs) with software-programmable gain controls, providing
|
||||
full-scale output spans of 2.5V or 5V for reference voltages of 2.5V. These
|
||||
devices operate from a single 2.7V to 5.5V supply and are guaranteed monotonic
|
||||
by design. The "R" variants include a 2.5V, 5ppm/°C internal reference, which
|
||||
is disabled by default.
|
||||
Datasheet can be found here:
|
||||
https://www.analog.com/media/en/technical-documentation/data-sheets/ad3530_ad530r.pdf
|
||||
https://www.analog.com/media/en/technical-documentation/data-sheets/ad3531-ad3531r.pdf
|
||||
https://www.analog.com/media/en/technical-documentation/data-sheets/ad3532r.pdf
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
@@ -27,6 +29,8 @@ properties:
|
||||
- adi,ad3530r
|
||||
- adi,ad3531
|
||||
- adi,ad3531r
|
||||
- adi,ad3532
|
||||
- adi,ad3532r
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
@@ -32,27 +32,95 @@ properties:
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
vdd-supply:
|
||||
description: Input power supply.
|
||||
|
||||
vlogic-supply:
|
||||
description:
|
||||
Digital power supply. On some tiny package variants for single-channel
|
||||
devices, this supply is internally connected to vdd; in that case, specify
|
||||
this property with the same regulator as vdd.
|
||||
|
||||
vref-supply:
|
||||
description:
|
||||
Reference voltage supply. If not supplied the internal reference is used.
|
||||
|
||||
vcc-supply:
|
||||
description: If not supplied the internal reference is used.
|
||||
deprecated: true
|
||||
description: Use vref-supply instead.
|
||||
|
||||
reset-gpios:
|
||||
description: Active-low RESET pin to reset the device.
|
||||
maxItems: 1
|
||||
|
||||
ldac-gpios:
|
||||
description:
|
||||
Active-low LDAC pin used to asynchronously update the DAC channels.
|
||||
maxItems: 1
|
||||
|
||||
gain-gpios:
|
||||
description:
|
||||
GAIN pin that sets a multiplier for the DAC output voltage. When high,
|
||||
the DAC output voltage is multiplied by 2, otherwise it is unchanged.
|
||||
maxItems: 1
|
||||
|
||||
adi,range-double:
|
||||
description:
|
||||
Sets the initial voltage output range from 0 to 2xVREF. On devices that
|
||||
have a GAIN pin and no gain-gpios property is set, this indicates the pin
|
||||
is hardwired high.
|
||||
type: boolean
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- vdd-supply
|
||||
- vlogic-supply
|
||||
|
||||
allOf:
|
||||
- $ref: /schemas/spi/spi-peripheral-props.yaml#
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- adi,ad5676
|
||||
- adi,ad5683
|
||||
- adi,ad5684
|
||||
- adi,ad5686
|
||||
then:
|
||||
required:
|
||||
- vref-supply
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- adi,ad5310r
|
||||
- adi,ad5681r
|
||||
- adi,ad5682r
|
||||
- adi,ad5683
|
||||
- adi,ad5683r
|
||||
then:
|
||||
properties:
|
||||
gain-gpios: false
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
spi {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
dac@0 {
|
||||
reg = <0>;
|
||||
compatible = "adi,ad5310r";
|
||||
vcc-supply = <&dac_vref0>;
|
||||
vdd-supply = <&dac_vdd>;
|
||||
vlogic-supply = <&dac_vlogic>;
|
||||
vref-supply = <&dac_vref>;
|
||||
reset-gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
|
||||
ldac-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
...
|
||||
|
||||
@@ -33,18 +33,82 @@ properties:
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
vdd-supply:
|
||||
description: Input power supply.
|
||||
|
||||
vlogic-supply:
|
||||
description:
|
||||
Digital power supply. On some tiny package variants for single-channel
|
||||
devices, this supply is internally connected to vdd; in that case, specify
|
||||
this property with the same regulator as vdd.
|
||||
|
||||
vref-supply:
|
||||
description:
|
||||
Reference voltage supply. If not supplied the internal reference is used.
|
||||
|
||||
vcc-supply:
|
||||
description: |
|
||||
The regulator supply for DAC reference voltage.
|
||||
deprecated: true
|
||||
description: Use vref-supply instead.
|
||||
|
||||
reset-gpios:
|
||||
description: Active-low RESET pin to reset the device.
|
||||
maxItems: 1
|
||||
|
||||
ldac-gpios:
|
||||
description:
|
||||
Active-low LDAC pin used to asynchronously update the DAC channels.
|
||||
maxItems: 1
|
||||
|
||||
gain-gpios:
|
||||
description:
|
||||
GAIN pin that sets a multiplier for the DAC output voltage. When high,
|
||||
the DAC output voltage is multiplied by 2, otherwise it is unchanged.
|
||||
maxItems: 1
|
||||
|
||||
adi,range-double:
|
||||
description:
|
||||
Sets the initial voltage output range from 0 to 2xVREF. On devices that
|
||||
have a GAIN pin and no gain-gpios property is set, this indicates the pin
|
||||
is hardwired high.
|
||||
type: boolean
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- vdd-supply
|
||||
- vlogic-supply
|
||||
|
||||
allOf:
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- adi,ad5693
|
||||
- adi,ad5694
|
||||
- adi,ad5696
|
||||
then:
|
||||
required:
|
||||
- vref-supply
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- adi,ad5311r
|
||||
- adi,ad5691r
|
||||
- adi,ad5692r
|
||||
- adi,ad5693
|
||||
- adi,ad5693r
|
||||
then:
|
||||
properties:
|
||||
gain-gpios: false
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
@@ -52,7 +116,10 @@ examples:
|
||||
ad5696: dac@0 {
|
||||
compatible = "adi,ad5696";
|
||||
reg = <0>;
|
||||
vcc-supply = <&dac_vref>;
|
||||
vdd-supply = <&dac_vdd>;
|
||||
vlogic-supply = <&dac_vlogic>;
|
||||
vref-supply = <&dac_vref>;
|
||||
ldac-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
...
|
||||
|
||||
@@ -36,11 +36,11 @@ properties:
|
||||
|
||||
vrefp-supply:
|
||||
description:
|
||||
Positive referance input voltage range. From 5v to (vdd - 2.5)
|
||||
Positive reference input voltage range. From 5v to (vdd - 2.5)
|
||||
|
||||
vrefn-supply:
|
||||
description:
|
||||
Negative referance input voltage range. From (vss + 2.5) to 0.
|
||||
Negative reference input voltage range. From (vss + 2.5) to 0.
|
||||
|
||||
adi,rbuf-gain2-en:
|
||||
description: Specify to allow an external amplifier to be connected in a
|
||||
|
||||
@@ -0,0 +1,227 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/frequency/adi,adf41513.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Analog Devices ADF41513 PLL Frequency Synthesizer
|
||||
|
||||
maintainers:
|
||||
- Rodrigo Alencar <rodrigo.alencar@analog.com>
|
||||
|
||||
description:
|
||||
The ADF41513 is an ultralow noise frequency synthesizer that can be used to
|
||||
implement local oscillators (LOs) as high as 26.5 GHz in the upconversion and
|
||||
downconversion sections of wireless receivers and transmitters. The ADF41510
|
||||
supports frequencies up to 10 GHz.
|
||||
|
||||
https://www.analog.com/en/products/adf41510.html
|
||||
https://www.analog.com/en/products/adf41513.html
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- adi,adf41510
|
||||
- adi,adf41513
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
spi-max-frequency:
|
||||
maximum: 25000000
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
description: Clock that provides the reference input frequency.
|
||||
|
||||
avdd1-supply:
|
||||
description: PFD and Up and Down Digital Driver Power Supply (3.3 V)
|
||||
|
||||
avdd2-supply:
|
||||
description: RF Buffer and Prescaler Power Supply (3.3 V)
|
||||
|
||||
avdd3-supply:
|
||||
description: N Divider Power Supply (3.3 V)
|
||||
|
||||
avdd4-supply:
|
||||
description: R Divider and Lock Detector Power Supply (3.3 V)
|
||||
|
||||
avdd5-supply:
|
||||
description: Sigma-Delta Modulator and SPI Power Supply (3.3 V)
|
||||
|
||||
vp-supply:
|
||||
description: Charge Pump Power Supply (3.3 V)
|
||||
|
||||
enable-gpios:
|
||||
description:
|
||||
GPIO that controls the chip enable pin. A logic low on this pin
|
||||
powers down the device and puts the charge pump output into
|
||||
three-state mode.
|
||||
maxItems: 1
|
||||
|
||||
lock-detect-gpios:
|
||||
description:
|
||||
GPIO for lock detect functionality. When configured for digital lock
|
||||
detect, this pin will output a logic high when the PLL is locked.
|
||||
maxItems: 1
|
||||
|
||||
adi,power-up-frequency-mhz:
|
||||
minimum: 1000
|
||||
maximum: 26500
|
||||
default: 10000
|
||||
description:
|
||||
The PLL tunes to this frequency during the initialization sequence.
|
||||
This property should be set to a frequency supported by the loop filter
|
||||
and VCO used in the design. Range is 1 GHz to 26.5 GHz for ADF41513,
|
||||
and 1 GHz to 10 GHz for ADF41510.
|
||||
|
||||
adi,reference-div-factor:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 1
|
||||
maximum: 32
|
||||
default: 1
|
||||
description:
|
||||
Value for the reference division factor (R Counter). The driver will
|
||||
increment R Counter as needed to achieve a PFD frequency within the
|
||||
allowed range. High R counter values will reduce the PFD frequency, which
|
||||
lowers the frequency resolution, and affects phase noise performance.
|
||||
As it affects the PFD frequency, this value depends on the loop filter
|
||||
design.
|
||||
|
||||
adi,reference-doubler-enable:
|
||||
description:
|
||||
Enables the reference doubler when deriving the PFD frequency.
|
||||
The maximum reference frequency when the doubler is enabled is 225 MHz.
|
||||
As it affects the PFD frequency, this value depends on the loop filter
|
||||
design.
|
||||
type: boolean
|
||||
|
||||
adi,reference-div2-enable:
|
||||
description:
|
||||
Enables the reference divide-by-2 function when deriving the PFD
|
||||
frequency. As it affects the PFD frequency, this value depends on the
|
||||
loop filter design.
|
||||
type: boolean
|
||||
|
||||
adi,charge-pump-resistor-ohms:
|
||||
minimum: 1800
|
||||
maximum: 10000
|
||||
default: 2700
|
||||
description:
|
||||
External charge pump resistor (R_SET) value in ohms. This sets the maximum
|
||||
charge pump current along with the charge pump current setting.
|
||||
|
||||
adi,charge-pump-current-microamp:
|
||||
minimum: 81
|
||||
maximum: 7200
|
||||
description:
|
||||
Charge pump current (I_CP) in microamps. The value will be rounded to the
|
||||
nearest supported value. Range of acceptable values depends on the
|
||||
charge pump resistor value, such that 810 mV <= I_CP * R_SET <= 12960 mV.
|
||||
This value depends on the loop filter and the VCO design.
|
||||
|
||||
adi,logic-level-1v8-enable:
|
||||
description:
|
||||
Set MUXOUT and DLD logic levels to 1.8V. Default is 3.3V.
|
||||
type: boolean
|
||||
|
||||
adi,phase-detector-polarity-positive-enable:
|
||||
description:
|
||||
Set phase detector polarity to positive. Default is negative.
|
||||
Use positive polarity with non-inverting loop filter and VCO with
|
||||
positive tuning slope, or with inverting loop filter and VCO with
|
||||
negative tuning slope.
|
||||
type: boolean
|
||||
|
||||
adi,lock-detector-count:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
default: 64
|
||||
description:
|
||||
Sets the value for Lock Detector count of the PLL, which determines the
|
||||
number of consecutive phase detector cycles that must be within the lock
|
||||
detector window before lock is declared. Lower values increase the lock
|
||||
detection sensitivity, while higher values provides a more stable lock
|
||||
detection. Applications that consume the lock detect signal may require
|
||||
different settings based on system requirements.
|
||||
enum: [2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192]
|
||||
|
||||
adi,phase-resync-period-ns:
|
||||
default: 0
|
||||
description:
|
||||
When this value is non-zero, enable phase resync functionality, which
|
||||
produces a consistent output phase offset with respect to the input
|
||||
reference. The value specifies the resync period in nanoseconds, used
|
||||
to configure clock dividers with respect to the PFD frequency. This value
|
||||
should be set to a value that is at least as long as the worst case lock
|
||||
time, i.e., it depends mostly on the loop filter design.
|
||||
|
||||
adi,le-sync-enable:
|
||||
description:
|
||||
Synchronizes Load Enable (LE) transitions with the reference signal to
|
||||
avoid asynchronous glitches in the output. This is recommended when using
|
||||
the PLL as a frequency synthesizer, where the reference signal will always
|
||||
be present while the device is being configured. When using the PLL as a
|
||||
frequency tracker, where the reference signal may be absent, LE sync
|
||||
should be left disabled.
|
||||
type: boolean
|
||||
|
||||
dependencies:
|
||||
adi,charge-pump-resistor-ohms: [ 'adi,charge-pump-current-microamp' ]
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- clocks
|
||||
- avdd1-supply
|
||||
- avdd2-supply
|
||||
- avdd3-supply
|
||||
- avdd4-supply
|
||||
- avdd5-supply
|
||||
- vp-supply
|
||||
|
||||
allOf:
|
||||
- $ref: /schemas/spi/spi-peripheral-props.yaml#
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: adi,adf41510
|
||||
then:
|
||||
properties:
|
||||
adi,power-up-frequency-mhz:
|
||||
maximum: 10000
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
spi {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pll@0 {
|
||||
compatible = "adi,adf41513";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <25000000>;
|
||||
clocks = <&ref_clk>;
|
||||
avdd1-supply = <&avdd1_3v3>;
|
||||
avdd2-supply = <&avdd2_3v3>;
|
||||
avdd3-supply = <&avdd3_3v3>;
|
||||
avdd4-supply = <&avdd4_3v3>;
|
||||
avdd5-supply = <&avdd5_3v3>;
|
||||
vp-supply = <&vp_3v3>;
|
||||
enable-gpios = <&gpio0 10 GPIO_ACTIVE_HIGH>;
|
||||
lock-detect-gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
adi,power-up-frequency-mhz = <15500>;
|
||||
adi,charge-pump-current-microamp = <3600>;
|
||||
adi,charge-pump-resistor-ohms = <2700>;
|
||||
adi,reference-doubler-enable;
|
||||
adi,lock-detector-count = <64>;
|
||||
adi,phase-resync-period-ns = <0>;
|
||||
adi,phase-detector-polarity-positive-enable;
|
||||
adi,le-sync-enable;
|
||||
};
|
||||
};
|
||||
...
|
||||
@@ -0,0 +1,52 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/magnetometer/qstcorp,qmc5883l.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: QST QMC5883L 3-Axis Magnetic Sensor
|
||||
|
||||
maintainers:
|
||||
- Siratul Islam <siratul.islam@linux.dev>
|
||||
|
||||
description: |
|
||||
QST QMC5883L 3-Axis Magnetic Sensor on I2C bus.
|
||||
https://www.qstcorp.com/upload/pdf/202512/13-52-04%20QMC5883L%20Datasheet%20Rev.%20B.pdf
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- qstcorp,qmc5883l
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
vdd-supply: true
|
||||
|
||||
vddio-supply: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- vdd-supply
|
||||
- vddio-supply
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
magnetometer@d {
|
||||
compatible = "qstcorp,qmc5883l";
|
||||
reg = <0x0d>;
|
||||
vdd-supply = <&vdd_3v3_reg>;
|
||||
vddio-supply = <&vdd_3v3_reg>;
|
||||
};
|
||||
};
|
||||
...
|
||||
@@ -0,0 +1,47 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/magnetometer/qstcorp,qmc6308.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: QST QMC6308 3-Axis Magnetic Sensor
|
||||
|
||||
maintainers:
|
||||
- Jorijn van der Graaf <jorijnvdgraaf@catcrafts.net>
|
||||
|
||||
description: |
|
||||
QST QMC6308 3-axis anisotropic magnetoresistive (AMR) magnetic sensor
|
||||
on I2C bus, with a single supply and no interrupt pin.
|
||||
https://qstcorp.com/upload/pdf/202202/13-52-15%20QMC6308%20Datasheet%20Rev.%20F(1).pdf
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: qstcorp,qmc6308
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
vdd-supply: true
|
||||
|
||||
mount-matrix: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- vdd-supply
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
magnetometer@2c {
|
||||
compatible = "qstcorp,qmc6308";
|
||||
reg = <0x2c>;
|
||||
vdd-supply = <&vdd_1v8_reg>;
|
||||
};
|
||||
};
|
||||
...
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user