Merge 86cfccb669
("Merge tag 'dlm-5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm") into android-mainline
Steps along the way to 5.9-rc1 Fixed conflicts in: drivers/scsi/ufs/Kconfig drivers/scsi/ufs/ufshcd-crypto.c drivers/scsi/ufs/ufshcd.h drivers/staging/android/ion/ion.c drivers/staging/android/ion/ion_heap.c include/linux/ion.h Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: Ia2602190d5960b7ad1beaf49a00489d49f144a4e
This commit is contained in:
commit
2c136de302
@ -1569,7 +1569,8 @@ What: /sys/bus/iio/devices/iio:deviceX/in_concentrationX_voc_raw
|
||||
KernelVersion: 4.3
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Raw (unscaled no offset etc.) percentage reading of a substance.
|
||||
Raw (unscaled no offset etc.) reading of a substance. Units
|
||||
after application of scale and offset are percents.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_resistance_raw
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_resistanceX_raw
|
||||
|
20
Documentation/ABI/testing/sysfs-bus-iio-icm42600
Normal file
20
Documentation/ABI/testing/sysfs-bus-iio-icm42600
Normal file
@ -0,0 +1,20 @@
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_accel_x_calibbias
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_accel_y_calibbias
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_accel_z_calibbias
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibbias
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibbias
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibbias
|
||||
KernelVersion: 5.8
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Hardware applied calibration offset (assumed to fix production
|
||||
inaccuracies). Values represent a real physical offset expressed
|
||||
in SI units (m/s^2 for accelerometer and rad/s for gyroscope).
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_accel_calibbias_available
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_calibbias_available
|
||||
KernelVersion: 5.8
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Range of available values for hardware offset. Values in SI
|
||||
units (m/s^2 for accelerometer and rad/s for gyroscope).
|
34
Documentation/ABI/testing/sysfs-bus-iio-scd30
Normal file
34
Documentation/ABI/testing/sysfs-bus-iio-scd30
Normal file
@ -0,0 +1,34 @@
|
||||
What: /sys/bus/iio/devices/iio:deviceX/calibration_auto_enable
|
||||
Date: June 2020
|
||||
KernelVersion: 5.8
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Contaminants build-up in the measurement chamber or optical
|
||||
elements deterioration leads to sensor drift.
|
||||
|
||||
One can compensate for sensor drift by using automatic self
|
||||
calibration procedure (asc).
|
||||
|
||||
Writing 1 or 0 to this attribute will respectively activate or
|
||||
deactivate asc.
|
||||
|
||||
Upon reading current asc status is returned.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/calibration_forced_value
|
||||
Date: June 2020
|
||||
KernelVersion: 5.8
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Contaminants build-up in the measurement chamber or optical
|
||||
elements deterioration leads to sensor drift.
|
||||
|
||||
One can compensate for sensor drift by using forced
|
||||
recalibration (frc). This is useful in case there's known
|
||||
co2 reference available nearby the sensor.
|
||||
|
||||
Picking value from the range [400 1 2000] and writing it to the
|
||||
sensor will set frc.
|
||||
|
||||
Upon reading current frc value is returned. Note that after
|
||||
power cycling default value (i.e 400) is returned even though
|
||||
internally sensor had recalibrated itself.
|
@ -883,3 +883,139 @@ Contact: Subhash Jadavani <subhashj@codeaurora.org>
|
||||
Description: This entry shows the target state of an UFS UIC link
|
||||
for the chosen system power management level.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_presv_us_en
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows if preserve user-space was configured
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_shared_alloc_units
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the shared allocated units of WB buffer
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_type
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the configured WB type.
|
||||
0x1 for shared buffer mode. 0x0 for dedicated buffer mode.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_buff_cap_adj
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the total user-space decrease in shared
|
||||
buffer mode.
|
||||
The value of this parameter is 3 for TLC NAND when SLC mode
|
||||
is used as WriteBooster Buffer. 2 for MLC NAND.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_alloc_units
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the Maximum total WriteBooster Buffer size
|
||||
which is supported by the entire device.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_wb_luns
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the maximum number of luns that can support
|
||||
WriteBooster.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_red_type
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: The supportability of user space reduction mode
|
||||
and preserve user space mode.
|
||||
00h: WriteBooster Buffer can be configured only in
|
||||
user space reduction type.
|
||||
01h: WriteBooster Buffer can be configured only in
|
||||
preserve user space type.
|
||||
02h: Device can be configured in either user space
|
||||
reduction type or preserve user space type.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_wb_type
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: The supportability of WriteBooster Buffer type.
|
||||
00h: LU based WriteBooster Buffer configuration
|
||||
01h: Single shared WriteBooster Buffer
|
||||
configuration
|
||||
02h: Supporting both LU based WriteBooster
|
||||
Buffer and Single shared WriteBooster Buffer
|
||||
configuration
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_enable
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the status of WriteBooster.
|
||||
0: WriteBooster is not enabled.
|
||||
1: WriteBooster is enabled
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_flush_en
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows if flush is enabled.
|
||||
0: Flush operation is not performed.
|
||||
1: Flush operation is performed.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_flush_during_h8
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: Flush WriteBooster Buffer during hibernate state.
|
||||
0: Device is not allowed to flush the
|
||||
WriteBooster Buffer during link hibernate
|
||||
state.
|
||||
1: Device is allowed to flush the
|
||||
WriteBooster Buffer during link hibernate
|
||||
state
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_avail_buf
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the amount of unused WriteBooster buffer
|
||||
available.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_cur_buf
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the amount of unused current buffer.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_flush_status
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the flush operation status.
|
||||
00h: idle
|
||||
01h: Flush operation in progress
|
||||
02h: Flush operation stopped prematurely.
|
||||
03h: Flush operation completed successfully
|
||||
04h: Flush operation general failure
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_life_time_est
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows an indication of the WriteBooster Buffer
|
||||
lifetime based on the amount of performed program/erase cycles
|
||||
01h: 0% - 10% WriteBooster Buffer life time used
|
||||
...
|
||||
0Ah: 90% - 100% WriteBooster Buffer life time used
|
||||
The file is read only.
|
||||
|
||||
What: /sys/class/scsi_device/*/device/unit_descriptor/wb_buf_alloc_units
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the configured size of WriteBooster buffer.
|
||||
0400h corresponds to 4GB.
|
||||
The file is read only.
|
||||
|
@ -5804,8 +5804,9 @@
|
||||
panic() code such as dumping handler.
|
||||
|
||||
xen_nopvspin [X86,XEN]
|
||||
Disables the ticketlock slowpath using Xen PV
|
||||
optimizations.
|
||||
Disables the qspinlock slowpath using Xen PV optimizations.
|
||||
This parameter is obsoleted by "nopvspin" parameter, which
|
||||
has equivalent effect for XEN platform.
|
||||
|
||||
xen_nopv [X86]
|
||||
Disables the PV optimizations forcing the HVM guest to
|
||||
@ -5831,6 +5832,11 @@
|
||||
as generic guest with no PV drivers. Currently support
|
||||
XEN HVM, KVM, HYPER_V and VMWARE guest.
|
||||
|
||||
nopvspin [X86,XEN,KVM]
|
||||
Disables the qspinlock slow path using PV optimizations
|
||||
which allow the hypervisor to 'idle' the guest on lock
|
||||
contention.
|
||||
|
||||
xirc2ps_cs= [NET,PCMCIA]
|
||||
Format:
|
||||
<irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]]
|
||||
|
@ -1531,7 +1531,7 @@ The Free Software Foundation may publish new, revised versions
|
||||
of the GNU Free Documentation License from time to time. Such new
|
||||
versions will be similar in spirit to the present version, but may
|
||||
differ in detail to address new problems or concerns. See
|
||||
http://www.gnu.org/copyleft/.
|
||||
https://www.gnu.org/copyleft/.
|
||||
|
||||
Each version of the License is given a distinguishing version number.
|
||||
If the Document specifies that a particular numbered version of this
|
@ -102,7 +102,7 @@ Required sub-node properties:
|
||||
[0] http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/index.html
|
||||
[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
|
||||
[2] Documentation/devicetree/bindings/power/power-domain.yaml
|
||||
[3] Documentation/devicetree/bindings/thermal/thermal.txt
|
||||
[3] Documentation/devicetree/bindings/thermal/thermal*.yaml
|
||||
[4] Documentation/devicetree/bindings/sram/sram.yaml
|
||||
[5] Documentation/devicetree/bindings/reset/reset.txt
|
||||
|
||||
|
@ -108,7 +108,7 @@ Required properties:
|
||||
|
||||
[0] http://infocenter.arm.com/help/topic/com.arm.doc.dui0922b/index.html
|
||||
[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
|
||||
[2] Documentation/devicetree/bindings/thermal/thermal.txt
|
||||
[2] Documentation/devicetree/bindings/thermal/thermal*.yaml
|
||||
[3] Documentation/devicetree/bindings/sram/sram.yaml
|
||||
[4] Documentation/devicetree/bindings/power/power-domain.yaml
|
||||
|
||||
|
@ -176,7 +176,7 @@ Required properties:
|
||||
"fsl,imx8qxp-sc-thermal"
|
||||
followed by "fsl,imx-sc-thermal";
|
||||
|
||||
- #thermal-sensor-cells: See Documentation/devicetree/bindings/thermal/thermal.txt
|
||||
- #thermal-sensor-cells: See Documentation/devicetree/bindings/thermal/thermal-sensor.yaml
|
||||
for a description.
|
||||
|
||||
Example (imx8qxp):
|
||||
|
@ -111,7 +111,7 @@ Thermal:
|
||||
--------
|
||||
|
||||
For common binding part and usage, refer to
|
||||
Documentation/devicetree/bindings/thermal/thermal.txt
|
||||
Documentation/devicetree/bindings/thermal/thermal*.yaml
|
||||
|
||||
The thermal IP can probe the temperature all around the processor. It
|
||||
may feature several channels, each of them wired to one sensor.
|
||||
|
@ -203,7 +203,7 @@ It is possible to setup an overheat interrupt by giving at least one
|
||||
critical point to any subnode of the thermal-zone node.
|
||||
|
||||
For common binding part and usage, refer to
|
||||
Documentation/devicetree/bindings/thermal/thermal.txt
|
||||
Documentation/devicetree/bindings/thermal/thermal*.yaml
|
||||
|
||||
Required properties:
|
||||
- compatible: must be one of:
|
||||
|
@ -18,7 +18,8 @@ Optional properties:
|
||||
in unit of nanoseconds.
|
||||
- voltage-tolerance: Specify the CPU voltage tolerance in percentage.
|
||||
- #cooling-cells:
|
||||
Please refer to Documentation/devicetree/bindings/thermal/thermal.txt.
|
||||
Please refer to
|
||||
Documentation/devicetree/bindings/thermal/thermal-cooling-devices.yaml.
|
||||
|
||||
Examples:
|
||||
|
||||
|
@ -21,8 +21,8 @@ Optional properties:
|
||||
flow is handled by hardware, hence no software "voltage tracking" is
|
||||
needed.
|
||||
- #cooling-cells:
|
||||
Please refer to Documentation/devicetree/bindings/thermal/thermal.txt
|
||||
for detail.
|
||||
For details, please refer to
|
||||
Documentation/devicetree/bindings/thermal/thermal-cooling-devices.yaml
|
||||
|
||||
Example 1 (MT7623 SoC):
|
||||
|
||||
|
@ -5,7 +5,7 @@ Required properties:
|
||||
- clocks: Must contain an entry for the CPU clock.
|
||||
See ../clocks/clock-bindings.txt for details.
|
||||
- operating-points-v2: See ../bindings/opp/opp.txt for details.
|
||||
- #cooling-cells: Should be 2. See ../thermal/thermal.txt for details.
|
||||
- #cooling-cells: Should be 2. See ../thermal/thermal-cooling-devices.yaml for details.
|
||||
|
||||
For each opp entry in 'operating-points-v2' table:
|
||||
- opp-supported-hw: Two bitfields indicating:
|
||||
|
@ -12,7 +12,8 @@ Optional properties:
|
||||
- alarm-gpios: This pin going active indicates something is wrong with
|
||||
the fan, and a udev event will be fired.
|
||||
- #cooling-cells: If used as a cooling device, must be <2>
|
||||
Also see: Documentation/devicetree/bindings/thermal/thermal.txt
|
||||
Also see:
|
||||
Documentation/devicetree/bindings/thermal/thermal-cooling-devices.yaml
|
||||
min and max states are derived from the speed-map of the fan.
|
||||
|
||||
Note: At least one the "gpios" or "alarm-gpios" properties must be set.
|
||||
|
@ -34,8 +34,8 @@ Optional properties:
|
||||
LM90 "-ALERT" pin output.
|
||||
See interrupt-controller/interrupts.txt for the format.
|
||||
|
||||
- #thermal-sensor-cells: should be set to 1. See thermal/thermal.txt for
|
||||
details. See <include/dt-bindings/thermal/lm90.h> for the
|
||||
- #thermal-sensor-cells: should be set to 1. See thermal/thermal-sensor.yaml
|
||||
for details. See <include/dt-bindings/thermal/lm90.h> for the
|
||||
definition of the local, remote and 2nd remote sensor index
|
||||
constants.
|
||||
|
||||
|
@ -12,8 +12,8 @@ maintainers:
|
||||
description: |
|
||||
Analog Devices ADXL345/ADXL375 3-Axis Digital Accelerometers that supports
|
||||
both I2C & SPI interfaces.
|
||||
http://www.analog.com/en/products/mems/accelerometers/adxl345.html
|
||||
http://www.analog.com/en/products/sensors-mems/accelerometers/adxl375.html
|
||||
https://www.analog.com/en/products/mems/accelerometers/adxl345.html
|
||||
https://www.analog.com/en/products/sensors-mems/accelerometers/adxl375.html
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
|
@ -1,22 +0,0 @@
|
||||
Kionix KXSD9 Accelerometer device tree bindings
|
||||
|
||||
Required properties:
|
||||
- compatible: should be set to "kionix,kxsd9"
|
||||
- reg: i2c slave address
|
||||
|
||||
Optional properties:
|
||||
- vdd-supply: The input supply for VDD
|
||||
- iovdd-supply: The input supply for IOVDD
|
||||
- interrupts: The movement detection interrupt
|
||||
- mount-matrix: See mount-matrix.txt
|
||||
|
||||
Example:
|
||||
|
||||
kxsd9@18 {
|
||||
compatible = "kionix,kxsd9";
|
||||
reg = <0x18>;
|
||||
interrupt-parent = <&foo>;
|
||||
interrupts = <57 IRQ_TYPE_EDGE_FALLING>;
|
||||
iovdd-supply = <&bar>;
|
||||
vdd-supply = <&baz>;
|
||||
};
|
@ -0,0 +1,65 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/accel/kionix,kxsd9.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Kionix KXSD9 Accelerometer
|
||||
|
||||
maintainers:
|
||||
- Jonathan Cameron <jic23@kernel.org>
|
||||
|
||||
description: |
|
||||
3 axis 12 bit accelerometer with +-8G range on all axes. Also has a
|
||||
12 bit auxiliary ADC channel. Interface is either SPI or I2C.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: kionix,kxsd9
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
vdd-supply: true
|
||||
iovdd-supply: true
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
mount-matrix:
|
||||
description: an optional 3x3 mounting rotation matrix.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
examples:
|
||||
- |
|
||||
# include <dt-bindings/interrupt-controller/irq.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
accel@18 {
|
||||
compatible = "kionix,kxsd9";
|
||||
reg = <0x18>;
|
||||
iovdd-supply = <&iovdd>;
|
||||
vdd-supply = <&vdd>;
|
||||
interrupts = <57 IRQ_TYPE_EDGE_FALLING>;
|
||||
mount-matrix = "-0.984807753012208", "0", "-0.173648177666930",
|
||||
"0", "-1", "0",
|
||||
"-0.173648177666930", "0", "0.984807753012208";
|
||||
};
|
||||
};
|
||||
- |
|
||||
# include <dt-bindings/interrupt-controller/irq.h>
|
||||
spi {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
accel@0 {
|
||||
compatible = "kionix,kxsd9";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <10000000>;
|
||||
};
|
||||
};
|
||||
...
|
@ -1,49 +0,0 @@
|
||||
* Ingenic JZ47xx ADC controller IIO bindings
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible: Should be one of:
|
||||
* ingenic,jz4725b-adc
|
||||
* ingenic,jz4740-adc
|
||||
* ingenic,jz4770-adc
|
||||
- reg: ADC controller registers location and length.
|
||||
- clocks: phandle to the SoC's ADC clock.
|
||||
- clock-names: Must be set to "adc".
|
||||
- #io-channel-cells: Must be set to <1> to indicate channels are selected
|
||||
by index.
|
||||
|
||||
ADC clients must use the format described in iio-bindings.txt, giving
|
||||
a phandle and IIO specifier pair ("io-channels") to the ADC controller.
|
||||
|
||||
Example:
|
||||
|
||||
#include <dt-bindings/iio/adc/ingenic,adc.h>
|
||||
|
||||
adc: adc@10070000 {
|
||||
compatible = "ingenic,jz4740-adc";
|
||||
#io-channel-cells = <1>;
|
||||
|
||||
reg = <0x10070000 0x30>;
|
||||
|
||||
clocks = <&cgu JZ4740_CLK_ADC>;
|
||||
clock-names = "adc";
|
||||
|
||||
interrupt-parent = <&intc>;
|
||||
interrupts = <18>;
|
||||
};
|
||||
|
||||
adc-keys {
|
||||
...
|
||||
compatible = "adc-keys";
|
||||
io-channels = <&adc INGENIC_ADC_AUX>;
|
||||
io-channel-names = "buttons";
|
||||
...
|
||||
};
|
||||
|
||||
battery {
|
||||
...
|
||||
compatible = "ingenic,jz4740-battery";
|
||||
io-channels = <&adc INGENIC_ADC_BATTERY>;
|
||||
io-channel-names = "battery";
|
||||
...
|
||||
};
|
71
Documentation/devicetree/bindings/iio/adc/ingenic,adc.yaml
Normal file
71
Documentation/devicetree/bindings/iio/adc/ingenic,adc.yaml
Normal file
@ -0,0 +1,71 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
# Copyright 2019-2020 Artur Rojek
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/iio/adc/ingenic,adc.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
|
||||
title: Ingenic JZ47xx ADC controller IIO bindings
|
||||
|
||||
maintainers:
|
||||
- Artur Rojek <contact@artur-rojek.eu>
|
||||
|
||||
description: >
|
||||
Industrial I/O subsystem bindings for ADC controller found in
|
||||
Ingenic JZ47xx SoCs.
|
||||
|
||||
ADC clients must use the format described in iio-bindings.txt, giving
|
||||
a phandle and IIO specifier pair ("io-channels") to the ADC controller.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- ingenic,jz4725b-adc
|
||||
- ingenic,jz4740-adc
|
||||
- ingenic,jz4770-adc
|
||||
|
||||
'#io-channel-cells':
|
||||
const: 1
|
||||
description:
|
||||
Must be set to <1> to indicate channels are selected by index.
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: adc
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- '#io-channel-cells'
|
||||
- reg
|
||||
- clocks
|
||||
- clock-names
|
||||
- interrupts
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/clock/jz4740-cgu.h>
|
||||
#include <dt-bindings/iio/adc/ingenic,adc.h>
|
||||
|
||||
adc@10070000 {
|
||||
compatible = "ingenic,jz4740-adc";
|
||||
#io-channel-cells = <1>;
|
||||
|
||||
reg = <0x10070000 0x30>;
|
||||
|
||||
clocks = <&cgu JZ4740_CLK_ADC>;
|
||||
clock-names = "adc";
|
||||
|
||||
interrupt-parent = <&intc>;
|
||||
interrupts = <18>;
|
||||
};
|
@ -1,173 +0,0 @@
|
||||
Qualcomm's SPMI PMIC ADC
|
||||
|
||||
- SPMI PMIC voltage ADC (VADC) provides interface to clients to read
|
||||
voltage. The VADC is a 15-bit sigma-delta ADC.
|
||||
- SPMI PMIC5 voltage ADC (ADC) provides interface to clients to read
|
||||
voltage. The VADC is a 16-bit sigma-delta ADC.
|
||||
|
||||
VADC node:
|
||||
|
||||
- compatible:
|
||||
Usage: required
|
||||
Value type: <string>
|
||||
Definition: Should contain "qcom,spmi-vadc".
|
||||
Should contain "qcom,spmi-adc5" for PMIC5 ADC driver.
|
||||
Should contain "qcom,spmi-adc-rev2" for PMIC rev2 ADC driver.
|
||||
Should contain "qcom,pms405-adc" for PMS405 PMIC
|
||||
|
||||
- reg:
|
||||
Usage: required
|
||||
Value type: <prop-encoded-array>
|
||||
Definition: VADC base address in the SPMI PMIC register map.
|
||||
|
||||
- #address-cells:
|
||||
Usage: required
|
||||
Value type: <u32>
|
||||
Definition: Must be one. Child node 'reg' property should define ADC
|
||||
channel number.
|
||||
|
||||
- #size-cells:
|
||||
Usage: required
|
||||
Value type: <u32>
|
||||
Definition: Must be zero.
|
||||
|
||||
- #io-channel-cells:
|
||||
Usage: required
|
||||
Value type: <u32>
|
||||
Definition: Must be one. For details about IIO bindings see:
|
||||
Documentation/devicetree/bindings/iio/iio-bindings.txt
|
||||
|
||||
- interrupts:
|
||||
Usage: optional
|
||||
Value type: <prop-encoded-array>
|
||||
Definition: End of conversion interrupt.
|
||||
|
||||
Channel node properties:
|
||||
|
||||
- reg:
|
||||
Usage: required
|
||||
Value type: <u32>
|
||||
Definition: ADC channel number.
|
||||
See include/dt-bindings/iio/qcom,spmi-vadc.h
|
||||
|
||||
- label:
|
||||
Usage: required for "qcom,spmi-adc5" and "qcom,spmi-adc-rev2"
|
||||
Value type: <empty>
|
||||
Definition: ADC input of the platform as seen in the schematics.
|
||||
For thermistor inputs connected to generic AMUX or GPIO inputs
|
||||
these can vary across platform for the same pins. Hence select
|
||||
the platform schematics name for this channel.
|
||||
|
||||
- qcom,decimation:
|
||||
Usage: optional
|
||||
Value type: <u32>
|
||||
Definition: This parameter is used to decrease ADC sampling rate.
|
||||
Quicker measurements can be made by reducing decimation ratio.
|
||||
- For compatible property "qcom,spmi-vadc", valid values are
|
||||
512, 1024, 2048, 4096. If property is not found, default value
|
||||
of 512 will be used.
|
||||
- For compatible property "qcom,spmi-adc5", valid values are 250, 420
|
||||
and 840. If property is not found, default value of 840 is used.
|
||||
- For compatible property "qcom,spmi-adc-rev2", valid values are 256,
|
||||
512 and 1024. If property is not present, default value is 1024.
|
||||
|
||||
- qcom,pre-scaling:
|
||||
Usage: optional
|
||||
Value type: <u32 array>
|
||||
Definition: Used for scaling the channel input signal before the signal is
|
||||
fed to VADC. The configuration for this node is to know the
|
||||
pre-determined ratio and use it for post scaling. Select one from
|
||||
the following options.
|
||||
<1 1>, <1 3>, <1 4>, <1 6>, <1 20>, <1 8>, <10 81>, <1 10>
|
||||
If property is not found default value depending on chip will be used.
|
||||
|
||||
- qcom,ratiometric:
|
||||
Usage: optional
|
||||
Value type: <empty>
|
||||
Definition: Channel calibration type.
|
||||
- For compatible property "qcom,spmi-vadc", if this property is
|
||||
specified VADC will use the VDD reference (1.8V) and GND for
|
||||
channel calibration. If property is not found, channel will be
|
||||
calibrated with 0.625V and 1.25V reference channels, also
|
||||
known as absolute calibration.
|
||||
- For compatible property "qcom,spmi-adc5" and "qcom,spmi-adc-rev2",
|
||||
if this property is specified VADC will use the VDD reference
|
||||
(1.875V) and GND for channel calibration. If property is not found,
|
||||
channel will be calibrated with 0V and 1.25V reference channels,
|
||||
also known as absolute calibration.
|
||||
|
||||
- qcom,hw-settle-time:
|
||||
Usage: optional
|
||||
Value type: <u32>
|
||||
Definition: Time between AMUX getting configured and the ADC starting
|
||||
conversion. The 'hw_settle_time' is an index used from valid values
|
||||
and programmed in hardware to achieve the hardware settling delay.
|
||||
- For compatible property "qcom,spmi-vadc" and "qcom,spmi-adc-rev2",
|
||||
Delay = 100us * (hw_settle_time) for hw_settle_time < 11,
|
||||
and 2ms * (hw_settle_time - 10) otherwise.
|
||||
Valid values are: 0, 100, 200, 300, 400, 500, 600, 700, 800,
|
||||
900 us and 1, 2, 4, 6, 8, 10 ms.
|
||||
If property is not found, channel will use 0us.
|
||||
- For compatible property "qcom,spmi-adc5", delay = 15us for
|
||||
value 0, 100us * (value) for values < 11,
|
||||
and 2ms * (value - 10) otherwise.
|
||||
Valid values are: 15, 100, 200, 300, 400, 500, 600, 700, 800,
|
||||
900 us and 1, 2, 4, 6, 8, 10 ms
|
||||
Certain controller digital versions have valid values of
|
||||
15, 100, 200, 300, 400, 500, 600, 700, 1, 2, 4, 8, 16, 32, 64, 128 ms
|
||||
If property is not found, channel will use 15us.
|
||||
|
||||
- qcom,avg-samples:
|
||||
Usage: optional
|
||||
Value type: <u32>
|
||||
Definition: Number of samples to be used for measurement.
|
||||
Averaging provides the option to obtain a single measurement
|
||||
from the ADC that is an average of multiple samples. The value
|
||||
selected is 2^(value).
|
||||
- For compatible property "qcom,spmi-vadc", valid values
|
||||
are: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512
|
||||
If property is not found, 1 sample will be used.
|
||||
- For compatible property "qcom,spmi-adc5" and "qcom,spmi-adc-rev2",
|
||||
valid values are: 1, 2, 4, 8, 16
|
||||
If property is not found, 1 sample will be used.
|
||||
|
||||
NOTE:
|
||||
|
||||
For compatible property "qcom,spmi-vadc" following channels, also known as
|
||||
reference point channels, are used for result calibration and their channel
|
||||
configuration nodes should be defined:
|
||||
VADC_REF_625MV and/or VADC_SPARE1(based on PMIC version) VADC_REF_1250MV,
|
||||
VADC_GND_REF and VADC_VDD_VADC.
|
||||
|
||||
Example:
|
||||
|
||||
#include <dt-bindings/iio/qcom,spmi-vadc.h>
|
||||
#include <linux/irq.h>
|
||||
/* ... */
|
||||
|
||||
/* VADC node */
|
||||
pmic_vadc: vadc@3100 {
|
||||
compatible = "qcom,spmi-vadc";
|
||||
reg = <0x3100>;
|
||||
interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
#io-channel-cells = <1>;
|
||||
io-channel-ranges;
|
||||
|
||||
/* Channel node */
|
||||
adc-chan@VADC_LR_MUX10_USB_ID {
|
||||
reg = <VADC_LR_MUX10_USB_ID>;
|
||||
qcom,decimation = <512>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,avg-samples = <1>;
|
||||
qcom,pre-scaling = <1 3>;
|
||||
};
|
||||
};
|
||||
|
||||
/* IIO client node */
|
||||
usb {
|
||||
io-channels = <&pmic_vadc VADC_LR_MUX10_USB_ID>;
|
||||
io-channel-names = "vadc";
|
||||
};
|
278
Documentation/devicetree/bindings/iio/adc/qcom,spmi-vadc.yaml
Normal file
278
Documentation/devicetree/bindings/iio/adc/qcom,spmi-vadc.yaml
Normal file
@ -0,0 +1,278 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/adc/qcom,spmi-vadc.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Qualcomm's SPMI PMIC ADC
|
||||
|
||||
maintainers:
|
||||
- Andy Gross <agross@kernel.org>
|
||||
- Bjorn Andersson <bjorn.andersson@linaro.org>
|
||||
|
||||
description: |
|
||||
SPMI PMIC voltage ADC (VADC) provides interface to clients to read
|
||||
voltage. The VADC is a 15-bit sigma-delta ADC.
|
||||
SPMI PMIC5/PMIC7 voltage ADC (ADC) provides interface to clients to read
|
||||
voltage. The VADC is a 16-bit sigma-delta ADC.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- items:
|
||||
- const: qcom,pms405-adc
|
||||
- const: qcom,spmi-adc-rev2
|
||||
|
||||
- items:
|
||||
- enum:
|
||||
- qcom,spmi-vadc
|
||||
- qcom,spmi-adc5
|
||||
- qcom,spmi-adc-rev2
|
||||
- qcom,spmi-adc7
|
||||
|
||||
reg:
|
||||
description: VADC base address in the SPMI PMIC register map
|
||||
maxItems: 1
|
||||
|
||||
'#address-cells':
|
||||
const: 1
|
||||
|
||||
'#size-cells':
|
||||
const: 0
|
||||
|
||||
'#io-channel-cells':
|
||||
const: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
description:
|
||||
End of conversion interrupt.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- '#address-cells'
|
||||
- '#size-cells'
|
||||
- '#io-channel-cells'
|
||||
|
||||
patternProperties:
|
||||
"^.*@[0-9a-f]+$":
|
||||
type: object
|
||||
description: |
|
||||
Represents the external channels which are connected to the ADC.
|
||||
For compatible property "qcom,spmi-vadc" following channels, also known as
|
||||
reference point channels, are used for result calibration and their channel
|
||||
configuration nodes should be defined:
|
||||
VADC_REF_625MV and/or VADC_SPARE1(based on PMIC version) VADC_REF_1250MV,
|
||||
VADC_GND_REF and VADC_VDD_VADC.
|
||||
|
||||
properties:
|
||||
reg:
|
||||
description: |
|
||||
ADC channel number.
|
||||
See include/dt-bindings/iio/qcom,spmi-vadc.h
|
||||
For PMIC7 ADC, the channel numbers are specified separately per PMIC
|
||||
in the PMIC-specific files in include/dt-bindings/iio/.
|
||||
|
||||
label:
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
description: |
|
||||
ADC input of the platform as seen in the schematics.
|
||||
For thermistor inputs connected to generic AMUX or GPIO inputs
|
||||
these can vary across platform for the same pins. Hence select
|
||||
the platform schematics name for this channel.
|
||||
|
||||
qcom,decimation:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: |
|
||||
This parameter is used to decrease ADC sampling rate.
|
||||
Quicker measurements can be made by reducing decimation ratio.
|
||||
|
||||
qcom,pre-scaling:
|
||||
description: |
|
||||
Used for scaling the channel input signal before the signal is
|
||||
fed to VADC. The configuration for this node is to know the
|
||||
pre-determined ratio and use it for post scaling. It is a pair of
|
||||
integers, denoting the numerator and denominator of the fraction by which
|
||||
input signal is multiplied. For example, <1 3> indicates the signal is scaled
|
||||
down to 1/3 of its value before ADC measurement.
|
||||
If property is not found default value depending on chip will be used.
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/uint32-array
|
||||
oneOf:
|
||||
- items:
|
||||
- const: 1
|
||||
- enum: [ 1, 3, 4, 6, 20, 8, 10 ]
|
||||
|
||||
- items:
|
||||
- const: 10
|
||||
- const: 81
|
||||
|
||||
qcom,ratiometric:
|
||||
description: |
|
||||
Channel calibration type.
|
||||
- For compatible property "qcom,spmi-vadc", if this property is
|
||||
specified VADC will use the VDD reference (1.8V) and GND for
|
||||
channel calibration. If property is not found, channel will be
|
||||
calibrated with 0.625V and 1.25V reference channels, also
|
||||
known as absolute calibration.
|
||||
- For compatible property "qcom,spmi-adc5", "qcom,spmi-adc7" and
|
||||
"qcom,spmi-adc-rev2", if this property is specified VADC will use
|
||||
the VDD reference (1.875V) and GND for channel calibration. If
|
||||
property is not found, channel will be calibrated with 0V and 1.25V
|
||||
reference channels, also known as absolute calibration.
|
||||
type: boolean
|
||||
|
||||
qcom,hw-settle-time:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: |
|
||||
Time between AMUX getting configured and the ADC starting
|
||||
conversion. The 'hw_settle_time' is an index used from valid values
|
||||
and programmed in hardware to achieve the hardware settling delay.
|
||||
|
||||
qcom,avg-samples:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: |
|
||||
Number of samples to be used for measurement.
|
||||
Averaging provides the option to obtain a single measurement
|
||||
from the ADC that is an average of multiple samples. The value
|
||||
selected is 2^(value).
|
||||
|
||||
required:
|
||||
- reg
|
||||
|
||||
allOf:
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: qcom,spmi-vadc
|
||||
|
||||
then:
|
||||
patternProperties:
|
||||
"^.*@[0-9a-f]+$":
|
||||
properties:
|
||||
qcom,decimation:
|
||||
enum: [ 512, 1024, 2048, 4096 ]
|
||||
default: 512
|
||||
|
||||
qcom,hw-settle-time:
|
||||
enum: [ 0, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1, 2,
|
||||
4, 6, 8, 10 ]
|
||||
default: 0
|
||||
|
||||
qcom,avg-samples:
|
||||
enum: [ 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 ]
|
||||
default: 1
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: qcom,spmi-adc-rev2
|
||||
|
||||
then:
|
||||
patternProperties:
|
||||
"^.*@[0-9a-f]+$":
|
||||
properties:
|
||||
qcom,decimation:
|
||||
enum: [ 256, 512, 1024 ]
|
||||
default: 1024
|
||||
|
||||
qcom,hw-settle-time:
|
||||
enum: [ 0, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1, 2,
|
||||
4, 6, 8, 10 ]
|
||||
default: 0
|
||||
|
||||
qcom,avg-samples:
|
||||
enum: [ 1, 2, 4, 8, 16 ]
|
||||
default: 1
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: qcom,spmi-adc5
|
||||
|
||||
then:
|
||||
patternProperties:
|
||||
"^.*@[0-9a-f]+$":
|
||||
properties:
|
||||
qcom,decimation:
|
||||
enum: [ 250, 420, 840 ]
|
||||
default: 840
|
||||
|
||||
qcom,hw-settle-time:
|
||||
enum: [ 15, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1, 2,
|
||||
4, 6, 8, 10, 16, 32, 64, 128 ]
|
||||
default: 15
|
||||
|
||||
qcom,avg-samples:
|
||||
enum: [ 1, 2, 4, 8, 16 ]
|
||||
default: 1
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: qcom,spmi-adc7
|
||||
|
||||
then:
|
||||
patternProperties:
|
||||
"^.*@[0-9a-f]+$":
|
||||
properties:
|
||||
qcom,decimation:
|
||||
enum: [ 85, 340, 1360 ]
|
||||
default: 1360
|
||||
|
||||
qcom,hw-settle-time:
|
||||
enum: [ 15, 100, 200, 300, 400, 500, 600, 700, 1000, 2000, 4000,
|
||||
8000, 16000, 32000, 64000, 128000 ]
|
||||
default: 15
|
||||
|
||||
qcom,avg-samples:
|
||||
enum: [ 1, 2, 4, 8, 16 ]
|
||||
default: 1
|
||||
|
||||
examples:
|
||||
- |
|
||||
spmi_bus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
/* VADC node */
|
||||
pmic_vadc: adc@3100 {
|
||||
compatible = "qcom,spmi-vadc";
|
||||
reg = <0x3100>;
|
||||
interrupts = <0x0 0x31 0x0 0x1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
#io-channel-cells = <1>;
|
||||
io-channel-ranges;
|
||||
|
||||
/* Channel node */
|
||||
adc-chan@39 {
|
||||
reg = <0x39>;
|
||||
qcom,decimation = <512>;
|
||||
qcom,ratiometric;
|
||||
qcom,hw-settle-time = <200>;
|
||||
qcom,avg-samples = <1>;
|
||||
qcom,pre-scaling = <1 3>;
|
||||
};
|
||||
|
||||
adc-chan@9 {
|
||||
reg = <0x9>;
|
||||
};
|
||||
|
||||
adc-chan@a {
|
||||
reg = <0xa>;
|
||||
};
|
||||
|
||||
adc-chan@e {
|
||||
reg = <0xe>;
|
||||
};
|
||||
|
||||
adc-chan@f {
|
||||
reg = <0xf>;
|
||||
};
|
||||
};
|
||||
};
|
45
Documentation/devicetree/bindings/iio/adc/ti,ads8688.yaml
Normal file
45
Documentation/devicetree/bindings/iio/adc/ti,ads8688.yaml
Normal file
@ -0,0 +1,45 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/adc/ti,ads8688.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Texas Instruments' ADS8684 and ADS8688 ADC chip
|
||||
|
||||
maintainers:
|
||||
- Sean Nyekjaer <sean@geanix.com>
|
||||
|
||||
description: |
|
||||
SPI 16bit ADCs with 4/8 channels.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- ti,ads8684
|
||||
- ti,ads8688
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
vref-supply:
|
||||
description: Optional external reference. If not supplied, assume
|
||||
REFSEL input tied low to enable the internal reference.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
examples:
|
||||
- |
|
||||
spi {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
adc@0 {
|
||||
compatible = "ti,ads8688";
|
||||
reg = <0>;
|
||||
vref-supply = <&vdd_supply>;
|
||||
spi-max-frequency = <1000000>;
|
||||
};
|
||||
};
|
||||
...
|
@ -1,20 +0,0 @@
|
||||
* Texas Instruments' ADS8684 and ADS8688 ADC chip
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "ti,ads8684" or "ti,ads8688"
|
||||
- reg: spi chip select number for the device
|
||||
|
||||
Recommended properties:
|
||||
- spi-max-frequency: Definition as per
|
||||
Documentation/devicetree/bindings/spi/spi-bus.txt
|
||||
|
||||
Optional properties:
|
||||
- vref-supply: The regulator supply for ADC reference voltage
|
||||
|
||||
Example:
|
||||
adc@0 {
|
||||
compatible = "ti,ads8688";
|
||||
reg = <0>;
|
||||
vref-supply = <&vdd_supply>;
|
||||
spi-max-frequency = <1000000>;
|
||||
};
|
@ -0,0 +1,68 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/chemical/sensirion,scd30.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Sensirion SCD30 carbon dioxide sensor
|
||||
|
||||
maintainers:
|
||||
- Tomasz Duszynski <tomasz.duszynski@octakon.com>
|
||||
|
||||
description: |
|
||||
Air quality sensor capable of measuring co2 concentration, temperature
|
||||
and relative humidity.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- sensirion,scd30
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
vdd-supply: true
|
||||
|
||||
sensirion,sel-gpios:
|
||||
description: GPIO connected to the SEL line
|
||||
maxItems: 1
|
||||
|
||||
sensirion,pwm-gpios:
|
||||
description: GPIO connected to the PWM line
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
# include <dt-bindings/interrupt-controller/irq.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
co2-sensor@61 {
|
||||
compatible = "sensirion,scd30";
|
||||
reg = <0x61>;
|
||||
vdd-supply = <&vdd>;
|
||||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
};
|
||||
- |
|
||||
# include <dt-bindings/interrupt-controller/irq.h>
|
||||
serial {
|
||||
co2-sensor {
|
||||
compatible = "sensirion,scd30";
|
||||
vdd-supply = <&vdd>;
|
||||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
@ -6,7 +6,7 @@ Is is programmable through an SPI interface.
|
||||
|
||||
The internal DACs are loaded when the LOADDACS pin is pulled down.
|
||||
|
||||
http://www.ti.com/lit/ds/sbas106/sbas106.pdf
|
||||
https://www.ti.com/lit/ds/sbas106/sbas106.pdf
|
||||
|
||||
Required Properties:
|
||||
- compatible: Should be one of:
|
||||
|
@ -9,7 +9,7 @@ specifier is an array of one or more cells identifying the IIO
|
||||
output on a device. The length of an IIO specifier is defined by the
|
||||
value of a #io-channel-cells property in the IIO provider node.
|
||||
|
||||
[1] http://marc.info/?l=linux-iio&m=135902119507483&w=2
|
||||
[1] https://marc.info/?l=linux-iio&m=135902119507483&w=2
|
||||
|
||||
==IIO providers==
|
||||
|
||||
|
@ -37,6 +37,15 @@ properties:
|
||||
set if the specified interrupt pin should be configured as
|
||||
open drain. If not set, defaults to push-pull.
|
||||
|
||||
vdd-supply:
|
||||
description: provide VDD power to the sensor.
|
||||
|
||||
vddio-supply:
|
||||
description: provide VDD IO power to the sensor.
|
||||
|
||||
mount-matrix:
|
||||
description: an optional 3x3 mounting rotation matrix
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
@ -52,9 +61,14 @@ examples:
|
||||
bmi160@68 {
|
||||
compatible = "bosch,bmi160";
|
||||
reg = <0x68>;
|
||||
vdd-supply = <&pm8916_l17>;
|
||||
vddio-supply = <&pm8916_l6>;
|
||||
interrupt-parent = <&gpio4>;
|
||||
interrupts = <12 IRQ_TYPE_EDGE_RISING>;
|
||||
interrupt-names = "INT1";
|
||||
mount-matrix = "0", "1", "0",
|
||||
"-1", "0", "0",
|
||||
"0", "0", "1";
|
||||
};
|
||||
};
|
||||
- |
|
||||
|
@ -0,0 +1,90 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/imu/invensense,icm42600.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: InvenSense ICM-426xx Inertial Measurement Unit
|
||||
|
||||
maintainers:
|
||||
- Jean-Baptiste Maneyrol <jmaneyrol@invensense.com>
|
||||
|
||||
description: |
|
||||
6-axis MotionTracking device that combines a 3-axis gyroscope and a 3-axis
|
||||
accelerometer.
|
||||
|
||||
It has a configurable host interface that supports I3C, I2C and SPI serial
|
||||
communication, features a 2kB FIFO and 2 programmable interrupts with
|
||||
ultra-low-power wake-on-motion support to minimize system power consumption.
|
||||
|
||||
Other industry-leading features include InvenSense on-chip APEX Motion
|
||||
Processing engine for gesture recognition, activity classification, and
|
||||
pedometer, along with programmable digital filters, and an embedded
|
||||
temperature sensor.
|
||||
|
||||
https://invensense.tdk.com/wp-content/uploads/2020/03/DS-000292-ICM-42605-v1.4.pdf
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- invensense,icm42600
|
||||
- invensense,icm42602
|
||||
- invensense,icm42605
|
||||
- invensense,icm42622
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
drive-open-drain:
|
||||
type: boolean
|
||||
|
||||
vdd-supply:
|
||||
description: Regulator that provides power to the sensor
|
||||
|
||||
vddio-supply:
|
||||
description: Regulator that provides power to the bus
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
i2c0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
icm42605@68 {
|
||||
compatible = "invensense,icm42605";
|
||||
reg = <0x68>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
|
||||
vdd-supply = <&vdd>;
|
||||
vddio-supply = <&vddio>;
|
||||
};
|
||||
};
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
spi0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
icm42602@0 {
|
||||
compatible = "invensense,icm42602";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <24000000>;
|
||||
spi-cpha;
|
||||
spi-cpol;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
|
||||
vdd-supply = <&vdd>;
|
||||
vddio-supply = <&vddio>;
|
||||
};
|
||||
};
|
@ -1,6 +1,6 @@
|
||||
* Avago APDS9300 ambient light sensor
|
||||
|
||||
http://www.avagotech.com/docs/AV02-1077EN
|
||||
https://www.avagotech.com/docs/AV02-1077EN
|
||||
|
||||
Required properties:
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
* Avago APDS9960 gesture/RGB/ALS/proximity sensor
|
||||
|
||||
http://www.avagotech.com/docs/AV02-4191EN
|
||||
https://www.avagotech.com/docs/AV02-4191EN
|
||||
|
||||
Required properties:
|
||||
|
||||
|
@ -6,7 +6,7 @@ the optional generation of IIO events on rising/falling light threshold changes
|
||||
requires the use of interrupts. Without interrupts, only the simple reading
|
||||
of the current light value is supported through the IIO API.
|
||||
|
||||
http://www.ti.com/product/opt3001
|
||||
https://www.ti.com/product/opt3001
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "ti,opt3001"
|
||||
|
@ -1,6 +1,6 @@
|
||||
STMicro VL6180 - ALS, range and proximity sensor
|
||||
|
||||
Link to datasheet: http://www.st.com/resource/en/datasheet/vl6180x.pdf
|
||||
Link to datasheet: https://www.st.com/resource/en/datasheet/vl6180x.pdf
|
||||
|
||||
Required properties:
|
||||
|
||||
|
@ -1,30 +0,0 @@
|
||||
* AsahiKASEI AK8975 magnetometer sensor
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : should be "asahi-kasei,ak8975"
|
||||
- reg : the I2C address of the magnetometer
|
||||
|
||||
Optional properties:
|
||||
|
||||
- gpios : should be device tree identifier of the magnetometer DRDY pin
|
||||
- vdd-supply: an optional regulator that needs to be on to provide VDD
|
||||
- mount-matrix: an optional 3x3 mounting rotation matrix
|
||||
|
||||
Example:
|
||||
|
||||
ak8975@c {
|
||||
compatible = "asahi-kasei,ak8975";
|
||||
reg = <0x0c>;
|
||||
gpios = <&gpj0 7 0>;
|
||||
vdd-supply = <&ldo_3v3_gnss>;
|
||||
mount-matrix = "-0.984807753012208", /* x0 */
|
||||
"0", /* y0 */
|
||||
"-0.173648177666930", /* z0 */
|
||||
"0", /* x1 */
|
||||
"-1", /* y1 */
|
||||
"0", /* z1 */
|
||||
"-0.173648177666930", /* x2 */
|
||||
"0", /* y2 */
|
||||
"0.984807753012208"; /* z2 */
|
||||
};
|
@ -0,0 +1,83 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/iio/magnetometer/asahi-kasei,ak8975.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: AsahiKASEI AK8975 magnetometer sensor
|
||||
|
||||
maintainers:
|
||||
- Jonathan Albrieux <jonathan.albrieux@gmail.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- enum:
|
||||
- asahi-kasei,ak8975
|
||||
- asahi-kasei,ak8963
|
||||
- asahi-kasei,ak09911
|
||||
- asahi-kasei,ak09912
|
||||
- enum:
|
||||
- ak8975
|
||||
- ak8963
|
||||
- ak09911
|
||||
- ak09912
|
||||
deprecated: true
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
gpios:
|
||||
maxItems: 1
|
||||
description: |
|
||||
AK8975 has a "Data ready" pin (DRDY) which informs that data
|
||||
is ready to be read and is possible to listen on it. If used,
|
||||
this should be active high. Prefer interrupt over this.
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
description: interrupt for DRDY pin. Triggered on rising edge.
|
||||
|
||||
vdd-supply:
|
||||
description: |
|
||||
an optional regulator that needs to be on to provide VDD power to
|
||||
the sensor.
|
||||
|
||||
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
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
magnetometer@c {
|
||||
compatible = "asahi-kasei,ak8975";
|
||||
reg = <0x0c>;
|
||||
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 */
|
||||
"0", /* x1 */
|
||||
"-1", /* y1 */
|
||||
"0", /* z1 */
|
||||
"-0.173648177666930", /* x2 */
|
||||
"0", /* y2 */
|
||||
"0.984807753012208"; /* z2 */
|
||||
};
|
||||
};
|
@ -4,7 +4,11 @@ http://ae-bst.resource.bosch.com/media/products/dokumente/bmc150/BST-BMC150-DS00
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : should be "bosch,bmc150_magn"
|
||||
- compatible : should be one of:
|
||||
"bosch,bmc150_magn"
|
||||
"bosch,bmc156_magn"
|
||||
"bosch,bmm150"
|
||||
"bosch,bmm150_magn" (DEPRECATED, use bosch,bmm150)
|
||||
- reg : the I2C address of the magnetometer
|
||||
|
||||
Optional properties:
|
||||
|
@ -1,7 +1,7 @@
|
||||
* Microchip MCP41010/41050/41100/42010/42050/42100 Digital Potentiometer
|
||||
|
||||
Datasheet publicly available at:
|
||||
http://ww1.microchip.com/downloads/en/devicedoc/11195c.pdf
|
||||
https://ww1.microchip.com/downloads/en/devicedoc/11195c.pdf
|
||||
|
||||
The node for this driver must be a child node of a SPI controller, hence
|
||||
all mandatory properties described in
|
||||
|
@ -1,7 +1,7 @@
|
||||
* Texas Instruments LMP91000 series of potentiostats
|
||||
|
||||
LMP91000: http://www.ti.com/lit/ds/symlink/lmp91000.pdf
|
||||
LMP91002: http://www.ti.com/lit/ds/symlink/lmp91002.pdf
|
||||
LMP91000: https://www.ti.com/lit/ds/symlink/lmp91000.pdf
|
||||
LMP91002: https://www.ti.com/lit/ds/symlink/lmp91002.pdf
|
||||
|
||||
Required properties:
|
||||
|
||||
|
@ -13,7 +13,7 @@ description: |
|
||||
Bindings for the All Sensors DLH series pressure sensors.
|
||||
|
||||
Specifications about the sensors can be found at:
|
||||
http://www.allsensors.com/cad/DS-0355_Rev_B.PDF
|
||||
https://www.allsensors.com/cad/DS-0355_Rev_B.PDF
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
|
@ -17,9 +17,9 @@ description: |
|
||||
until it is received once again
|
||||
|
||||
Specifications about the devices can be found at:
|
||||
http://www.robot-electronics.co.uk/htm/srf04tech.htm
|
||||
https://www.robot-electronics.co.uk/htm/srf04tech.htm
|
||||
|
||||
http://www.maxbotix.com/documents/LV-MaxSonar-EZ_Datasheet.pdf
|
||||
https://www.maxbotix.com/documents/LV-MaxSonar-EZ_Datasheet.pdf
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
|
@ -35,9 +35,11 @@ properties:
|
||||
description: label associated with this uart
|
||||
|
||||
st,hw-flow-ctrl:
|
||||
description: enable hardware flow control
|
||||
description: enable hardware flow control (deprecated)
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
|
||||
uart-has-rtscts: true
|
||||
|
||||
dmas:
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
|
@ -52,14 +52,20 @@ properties:
|
||||
|
||||
patternProperties:
|
||||
"^timer@[0-2]$":
|
||||
description: The timer block channels that are used as timers.
|
||||
description: The timer block channels that are used as timers or counters.
|
||||
type: object
|
||||
properties:
|
||||
compatible:
|
||||
const: atmel,tcb-timer
|
||||
items:
|
||||
- enum:
|
||||
- atmel,tcb-timer
|
||||
- microchip,tcb-capture
|
||||
reg:
|
||||
description:
|
||||
List of channels to use for this particular timer.
|
||||
List of channels to use for this particular timer. In Microchip TCB capture
|
||||
mode channels are registered as a counter devices, for the qdec mode TCB0's
|
||||
channel <0> and <1> are required.
|
||||
|
||||
minItems: 1
|
||||
maxItems: 3
|
||||
|
||||
@ -153,3 +159,23 @@ examples:
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
/* TCB0 Capture with QDEC: */
|
||||
timer@f800c000 {
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfff7c000 0x100>;
|
||||
interrupts = <18 4>;
|
||||
clocks = <&tcb0_clk>, <&clk32k>;
|
||||
clock-names = "t0_clk", "slow_clk";
|
||||
|
||||
timer@0 {
|
||||
compatible = "microchip,tcb-capture";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
@ -1,9 +1,9 @@
|
||||
Analog Devices ADAU1977/ADAU1978/ADAU1979
|
||||
|
||||
Datasheets:
|
||||
http://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1977.pdf
|
||||
http://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1978.pdf
|
||||
http://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1979.pdf
|
||||
https://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1977.pdf
|
||||
https://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1978.pdf
|
||||
https://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1979.pdf
|
||||
|
||||
This driver supports both the I2C and SPI bus.
|
||||
|
||||
|
@ -1,27 +0,0 @@
|
||||
AK4613 I2C transmitter
|
||||
|
||||
This device supports I2C mode only.
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : "asahi-kasei,ak4613"
|
||||
- reg : The chip select number on the I2C bus
|
||||
|
||||
Optional properties:
|
||||
- asahi-kasei,in1-single-end : Boolean. Indicate input / output pins are single-ended.
|
||||
- asahi-kasei,in2-single-end rather than differential.
|
||||
- asahi-kasei,out1-single-end
|
||||
- asahi-kasei,out2-single-end
|
||||
- asahi-kasei,out3-single-end
|
||||
- asahi-kasei,out4-single-end
|
||||
- asahi-kasei,out5-single-end
|
||||
- asahi-kasei,out6-single-end
|
||||
|
||||
Example:
|
||||
|
||||
&i2c {
|
||||
ak4613: ak4613@10 {
|
||||
compatible = "asahi-kasei,ak4613";
|
||||
reg = <0x10>;
|
||||
};
|
||||
};
|
49
Documentation/devicetree/bindings/sound/ak4613.yaml
Normal file
49
Documentation/devicetree/bindings/sound/ak4613.yaml
Normal file
@ -0,0 +1,49 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/ak4613.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: AK4613 I2C transmitter Device Tree Bindings
|
||||
|
||||
maintainers:
|
||||
- Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: asahi-kasei,ak4613
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
|
||||
"#sound-dai-cells":
|
||||
const: 0
|
||||
|
||||
patternProperties:
|
||||
"^asahi-kasei,in[1-2]-single-end$":
|
||||
description: Input Pin 1 - 2.
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
|
||||
"^asahi-kasei,out[1-6]-single-end$":
|
||||
description: Output Pin 1 - 6.
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
ak4613: codec@10 {
|
||||
compatible = "asahi-kasei,ak4613";
|
||||
reg = <0x10>;
|
||||
};
|
||||
};
|
@ -1,37 +0,0 @@
|
||||
AK4642 I2C transmitter
|
||||
|
||||
This device supports I2C mode only.
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : "asahi-kasei,ak4642" or "asahi-kasei,ak4643" or "asahi-kasei,ak4648"
|
||||
- reg : The chip select number on the I2C bus
|
||||
|
||||
Optional properties:
|
||||
|
||||
- #clock-cells : common clock binding; shall be set to 0
|
||||
- clocks : common clock binding; MCKI clock
|
||||
- clock-frequency : common clock binding; frequency of MCKO
|
||||
- clock-output-names : common clock binding; MCKO clock name
|
||||
|
||||
Example 1:
|
||||
|
||||
&i2c {
|
||||
ak4648: ak4648@12 {
|
||||
compatible = "asahi-kasei,ak4642";
|
||||
reg = <0x12>;
|
||||
};
|
||||
};
|
||||
|
||||
Example 2:
|
||||
|
||||
&i2c {
|
||||
ak4643: codec@12 {
|
||||
compatible = "asahi-kasei,ak4643";
|
||||
reg = <0x12>;
|
||||
#clock-cells = <0>;
|
||||
clocks = <&audio_clock>;
|
||||
clock-frequency = <12288000>;
|
||||
clock-output-names = "ak4643_mcko";
|
||||
};
|
||||
};
|
58
Documentation/devicetree/bindings/sound/ak4642.yaml
Normal file
58
Documentation/devicetree/bindings/sound/ak4642.yaml
Normal file
@ -0,0 +1,58 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/ak4642.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: AK4642 I2C transmitter Device Tree Bindings
|
||||
|
||||
maintainers:
|
||||
- Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- asahi-kasei,ak4642
|
||||
- asahi-kasei,ak4643
|
||||
- asahi-kasei,ak4648
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
"#clock-cells":
|
||||
const: 0
|
||||
"#sound-dai-cells":
|
||||
const: 0
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
|
||||
clock-frequency:
|
||||
description: common clock binding; frequency of MCKO
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
clock-output-names:
|
||||
description: common clock name
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
ak4643: codec@12 {
|
||||
compatible = "asahi-kasei,ak4643";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x12>;
|
||||
#clock-cells = <0>;
|
||||
clocks = <&audio_clock>;
|
||||
clock-frequency = <12288000>;
|
||||
clock-output-names = "ak4643_mcko";
|
||||
};
|
||||
};
|
@ -1,23 +0,0 @@
|
||||
Everest ES8316 audio CODEC
|
||||
|
||||
This device supports both I2C and SPI.
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : should be "everest,es8316"
|
||||
- reg : the I2C address of the device for I2C
|
||||
|
||||
Optional properties:
|
||||
|
||||
- clocks : a list of phandle, should contain entries for clock-names
|
||||
- clock-names : should include as follows:
|
||||
"mclk" : master clock (MCLK) of the device
|
||||
|
||||
Example:
|
||||
|
||||
es8316: codec@11 {
|
||||
compatible = "everest,es8316";
|
||||
reg = <0x11>;
|
||||
clocks = <&clks 10>;
|
||||
clock-names = "mclk";
|
||||
};
|
50
Documentation/devicetree/bindings/sound/everest,es8316.yaml
Normal file
50
Documentation/devicetree/bindings/sound/everest,es8316.yaml
Normal file
@ -0,0 +1,50 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/everest,es8316.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Everest ES8316 audio CODEC
|
||||
|
||||
maintainers:
|
||||
- Daniel Drake <drake@endlessm.com>
|
||||
- Katsuhiro Suzuki <katsuhiro@katsuster.net>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: everest,es8316
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: clock for master clock (MCLK)
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: mclk
|
||||
|
||||
"#sound-dai-cells":
|
||||
const: 0
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- "#sound-dai-cells"
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
es8316: codec@11 {
|
||||
compatible = "everest,es8316";
|
||||
reg = <0x11>;
|
||||
clocks = <&clks 10>;
|
||||
clock-names = "mclk";
|
||||
#sound-dai-cells = <0>;
|
||||
};
|
||||
};
|
@ -6,7 +6,11 @@ a fibre cable.
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : Compatible list, must contain "fsl,imx35-spdif".
|
||||
- compatible : Compatible list, should contain one of the following
|
||||
compatibles:
|
||||
"fsl,imx35-spdif",
|
||||
"fsl,vf610-spdif",
|
||||
"fsl,imx6sx-spdif",
|
||||
|
||||
- reg : Offset and length of the register set for the device.
|
||||
|
||||
|
@ -34,6 +34,10 @@ The compatible list for this generic sound card currently:
|
||||
|
||||
"fsl,imx-audio-wm8960"
|
||||
|
||||
"fsl,imx-audio-mqs"
|
||||
|
||||
"fsl,imx-audio-wm8524"
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : Contains one of entries in the compatible list.
|
||||
@ -44,6 +48,11 @@ Required properties:
|
||||
|
||||
- audio-codec : The phandle of an audio codec
|
||||
|
||||
Optional properties:
|
||||
|
||||
- audio-asrc : The phandle of ASRC. It can be absent if there's no
|
||||
need to add ASRC support via DPCM.
|
||||
|
||||
- audio-routing : A list of the connections between audio components.
|
||||
Each entry is a pair of strings, the first being the
|
||||
connection's sink, the second being the connection's
|
||||
@ -60,10 +69,13 @@ Required properties:
|
||||
coexisting in order to support the old bindings
|
||||
of wm8962 and sgtl5000.
|
||||
|
||||
Optional properties:
|
||||
|
||||
- audio-asrc : The phandle of ASRC. It can be absent if there's no
|
||||
need to add ASRC support via DPCM.
|
||||
- hp-det-gpio : The GPIO that detect headphones are plugged in
|
||||
- mic-det-gpio : The GPIO that detect microphones are plugged in
|
||||
- bitclock-master : Indicates dai-link bit clock master; for details see simple-card.yaml.
|
||||
- frame-master : Indicates dai-link frame master; for details see simple-card.yaml.
|
||||
- dai-format : audio format, for details see simple-card.yaml.
|
||||
- frame-inversion : dai-link uses frame clock inversion, for details see simple-card.yaml.
|
||||
- bitclock-inversion : dai-link uses bit clock inversion, for details see simple-card.yaml.
|
||||
|
||||
Optional unless SSI is selected as a CPU DAI:
|
||||
|
||||
|
@ -0,0 +1,70 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
# Copyright 2020 Intel Corporation
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/intel,keembay-i2s.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Intel KeemBay I2S Device Tree Bindings
|
||||
|
||||
maintainers:
|
||||
- Sia, Jee Heng <jee.heng.sia@intel.com>
|
||||
|
||||
description: |
|
||||
Intel KeemBay I2S
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- intel,keembay-i2s
|
||||
|
||||
"#sound-dai-cells":
|
||||
const: 0
|
||||
|
||||
reg:
|
||||
items:
|
||||
- description: I2S registers
|
||||
- description: I2S gen configuration
|
||||
|
||||
reg-names:
|
||||
items:
|
||||
- const: i2s-regs
|
||||
- const: i2s_gen_cfg
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: Bus Clock
|
||||
- description: Module Clock
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: osc
|
||||
- const: apb_clk
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- "#sound-dai-cells"
|
||||
- reg
|
||||
- clocks
|
||||
- clock-names
|
||||
- interrupts
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#define KEEM_BAY_PSS_AUX_I2S3
|
||||
#define KEEM_BAY_PSS_I2S3
|
||||
i2s3: i2s@20140000 {
|
||||
compatible = "intel,keembay-i2s";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x20140000 0x200>, /* I2S registers */
|
||||
<0x202a00a4 0x4>; /* I2S gen configuration */
|
||||
reg-names = "i2s-regs", "i2s_gen_cfg";
|
||||
interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clock-names = "osc", "apb_clk";
|
||||
clocks = <&scmi_clk KEEM_BAY_PSS_AUX_I2S3>, <&scmi_clk KEEM_BAY_PSS_I2S3>;
|
||||
};
|
@ -1,9 +1,10 @@
|
||||
Maxim MAX98357A audio DAC
|
||||
Maxim MAX98357A/MAX98360A audio DAC
|
||||
|
||||
This node models the Maxim MAX98357A DAC.
|
||||
This node models the Maxim MAX98357A/MAX98360A DAC.
|
||||
|
||||
Required properties:
|
||||
- compatible : "maxim,max98357a"
|
||||
- compatible : "maxim,max98357a" for MAX98357A.
|
||||
"maxim,max98360a" for MAX98360A.
|
||||
|
||||
Optional properties:
|
||||
- sdmode-gpios : GPIO specifier for the chip's SD_MODE pin.
|
||||
@ -20,3 +21,8 @@ max98357a {
|
||||
compatible = "maxim,max98357a";
|
||||
sdmode-gpios = <&qcom_pinmux 25 0>;
|
||||
};
|
||||
|
||||
max98360a {
|
||||
compatible = "maxim,max98360a";
|
||||
sdmode-gpios = <&qcom_pinmux 25 0>;
|
||||
};
|
||||
|
51
Documentation/devicetree/bindings/sound/maxim,max98390.yaml
Normal file
51
Documentation/devicetree/bindings/sound/maxim,max98390.yaml
Normal file
@ -0,0 +1,51 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/maxim,max98390.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Maxim Integrated MAX98390 Speaker Amplifier with Integrated Dynamic Speaker Management
|
||||
|
||||
maintainers:
|
||||
- Steve Lee <steves.lee@maximintegrated.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: maxim,max98390
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
description: I2C address of the device.
|
||||
|
||||
maxim,temperature_calib:
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: The calculated temperature data was measured while doing the calibration.
|
||||
minimum: 0
|
||||
maximum: 65535
|
||||
|
||||
maxim,r0_calib:
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: This is r0 calibration data which was measured in factory mode.
|
||||
minimum: 1
|
||||
maximum: 8388607
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
max98390: amplifier@38 {
|
||||
compatible = "maxim,max98390";
|
||||
reg = <0x38>;
|
||||
maxim,temperature_calib = <1024>;
|
||||
maxim,r0_calib = <100232>;
|
||||
};
|
||||
};
|
@ -10,9 +10,15 @@ Required properties:
|
||||
- compatible : "mediatek,mt6358-sound".
|
||||
- Avdd-supply : power source of AVDD
|
||||
|
||||
Optional properties:
|
||||
- mediatek,dmic-mode : Indicates how many data pins are used to transmit two
|
||||
channels of PDM signal. 0 means two wires, 1 means one wire. Default
|
||||
value is 0.
|
||||
|
||||
Example:
|
||||
|
||||
mt6358_snd {
|
||||
compatible = "mediatek,mt6358-sound";
|
||||
Avdd-supply = <&mt6358_vaud28_reg>;
|
||||
mediatek,dmic-mode = <0>;
|
||||
};
|
||||
|
@ -1,15 +1,20 @@
|
||||
MT8183 with MT6358, DA7219 and MAX98357 CODECS
|
||||
MT8183 with MT6358, DA7219, MAX98357, and RT1015 CODECS
|
||||
|
||||
Required properties:
|
||||
- compatible : "mediatek,mt8183_da7219_max98357"
|
||||
- compatible : "mediatek,mt8183_da7219_max98357" for MAX98357A codec
|
||||
"mediatek,mt8183_da7219_rt1015" for RT1015 codec
|
||||
- mediatek,headset-codec: the phandles of da7219 codecs
|
||||
- mediatek,platform: the phandle of MT8183 ASoC platform
|
||||
|
||||
Optional properties:
|
||||
- mediatek,hdmi-codec: the phandles of HDMI codec
|
||||
|
||||
Example:
|
||||
|
||||
sound {
|
||||
compatible = "mediatek,mt8183_da7219_max98357";
|
||||
mediatek,headset-codec = <&da7219>;
|
||||
mediatek,hdmi-codec = <&it6505dptx>;
|
||||
mediatek,platform = <&afe>;
|
||||
};
|
||||
|
||||
|
@ -1,13 +1,16 @@
|
||||
MT8183 with MT6358, TS3A227 and MAX98357 CODECS
|
||||
MT8183 with MT6358, TS3A227, MAX98357, and RT1015 CODECS
|
||||
|
||||
Required properties:
|
||||
- compatible : "mediatek,mt8183_mt6358_ts3a227_max98357"
|
||||
- compatible : "mediatek,mt8183_mt6358_ts3a227_max98357" for MAX98357A codec
|
||||
"mediatek,mt8183_mt6358_ts3a227_max98357b" for MAX98357B codec
|
||||
"mediatek,mt8183_mt6358_ts3a227_rt1015" for RT1015 codec
|
||||
- mediatek,platform: the phandle of MT8183 ASoC platform
|
||||
|
||||
Optional properties:
|
||||
- mediatek,headset-codec: the phandles of ts3a227 codecs
|
||||
- mediatek,ec-codec: the phandle of EC codecs.
|
||||
See google,cros-ec-codec.txt for more details.
|
||||
- mediatek,hdmi-codec: the phandles of HDMI codec
|
||||
|
||||
Example:
|
||||
|
||||
@ -15,6 +18,7 @@ Example:
|
||||
compatible = "mediatek,mt8183_mt6358_ts3a227_max98357";
|
||||
mediatek,headset-codec = <&ts3a227>;
|
||||
mediatek,ec-codec = <&ec_codec>;
|
||||
mediatek,hdmi-codec = <&it6505dptx>;
|
||||
mediatek,platform = <&afe>;
|
||||
};
|
||||
|
||||
|
@ -0,0 +1,83 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/nvidia,tegra186-dspk.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Tegra186 DSPK Controller Device Tree Bindings
|
||||
|
||||
description: |
|
||||
The Digital Speaker Controller (DSPK) can be viewed as a Pulse
|
||||
Density Modulation (PDM) transmitter that up-samples the input to
|
||||
the desired sampling rate by interpolation and then converts the
|
||||
over sampled Pulse Code Modulation (PCM) input to the desired 1-bit
|
||||
output via Delta Sigma Modulation (DSM).
|
||||
|
||||
maintainers:
|
||||
- Jon Hunter <jonathanh@nvidia.com>
|
||||
- Sameer Pujar <spujar@nvidia.com>
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^dspk@[0-9a-f]*$"
|
||||
|
||||
compatible:
|
||||
oneOf:
|
||||
- const: nvidia,tegra186-dspk
|
||||
- items:
|
||||
- const: nvidia,tegra194-dspk
|
||||
- const: nvidia,tegra186-dspk
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
|
||||
clock-names:
|
||||
const: dspk
|
||||
|
||||
assigned-clocks:
|
||||
maxItems: 1
|
||||
|
||||
assigned-clock-parents:
|
||||
maxItems: 1
|
||||
|
||||
assigned-clock-rates:
|
||||
maxItems: 1
|
||||
|
||||
sound-name-prefix:
|
||||
pattern: "^DSPK[1-9]$"
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/string
|
||||
description:
|
||||
Used as prefix for sink/source names of the component. Must be a
|
||||
unique string among multiple instances of the same component.
|
||||
The name can be "DSPK1" or "DSPKx", where x depends on the maximum
|
||||
available instances on a Tegra SoC.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- clocks
|
||||
- clock-names
|
||||
- assigned-clocks
|
||||
- assigned-clock-parents
|
||||
- sound-name-prefix
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include<dt-bindings/clock/tegra186-clock.h>
|
||||
|
||||
dspk@2905000 {
|
||||
compatible = "nvidia,tegra186-dspk";
|
||||
reg = <0x2905000 0x100>;
|
||||
clocks = <&bpmp TEGRA186_CLK_DSPK1>;
|
||||
clock-names = "dspk";
|
||||
assigned-clocks = <&bpmp TEGRA186_CLK_DSPK1>;
|
||||
assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>;
|
||||
assigned-clock-rates = <12288000>;
|
||||
sound-name-prefix = "DSPK1";
|
||||
};
|
||||
|
||||
...
|
@ -0,0 +1,111 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/nvidia,tegra210-admaif.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Tegra210 ADMAIF Device Tree Bindings
|
||||
|
||||
description: |
|
||||
ADMAIF is the interface between ADMA and AHUB. Each ADMA channel
|
||||
that sends/receives data to/from AHUB must interface through an
|
||||
ADMAIF channel. ADMA channel sending data to AHUB pairs with ADMAIF
|
||||
Tx channel and ADMA channel receiving data from AHUB pairs with
|
||||
ADMAIF Rx channel.
|
||||
|
||||
maintainers:
|
||||
- Jon Hunter <jonathanh@nvidia.com>
|
||||
- Sameer Pujar <spujar@nvidia.com>
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^admaif@[0-9a-f]*$"
|
||||
|
||||
compatible:
|
||||
oneOf:
|
||||
- enum:
|
||||
- nvidia,tegra210-admaif
|
||||
- nvidia,tegra186-admaif
|
||||
- items:
|
||||
- const: nvidia,tegra194-admaif
|
||||
- const: nvidia,tegra186-admaif
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
dmas: true
|
||||
|
||||
dma-names: true
|
||||
|
||||
if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: nvidia,tegra210-admaif
|
||||
|
||||
then:
|
||||
properties:
|
||||
dmas:
|
||||
description:
|
||||
DMA channel specifiers, equally divided for Tx and Rx.
|
||||
minItems: 1
|
||||
maxItems: 20
|
||||
dma-names:
|
||||
items:
|
||||
pattern: "^[rt]x(10|[1-9])$"
|
||||
description:
|
||||
Should be "rx1", "rx2" ... "rx10" for DMA Rx channel
|
||||
Should be "tx1", "tx2" ... "tx10" for DMA Tx channel
|
||||
minItems: 1
|
||||
maxItems: 20
|
||||
|
||||
else:
|
||||
properties:
|
||||
dmas:
|
||||
description:
|
||||
DMA channel specifiers, equally divided for Tx and Rx.
|
||||
minItems: 1
|
||||
maxItems: 40
|
||||
dma-names:
|
||||
items:
|
||||
pattern: "^[rt]x(1[0-9]|[1-9]|20)$"
|
||||
description:
|
||||
Should be "rx1", "rx2" ... "rx20" for DMA Rx channel
|
||||
Should be "tx1", "tx2" ... "tx20" for DMA Tx channel
|
||||
minItems: 1
|
||||
maxItems: 40
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- dmas
|
||||
- dma-names
|
||||
|
||||
examples:
|
||||
- |
|
||||
admaif@702d0000 {
|
||||
compatible = "nvidia,tegra210-admaif";
|
||||
reg = <0x702d0000 0x800>;
|
||||
dmas = <&adma 1>, <&adma 1>,
|
||||
<&adma 2>, <&adma 2>,
|
||||
<&adma 3>, <&adma 3>,
|
||||
<&adma 4>, <&adma 4>,
|
||||
<&adma 5>, <&adma 5>,
|
||||
<&adma 6>, <&adma 6>,
|
||||
<&adma 7>, <&adma 7>,
|
||||
<&adma 8>, <&adma 8>,
|
||||
<&adma 9>, <&adma 9>,
|
||||
<&adma 10>, <&adma 10>;
|
||||
dma-names = "rx1", "tx1",
|
||||
"rx2", "tx2",
|
||||
"rx3", "tx3",
|
||||
"rx4", "tx4",
|
||||
"rx5", "tx5",
|
||||
"rx6", "tx6",
|
||||
"rx7", "tx7",
|
||||
"rx8", "tx8",
|
||||
"rx9", "tx9",
|
||||
"rx10", "tx10";
|
||||
};
|
||||
|
||||
...
|
@ -0,0 +1,136 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/nvidia,tegra210-ahub.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Tegra210 AHUB Device Tree Bindings
|
||||
|
||||
description: |
|
||||
The Audio Hub (AHUB) comprises a collection of hardware accelerators
|
||||
for audio pre-processing, post-processing and a programmable full
|
||||
crossbar for routing audio data across these accelerators. It has
|
||||
external interfaces such as I2S, DMIC, DSPK. It interfaces with ADMA
|
||||
engine through ADMAIF.
|
||||
|
||||
maintainers:
|
||||
- Jon Hunter <jonathanh@nvidia.com>
|
||||
- Sameer Pujar <spujar@nvidia.com>
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^ahub@[0-9a-f]*$"
|
||||
|
||||
compatible:
|
||||
oneOf:
|
||||
- enum:
|
||||
- nvidia,tegra210-ahub
|
||||
- nvidia,tegra186-ahub
|
||||
- items:
|
||||
- const: nvidia,tegra194-ahub
|
||||
- const: nvidia,tegra186-ahub
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
|
||||
clock-names:
|
||||
const: ahub
|
||||
|
||||
assigned-clocks:
|
||||
maxItems: 1
|
||||
|
||||
assigned-clock-parents:
|
||||
maxItems: 1
|
||||
|
||||
assigned-clock-rates:
|
||||
maxItems: 1
|
||||
|
||||
"#address-cells":
|
||||
const: 1
|
||||
|
||||
"#size-cells":
|
||||
const: 1
|
||||
|
||||
ranges: true
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- clocks
|
||||
- clock-names
|
||||
- assigned-clocks
|
||||
- assigned-clock-parents
|
||||
- "#address-cells"
|
||||
- "#size-cells"
|
||||
- ranges
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include<dt-bindings/clock/tegra210-car.h>
|
||||
|
||||
ahub@702d0800 {
|
||||
compatible = "nvidia,tegra210-ahub";
|
||||
reg = <0x702d0800 0x800>;
|
||||
clocks = <&tegra_car TEGRA210_CLK_D_AUDIO>;
|
||||
clock-names = "ahub";
|
||||
assigned-clocks = <&tegra_car TEGRA210_CLK_D_AUDIO>;
|
||||
assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges = <0x702d0000 0x702d0000 0x0000e400>;
|
||||
|
||||
// All AHUB child nodes below
|
||||
admaif@702d0000 {
|
||||
compatible = "nvidia,tegra210-admaif";
|
||||
reg = <0x702d0000 0x800>;
|
||||
dmas = <&adma 1>, <&adma 1>,
|
||||
<&adma 2>, <&adma 2>,
|
||||
<&adma 3>, <&adma 3>,
|
||||
<&adma 4>, <&adma 4>,
|
||||
<&adma 5>, <&adma 5>,
|
||||
<&adma 6>, <&adma 6>,
|
||||
<&adma 7>, <&adma 7>,
|
||||
<&adma 8>, <&adma 8>,
|
||||
<&adma 9>, <&adma 9>,
|
||||
<&adma 10>, <&adma 10>;
|
||||
dma-names = "rx1", "tx1",
|
||||
"rx2", "tx2",
|
||||
"rx3", "tx3",
|
||||
"rx4", "tx4",
|
||||
"rx5", "tx5",
|
||||
"rx6", "tx6",
|
||||
"rx7", "tx7",
|
||||
"rx8", "tx8",
|
||||
"rx9", "tx9",
|
||||
"rx10", "tx10";
|
||||
};
|
||||
|
||||
i2s@702d1000 {
|
||||
compatible = "nvidia,tegra210-i2s";
|
||||
reg = <0x702d1000 0x100>;
|
||||
clocks = <&tegra_car TEGRA210_CLK_I2S0>;
|
||||
clock-names = "i2s";
|
||||
assigned-clocks = <&tegra_car TEGRA210_CLK_I2S0>;
|
||||
assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>;
|
||||
assigned-clock-rates = <1536000>;
|
||||
sound-name-prefix = "I2S1";
|
||||
};
|
||||
|
||||
dmic@702d4000 {
|
||||
compatible = "nvidia,tegra210-dmic";
|
||||
reg = <0x702d4000 0x100>;
|
||||
clocks = <&tegra_car TEGRA210_CLK_DMIC1>;
|
||||
clock-names = "dmic";
|
||||
assigned-clocks = <&tegra_car TEGRA210_CLK_DMIC1>;
|
||||
assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>;
|
||||
assigned-clock-rates = <3072000>;
|
||||
sound-name-prefix = "DMIC1";
|
||||
};
|
||||
|
||||
// More child nodes to follow
|
||||
};
|
||||
|
||||
...
|
@ -0,0 +1,83 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/nvidia,tegra210-dmic.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Tegra210 DMIC Controller Device Tree Bindings
|
||||
|
||||
description: |
|
||||
The Digital MIC (DMIC) Controller is used to interface with Pulse
|
||||
Density Modulation (PDM) input devices. It converts PDM signals to
|
||||
Pulse Coded Modulation (PCM) signals. DMIC can be viewed as a PDM
|
||||
receiver.
|
||||
|
||||
maintainers:
|
||||
- Jon Hunter <jonathanh@nvidia.com>
|
||||
- Sameer Pujar <spujar@nvidia.com>
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^dmic@[0-9a-f]*$"
|
||||
|
||||
compatible:
|
||||
oneOf:
|
||||
- const: nvidia,tegra210-dmic
|
||||
- items:
|
||||
- enum:
|
||||
- nvidia,tegra194-dmic
|
||||
- nvidia,tegra186-dmic
|
||||
- const: nvidia,tegra210-dmic
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
|
||||
clock-names:
|
||||
const: dmic
|
||||
|
||||
assigned-clocks:
|
||||
maxItems: 1
|
||||
|
||||
assigned-clock-parents:
|
||||
maxItems: 1
|
||||
|
||||
assigned-clock-rates:
|
||||
maxItems: 1
|
||||
|
||||
sound-name-prefix:
|
||||
pattern: "^DMIC[1-9]$"
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/string
|
||||
description:
|
||||
used as prefix for sink/source names of the component. Must be a
|
||||
unique string among multiple instances of the same component.
|
||||
The name can be "DMIC1" or "DMIC2" ... "DMICx", where x depends
|
||||
on the maximum available instances on a Tegra SoC.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- clocks
|
||||
- clock-names
|
||||
- assigned-clocks
|
||||
- assigned-clock-parents
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include<dt-bindings/clock/tegra210-car.h>
|
||||
|
||||
dmic@702d4000 {
|
||||
compatible = "nvidia,tegra210-dmic";
|
||||
reg = <0x702d4000 0x100>;
|
||||
clocks = <&tegra_car TEGRA210_CLK_DMIC1>;
|
||||
clock-names = "dmic";
|
||||
assigned-clocks = <&tegra_car TEGRA210_CLK_DMIC1>;
|
||||
assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>;
|
||||
assigned-clock-rates = <3072000>;
|
||||
sound-name-prefix = "DMIC1";
|
||||
};
|
||||
|
||||
...
|
101
Documentation/devicetree/bindings/sound/nvidia,tegra210-i2s.yaml
Normal file
101
Documentation/devicetree/bindings/sound/nvidia,tegra210-i2s.yaml
Normal file
@ -0,0 +1,101 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/nvidia,tegra210-i2s.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Tegra210 I2S Controller Device Tree Bindings
|
||||
|
||||
description: |
|
||||
The Inter-IC Sound (I2S) controller implements full-duplex,
|
||||
bi-directional and single direction point-to-point serial
|
||||
interfaces. It can interface with I2S compatible devices.
|
||||
I2S controller can operate both in master and slave mode.
|
||||
|
||||
maintainers:
|
||||
- Jon Hunter <jonathanh@nvidia.com>
|
||||
- Sameer Pujar <spujar@nvidia.com>
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^i2s@[0-9a-f]*$"
|
||||
|
||||
compatible:
|
||||
oneOf:
|
||||
- const: nvidia,tegra210-i2s
|
||||
- items:
|
||||
- enum:
|
||||
- nvidia,tegra194-i2s
|
||||
- nvidia,tegra186-i2s
|
||||
- const: nvidia,tegra210-i2s
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
items:
|
||||
- description: I2S bit clock
|
||||
- description:
|
||||
Sync input clock, which can act as clock source to other I/O
|
||||
modules in AHUB. The Tegra I2S driver sets this clock rate as
|
||||
per bit clock rate. I/O module which wants to use this clock
|
||||
as source, can mention this clock as parent in the DT bindings.
|
||||
This is an optional clock entry, since it is only required when
|
||||
some other I/O wants to reference from a particular I2Sx
|
||||
instance.
|
||||
|
||||
clock-names:
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
items:
|
||||
- const: i2s
|
||||
- const: sync_input
|
||||
|
||||
assigned-clocks:
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
|
||||
assigned-clock-parents:
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
|
||||
assigned-clock-rates:
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
|
||||
sound-name-prefix:
|
||||
pattern: "^I2S[1-9]$"
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/string
|
||||
description:
|
||||
Used as prefix for sink/source names of the component. Must be a
|
||||
unique string among multiple instances of the same component.
|
||||
The name can be "I2S1" or "I2S2" ... "I2Sx", where x depends
|
||||
on the maximum available instances on a Tegra SoC.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- clocks
|
||||
- clock-names
|
||||
- assigned-clocks
|
||||
- assigned-clock-parents
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include<dt-bindings/clock/tegra210-car.h>
|
||||
|
||||
i2s@702d1000 {
|
||||
compatible = "nvidia,tegra210-i2s";
|
||||
reg = <0x702d1000 0x100>;
|
||||
clocks = <&tegra_car TEGRA210_CLK_I2S0>;
|
||||
clock-names = "i2s";
|
||||
assigned-clocks = <&tegra_car TEGRA210_CLK_I2S0>;
|
||||
assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>;
|
||||
assigned-clock-rates = <1536000>;
|
||||
sound-name-prefix = "I2S1";
|
||||
};
|
||||
|
||||
...
|
@ -39,9 +39,9 @@ configuration of each dai. Must contain the following properties.
|
||||
Usage: Required for Compress offload dais
|
||||
Value type: <u32>
|
||||
Definition: Specifies the direction of the dai stream
|
||||
0 for both tx and rx
|
||||
1 for only tx (Capture/Encode)
|
||||
2 for only rx (Playback/Decode)
|
||||
Q6ASM_DAI_TX_RX (0) for both tx and rx
|
||||
Q6ASM_DAI_TX (1) for only tx (Capture/Encode)
|
||||
Q6ASM_DAI_RX (2) for only rx (Playback/Decode)
|
||||
|
||||
- is-compress-dai:
|
||||
Usage: Required for Compress offload dais
|
||||
@ -50,6 +50,7 @@ configuration of each dai. Must contain the following properties.
|
||||
|
||||
|
||||
= EXAMPLE
|
||||
#include <dt-bindings/sound/qcom,q6asm.h>
|
||||
|
||||
apr-service@7 {
|
||||
compatible = "qcom,q6asm";
|
||||
@ -62,7 +63,7 @@ apr-service@7 {
|
||||
|
||||
dai@0 {
|
||||
reg = <0>;
|
||||
direction = <2>;
|
||||
direction = <Q6ASM_DAI_RX>;
|
||||
is-compress-dai;
|
||||
};
|
||||
};
|
||||
|
@ -43,30 +43,19 @@ properties:
|
||||
'#sound-dai-cells':
|
||||
const: 1
|
||||
|
||||
fsia,spdif-connection:
|
||||
patternProperties:
|
||||
"^fsi(a|b),spdif-connection$":
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
description: FSI is connected by S/PDIF
|
||||
|
||||
fsia,stream-mode-support:
|
||||
"^fsi(a|b),stream-mode-support$":
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
description: FSI supports 16bit stream mode
|
||||
|
||||
fsia,use-internal-clock:
|
||||
"^fsi(a|b),use-internal-clock$":
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
description: FSI uses internal clock when master mode
|
||||
|
||||
fsib,spdif-connection:
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
description: same as fsia
|
||||
|
||||
fsib,stream-mode-support:
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
description: same as fsia
|
||||
|
||||
fsib,use-internal-clock:
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
description: same as fsia
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
@ -271,6 +271,7 @@ Required properties:
|
||||
- "renesas,rcar_sound-r8a774a1" (RZ/G2M)
|
||||
- "renesas,rcar_sound-r8a774b1" (RZ/G2N)
|
||||
- "renesas,rcar_sound-r8a774c0" (RZ/G2E)
|
||||
- "renesas,rcar_sound-r8a774e1" (RZ/G2H)
|
||||
- "renesas,rcar_sound-r8a7778" (R-Car M1A)
|
||||
- "renesas,rcar_sound-r8a7779" (R-Car H1)
|
||||
- "renesas,rcar_sound-r8a7790" (R-Car H2)
|
||||
|
@ -1,28 +0,0 @@
|
||||
* Rockchip Rk3328 internal codec
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible: "rockchip,rk3328-codec"
|
||||
- reg: physical base address of the controller and length of memory mapped
|
||||
region.
|
||||
- rockchip,grf: the phandle of the syscon node for GRF register.
|
||||
- clocks: a list of phandle + clock-specifer pairs, one for each entry in clock-names.
|
||||
- clock-names: should be "pclk".
|
||||
- spk-depop-time-ms: speak depop time msec.
|
||||
|
||||
Optional properties:
|
||||
|
||||
- mute-gpios: GPIO specifier for external line driver control (typically the
|
||||
dedicated GPIO_MUTE pin)
|
||||
|
||||
Example for rk3328 internal codec:
|
||||
|
||||
codec: codec@ff410000 {
|
||||
compatible = "rockchip,rk3328-codec";
|
||||
reg = <0x0 0xff410000 0x0 0x1000>;
|
||||
rockchip,grf = <&grf>;
|
||||
clocks = <&cru PCLK_ACODEC>;
|
||||
clock-names = "pclk";
|
||||
mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
|
||||
spk-depop-time-ms = 100;
|
||||
};
|
@ -0,0 +1,69 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/rockchip,rk3328-codec.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Rockchip rk3328 internal codec
|
||||
|
||||
maintainers:
|
||||
- Heiko Stuebner <heiko@sntech.de>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: rockchip,rk3328-codec
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: clock for audio codec
|
||||
- description: clock for I2S master clock
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: pclk
|
||||
- const: mclk
|
||||
|
||||
rockchip,grf:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle
|
||||
description:
|
||||
The phandle of the syscon node for the GRF register.
|
||||
|
||||
spk-depop-time-ms:
|
||||
default: 200
|
||||
description:
|
||||
Speaker depop time in msec.
|
||||
|
||||
mute-gpios:
|
||||
maxItems: 1
|
||||
description:
|
||||
GPIO specifier for external line driver control (typically the
|
||||
dedicated GPIO_MUTE pin)
|
||||
|
||||
"#sound-dai-cells":
|
||||
const: 0
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- clocks
|
||||
- clock-names
|
||||
- rockchip,grf
|
||||
- "#sound-dai-cells"
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/clock/rk3328-cru.h>
|
||||
codec: codec@ff410000 {
|
||||
compatible = "rockchip,rk3328-codec";
|
||||
reg = <0xff410000 0x1000>;
|
||||
clocks = <&cru PCLK_ACODECPHY>, <&cru SCLK_I2S1>;
|
||||
clock-names = "pclk", "mclk";
|
||||
rockchip,grf = <&grf>;
|
||||
mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
|
||||
spk-depop-time-ms = <100>;
|
||||
#sound-dai-cells = <0>;
|
||||
};
|
@ -1,29 +0,0 @@
|
||||
ROHM BD28623MUV Class D speaker amplifier for digital input
|
||||
|
||||
This codec does not have any control buses such as I2C, it detect format and
|
||||
rate of I2S signal automatically. It has two signals that can be connected
|
||||
to GPIOs: reset and mute.
|
||||
|
||||
Required properties:
|
||||
- compatible : should be "rohm,bd28623"
|
||||
- #sound-dai-cells: should be 0.
|
||||
- VCCA-supply : regulator phandle for the VCCA supply
|
||||
- VCCP1-supply : regulator phandle for the VCCP1 supply
|
||||
- VCCP2-supply : regulator phandle for the VCCP2 supply
|
||||
|
||||
Optional properties:
|
||||
- reset-gpios : GPIO specifier for the active low reset line
|
||||
- mute-gpios : GPIO specifier for the active low mute line
|
||||
|
||||
Example:
|
||||
|
||||
codec {
|
||||
compatible = "rohm,bd28623";
|
||||
#sound-dai-cells = <0>;
|
||||
|
||||
VCCA-supply = <&vcc_reg>;
|
||||
VCCP1-supply = <&vcc_reg>;
|
||||
VCCP2-supply = <&vcc_reg>;
|
||||
reset-gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
|
||||
mute-gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
67
Documentation/devicetree/bindings/sound/rohm,bd28623.yaml
Normal file
67
Documentation/devicetree/bindings/sound/rohm,bd28623.yaml
Normal file
@ -0,0 +1,67 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/rohm,bd28623.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: ROHM BD28623MUV Class D speaker amplifier for digital input
|
||||
|
||||
description:
|
||||
This codec does not have any control buses such as I2C, it detect
|
||||
format and rate of I2S signal automatically. It has two signals
|
||||
that can be connected to GPIOs reset and mute.
|
||||
|
||||
maintainers:
|
||||
- Katsuhiro Suzuki <katsuhiro@katsuster.net>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: rohm,bd28623
|
||||
|
||||
"#sound-dai-cells":
|
||||
const: 0
|
||||
|
||||
VCCA-supply:
|
||||
description:
|
||||
regulator phandle for the VCCA (for analog) power supply
|
||||
|
||||
VCCP1-supply:
|
||||
description:
|
||||
regulator phandle for the VCCP1 (for ch1) power supply
|
||||
|
||||
VCCP2-supply:
|
||||
description:
|
||||
regulator phandle for the VCCP2 (for ch2) power supply
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
description:
|
||||
GPIO specifier for the active low reset line
|
||||
|
||||
mute-gpios:
|
||||
maxItems: 1
|
||||
description:
|
||||
GPIO specifier for the active low mute line
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- VCCA-supply
|
||||
- VCCP1-supply
|
||||
- VCCP2-supply
|
||||
- "#sound-dai-cells"
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
codec {
|
||||
compatible = "rohm,bd28623";
|
||||
#sound-dai-cells = <0>;
|
||||
|
||||
VCCA-supply = <&vcc_reg>;
|
||||
VCCP1-supply = <&vcc_reg>;
|
||||
VCCP2-supply = <&vcc_reg>;
|
||||
reset-gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
|
||||
mute-gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
@ -0,0 +1,147 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/samsung,aries-wm8994.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Samsung Aries audio complex with WM8994 codec
|
||||
|
||||
maintainers:
|
||||
- Jonathan Bakker <xc-racer2@live.ca>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- const: samsung,aries-wm8994
|
||||
description: With FM radio and modem master
|
||||
|
||||
- const: samsung,fascinate4g-wm8994
|
||||
description: Without FM radio and modem slave
|
||||
|
||||
model:
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
description: The user-visible name of this sound complex.
|
||||
|
||||
cpu:
|
||||
type: object
|
||||
properties:
|
||||
sound-dai:
|
||||
minItems: 2
|
||||
maxItems: 2
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
description: |
|
||||
phandles to the I2S controller and bluetooth codec,
|
||||
in that order
|
||||
|
||||
codec:
|
||||
type: object
|
||||
properties:
|
||||
sound-dai:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
description: phandle to the WM8994 CODEC
|
||||
|
||||
samsung,audio-routing:
|
||||
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
|
||||
description: |
|
||||
List of the connections between audio
|
||||
components; each entry is a pair of strings, the first being the
|
||||
connection's sink, the second being the connection's source;
|
||||
valid names for sources and sinks are the WM8994's pins (as
|
||||
documented in its binding), and the jacks on the board -
|
||||
For samsung,aries-wm8994: HP, SPK, RCV, LINE, Main Mic, Headset Mic,
|
||||
or FM In
|
||||
For samsung,fascinate4g-wm8994: HP, SPK, RCV, LINE, Main Mic,
|
||||
or HeadsetMic
|
||||
|
||||
extcon:
|
||||
description: Extcon phandle for dock detection
|
||||
|
||||
main-micbias-supply:
|
||||
description: Supply for the micbias on the main mic
|
||||
|
||||
headset-micbias-supply:
|
||||
description: Supply for the micbias on the headset mic
|
||||
|
||||
earpath-sel-gpios:
|
||||
description: GPIO for switching between tv-out and mic paths
|
||||
|
||||
headset-detect-gpios:
|
||||
description: GPIO for detection of headset insertion
|
||||
|
||||
headset-key-gpios:
|
||||
description: GPIO for detection of headset key press
|
||||
|
||||
io-channels:
|
||||
maxItems: 1
|
||||
description: IO channel to read micbias voltage for headset detection
|
||||
|
||||
io-channel-names:
|
||||
const: headset-detect
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- model
|
||||
- cpu
|
||||
- codec
|
||||
- samsung,audio-routing
|
||||
- extcon
|
||||
- main-micbias-supply
|
||||
- headset-micbias-supply
|
||||
- earpath-sel-gpios
|
||||
- headset-detect-gpios
|
||||
- headset-key-gpios
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
sound {
|
||||
compatible = "samsung,fascinate4g-wm8994";
|
||||
|
||||
model = "Fascinate4G";
|
||||
|
||||
extcon = <&fsa9480>;
|
||||
|
||||
main-micbias-supply = <&main_micbias_reg>;
|
||||
headset-micbias-supply = <&headset_micbias_reg>;
|
||||
|
||||
earpath-sel-gpios = <&gpj2 6 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
io-channels = <&adc 3>;
|
||||
io-channel-names = "headset-detect";
|
||||
headset-detect-gpios = <&gph0 6 GPIO_ACTIVE_HIGH>;
|
||||
headset-key-gpios = <&gph3 6 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
samsung,audio-routing =
|
||||
"HP", "HPOUT1L",
|
||||
"HP", "HPOUT1R",
|
||||
|
||||
"SPK", "SPKOUTLN",
|
||||
"SPK", "SPKOUTLP",
|
||||
|
||||
"RCV", "HPOUT2N",
|
||||
"RCV", "HPOUT2P",
|
||||
|
||||
"LINE", "LINEOUT2N",
|
||||
"LINE", "LINEOUT2P",
|
||||
|
||||
"IN1LP", "Main Mic",
|
||||
"IN1LN", "Main Mic",
|
||||
|
||||
"IN1RP", "Headset Mic",
|
||||
"IN1RN", "Headset Mic";
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&headset_det &earpath_sel>;
|
||||
|
||||
cpu {
|
||||
sound-dai = <&i2s0>, <&bt_codec>;
|
||||
};
|
||||
|
||||
codec {
|
||||
sound-dai = <&wm8994>;
|
||||
};
|
||||
};
|
||||
|
108
Documentation/devicetree/bindings/sound/samsung,midas-audio.yaml
Normal file
108
Documentation/devicetree/bindings/sound/samsung,midas-audio.yaml
Normal file
@ -0,0 +1,108 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/samsung,midas-audio.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Samsung Midas audio complex with WM1811 codec
|
||||
|
||||
maintainers:
|
||||
- Sylwester Nawrocki <s.nawrocki@samsung.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: samsung,midas-audio
|
||||
|
||||
model:
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
description: The user-visible name of this sound complex.
|
||||
|
||||
cpu:
|
||||
type: object
|
||||
properties:
|
||||
sound-dai:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle
|
||||
description: phandle to the I2S controller
|
||||
required:
|
||||
- sound-dai
|
||||
|
||||
codec:
|
||||
type: object
|
||||
properties:
|
||||
sound-dai:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle
|
||||
description: phandle to the WM1811 CODEC
|
||||
required:
|
||||
- sound-dai
|
||||
|
||||
samsung,audio-routing:
|
||||
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
|
||||
description: |
|
||||
List of the connections between audio components; each entry is
|
||||
a pair of strings, the first being the connection's sink, the second
|
||||
being the connection's source; valid names for sources and sinks are
|
||||
the WM1811's pins (as documented in its binding), and the jacks
|
||||
on the board: HP, SPK, Main Mic, Sub Mic, Headset Mic.
|
||||
|
||||
mic-bias-supply:
|
||||
description: Supply for the micbias on the Main microphone
|
||||
|
||||
submic-bias-supply:
|
||||
description: Supply for the micbias on the Sub microphone
|
||||
|
||||
fm-sel-gpios:
|
||||
description: GPIO pin for FM selection
|
||||
|
||||
lineout-sel-gpios:
|
||||
description: GPIO pin for line out selection
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- model
|
||||
- cpu
|
||||
- codec
|
||||
- samsung,audio-routing
|
||||
- mic-bias-supply
|
||||
- submic-bias-supply
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
sound {
|
||||
compatible = "samsung,midas-audio";
|
||||
model = "Midas";
|
||||
|
||||
fm-sel-gpios = <&gpaa0 3 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
mic-bias-supply = <&mic_bias_reg>;
|
||||
submic-bias-supply = <&submic_bias_reg>;
|
||||
|
||||
samsung,audio-routing =
|
||||
"HP", "HPOUT1L",
|
||||
"HP", "HPOUT1R",
|
||||
|
||||
"SPK", "SPKOUTLN",
|
||||
"SPK", "SPKOUTLP",
|
||||
"SPK", "SPKOUTRN",
|
||||
"SPK", "SPKOUTRP",
|
||||
|
||||
"RCV", "HPOUT2N",
|
||||
"RCV", "HPOUT2P",
|
||||
|
||||
"IN1LP", "Main Mic",
|
||||
"IN1LN", "Main Mic",
|
||||
"IN1RP", "Sub Mic",
|
||||
"IN1LP", "Sub Mic";
|
||||
|
||||
cpu {
|
||||
sound-dai = <&i2s0>;
|
||||
};
|
||||
|
||||
codec {
|
||||
sound-dai = <&wm1811>;
|
||||
};
|
||||
|
||||
};
|
@ -1,60 +0,0 @@
|
||||
* Freescale SGTL5000 Stereo Codec
|
||||
|
||||
Required properties:
|
||||
- compatible : "fsl,sgtl5000".
|
||||
|
||||
- reg : the I2C address of the device
|
||||
|
||||
- #sound-dai-cells: must be equal to 0
|
||||
|
||||
- clocks : the clock provider of SYS_MCLK
|
||||
|
||||
- VDDA-supply : the regulator provider of VDDA
|
||||
|
||||
- VDDIO-supply: the regulator provider of VDDIO
|
||||
|
||||
Optional properties:
|
||||
|
||||
- VDDD-supply : the regulator provider of VDDD
|
||||
|
||||
- micbias-resistor-k-ohms : the bias resistor to be used in kOhms
|
||||
The resistor can take values of 2k, 4k or 8k.
|
||||
If set to 0 it will be off.
|
||||
If this node is not mentioned or if the value is unknown, then
|
||||
micbias resistor is set to 4K.
|
||||
|
||||
- micbias-voltage-m-volts : the bias voltage to be used in mVolts
|
||||
The voltage can take values from 1.25V to 3V by 250mV steps
|
||||
If this node is not mentioned or the value is unknown, then
|
||||
the value is set to 1.25V.
|
||||
|
||||
- lrclk-strength: the LRCLK pad strength. Possible values are:
|
||||
0, 1, 2 and 3 as per the table below:
|
||||
|
||||
VDDIO 1.8V 2.5V 3.3V
|
||||
0 = Disable
|
||||
1 = 1.66 mA 2.87 mA 4.02 mA
|
||||
2 = 3.33 mA 5.74 mA 8.03 mA
|
||||
3 = 4.99 mA 8.61 mA 12.05 mA
|
||||
|
||||
- sclk-strength: the SCLK pad strength. Possible values are:
|
||||
0, 1, 2 and 3 as per the table below:
|
||||
|
||||
VDDIO 1.8V 2.5V 3.3V
|
||||
0 = Disable
|
||||
1 = 1.66 mA 2.87 mA 4.02 mA
|
||||
2 = 3.33 mA 5.74 mA 8.03 mA
|
||||
3 = 4.99 mA 8.61 mA 12.05 mA
|
||||
|
||||
Example:
|
||||
|
||||
sgtl5000: codec@a {
|
||||
compatible = "fsl,sgtl5000";
|
||||
reg = <0x0a>;
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clks 150>;
|
||||
micbias-resistor-k-ohms = <2>;
|
||||
micbias-voltage-m-volts = <2250>;
|
||||
VDDA-supply = <®_3p3v>;
|
||||
VDDIO-supply = <®_3p3v>;
|
||||
};
|
103
Documentation/devicetree/bindings/sound/sgtl5000.yaml
Normal file
103
Documentation/devicetree/bindings/sound/sgtl5000.yaml
Normal file
@ -0,0 +1,103 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/sgtl5000.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Freescale SGTL5000 Stereo Codec
|
||||
|
||||
maintainers:
|
||||
- Fabio Estevam <festevam@gmail.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: fsl,sgtl5000
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
"#sound-dai-cells":
|
||||
const: 0
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: the clock provider of SYS_MCLK
|
||||
|
||||
VDDA-supply:
|
||||
description: the regulator provider of VDDA
|
||||
|
||||
VDDIO-supply:
|
||||
description: the regulator provider of VDDIO
|
||||
|
||||
VDDD-supply:
|
||||
description: the regulator provider of VDDD
|
||||
|
||||
micbias-resistor-k-ohms:
|
||||
description: The bias resistor to be used in kOhms. The resistor can take
|
||||
values of 2k, 4k or 8k. If set to 0 it will be off. If this node is not
|
||||
mentioned or if the value is unknown, then micbias resistor is set to
|
||||
4k.
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
enum: [ 0, 2, 4, 8 ]
|
||||
|
||||
micbias-voltage-m-volts:
|
||||
description: The bias voltage to be used in mVolts. The voltage can take
|
||||
values from 1.25V to 3V by 250mV steps. If this node is not mentioned
|
||||
or the value is unknown, then the value is set to 1.25V.
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
enum: [ 1250, 1500, 1750, 2000, 2250, 2500, 2750, 3000 ]
|
||||
|
||||
lrclk-strength:
|
||||
description: |
|
||||
The LRCLK pad strength. Possible values are: 0, 1, 2 and 3 as per the
|
||||
table below:
|
||||
|
||||
VDDIO 1.8V 2.5V 3.3V
|
||||
0 = Disable
|
||||
1 = 1.66 mA 2.87 mA 4.02 mA
|
||||
2 = 3.33 mA 5.74 mA 8.03 mA
|
||||
3 = 4.99 mA 8.61 mA 12.05 mA
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
enum: [ 0, 1, 2, 3 ]
|
||||
|
||||
sclk-strength:
|
||||
description: |
|
||||
The SCLK pad strength. Possible values are: 0, 1, 2 and 3 as per the
|
||||
table below:
|
||||
|
||||
VDDIO 1.8V 2.5V 3.3V
|
||||
0 = Disable
|
||||
1 = 1.66 mA 2.87 mA 4.02 mA
|
||||
2 = 3.33 mA 5.74 mA 8.03 mA
|
||||
3 = 4.99 mA 8.61 mA 12.05 mA
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
enum: [ 0, 1, 2, 3 ]
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- "#sound-dai-cells"
|
||||
- clocks
|
||||
- VDDA-supply
|
||||
- VDDIO-supply
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
codec@a {
|
||||
compatible = "fsl,sgtl5000";
|
||||
reg = <0x0a>;
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clks 150>;
|
||||
micbias-resistor-k-ohms = <2>;
|
||||
micbias-voltage-m-volts = <2250>;
|
||||
VDDA-supply = <®_3p3v>;
|
||||
VDDIO-supply = <®_3p3v>;
|
||||
};
|
||||
};
|
||||
...
|
@ -0,0 +1,81 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/socionext,uniphier-aio.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: UniPhier AIO audio system
|
||||
|
||||
maintainers:
|
||||
- <alsa-devel@alsa-project.org>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- socionext,uniphier-ld11-aio
|
||||
- socionext,uniphier-ld20-aio
|
||||
- socionext,uniphier-pxs2-aio
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
clock-names:
|
||||
const: aio
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
|
||||
reset-names:
|
||||
const: aio
|
||||
|
||||
resets:
|
||||
maxItems: 1
|
||||
|
||||
socionext,syscon:
|
||||
description: |
|
||||
Specifies a phandle to soc-glue, which is used for changing mode of S/PDIF
|
||||
signal pin to output from Hi-Z. This property is optional if you use I2S
|
||||
signal pins only.
|
||||
$ref: "/schemas/types.yaml#/definitions/phandle"
|
||||
|
||||
"#sound-dai-cells":
|
||||
const: 1
|
||||
|
||||
patternProperties:
|
||||
"^port@[0-9]$":
|
||||
type: object
|
||||
properties:
|
||||
endpoint: true
|
||||
required:
|
||||
- endpoint
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- clock-names
|
||||
- clocks
|
||||
- reset-names
|
||||
- resets
|
||||
- "#sound-dai-cells"
|
||||
|
||||
examples:
|
||||
- |
|
||||
audio@56000000 {
|
||||
compatible = "socionext,uniphier-ld20-aio";
|
||||
reg = <0x56000000 0x80000>;
|
||||
interrupts = <0 144 4>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_aout>;
|
||||
clock-names = "aio";
|
||||
clocks = <&sys_clk 40>;
|
||||
reset-names = "aio";
|
||||
resets = <&sys_rst 40>;
|
||||
#sound-dai-cells = <1>;
|
||||
socionext,syscon = <&soc_glue>;
|
||||
};
|
@ -0,0 +1,70 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/socionext,uniphier-evea.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: UniPhier EVEA SoC-internal sound codec
|
||||
|
||||
maintainers:
|
||||
- <alsa-devel@alsa-project.org>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: socionext,uniphier-evea
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: evea
|
||||
- const: exiv
|
||||
|
||||
clocks:
|
||||
minItems: 2
|
||||
maxItems: 2
|
||||
|
||||
reset-names:
|
||||
items:
|
||||
- const: evea
|
||||
- const: exiv
|
||||
- const: adamv
|
||||
|
||||
resets:
|
||||
minItems: 3
|
||||
maxItems: 3
|
||||
|
||||
"#sound-dai-cells":
|
||||
const: 1
|
||||
|
||||
patternProperties:
|
||||
"^port@[0-9]$":
|
||||
type: object
|
||||
properties:
|
||||
endpoint: true
|
||||
required:
|
||||
- endpoint
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- clock-names
|
||||
- clocks
|
||||
- reset-names
|
||||
- resets
|
||||
- "#sound-dai-cells"
|
||||
|
||||
examples:
|
||||
- |
|
||||
codec@57900000 {
|
||||
compatible = "socionext,uniphier-evea";
|
||||
reg = <0x57900000 0x1000>;
|
||||
clock-names = "evea", "exiv";
|
||||
clocks = <&sys_clk 41>, <&sys_clk 42>;
|
||||
reset-names = "evea", "exiv", "adamv";
|
||||
resets = <&sys_rst 41>, <&sys_rst 42>, <&adamv_rst 0>;
|
||||
#sound-dai-cells = <1>;
|
||||
};
|
@ -33,4 +33,4 @@ tas2552: tas2552@41 {
|
||||
};
|
||||
|
||||
For more product information please see the link below:
|
||||
http://www.ti.com/product/TAS2552
|
||||
https://www.ti.com/product/TAS2552
|
||||
|
@ -11,12 +11,14 @@ Required properties:
|
||||
- compatible: - Should contain "ti,tas2562", "ti,tas2563".
|
||||
- reg: - The i2c address. Should be 0x4c, 0x4d, 0x4e or 0x4f.
|
||||
- ti,imon-slot-no:- TDM TX current sense time slot.
|
||||
- ti,vmon-slot-no:- TDM TX voltage sense time slot. This slot must always be
|
||||
greater then ti,imon-slot-no.
|
||||
|
||||
Optional properties:
|
||||
- interrupt-parent: phandle to the interrupt controller which provides
|
||||
the interrupt.
|
||||
- interrupts: (GPIO) interrupt to which the chip is connected.
|
||||
- shut-down: GPIO used to control the state of the device.
|
||||
- shut-down-gpio: GPIO used to control the state of the device.
|
||||
|
||||
Examples:
|
||||
tas2562@4c {
|
||||
@ -28,7 +30,8 @@ tas2562@4c {
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <14>;
|
||||
|
||||
shut-down = <&gpio1 15 0>;
|
||||
shut-down-gpio = <&gpio1 15 0>;
|
||||
ti,imon-slot-no = <0>;
|
||||
ti,vmon-slot-no = <1>;
|
||||
};
|
||||
|
||||
|
69
Documentation/devicetree/bindings/sound/tas2562.yaml
Normal file
69
Documentation/devicetree/bindings/sound/tas2562.yaml
Normal file
@ -0,0 +1,69 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
# Copyright (C) 2019 Texas Instruments Incorporated
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/sound/tas2562.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
|
||||
title: Texas Instruments TAS2562 Smart PA
|
||||
|
||||
maintainers:
|
||||
- Dan Murphy <dmurphy@ti.com>
|
||||
|
||||
description: |
|
||||
The TAS2562 is a mono, digital input Class-D audio amplifier optimized for
|
||||
efficiently driving high peak power into small loudspeakers.
|
||||
Integrated speaker voltage and current sense provides for
|
||||
real time monitoring of loudspeaker behavior.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- ti,tas2562
|
||||
- ti,tas2563
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
description: |
|
||||
I2C address of the device can be one of these 0x4c, 0x4d, 0x4e or 0x4f
|
||||
|
||||
shut-down-gpios:
|
||||
description: GPIO used to control the state of the device.
|
||||
deprecated: true
|
||||
|
||||
shutdown-gpios:
|
||||
description: GPIO used to control the state of the device.
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
ti,imon-slot-no:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: TDM TX current sense time slot.
|
||||
|
||||
'#sound-dai-cells':
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
i2c0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
codec: codec@4c {
|
||||
compatible = "ti,tas2562";
|
||||
reg = <0x4c>;
|
||||
#sound-dai-cells = <1>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <14>;
|
||||
shutdown-gpios = <&gpio1 15 0>;
|
||||
ti,imon-slot-no = <0>;
|
||||
};
|
||||
};
|
||||
|
@ -1,37 +0,0 @@
|
||||
Texas Instruments TAS2770 Smart PA
|
||||
|
||||
The TAS2770 is a mono, digital input Class-D audio amplifier optimized for
|
||||
efficiently driving high peak power into small loudspeakers.
|
||||
Integrated speaker voltage and current sense provides for
|
||||
real time monitoring of loudspeaker behavior.
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible: - Should contain "ti,tas2770".
|
||||
- reg: - The i2c address. Should contain <0x4c>, <0x4d>,<0x4e>, or <0x4f>.
|
||||
- #address-cells - Should be <1>.
|
||||
- #size-cells - Should be <0>.
|
||||
- ti,asi-format: - Sets TDM RX capture edge. 0->Rising; 1->Falling.
|
||||
- ti,imon-slot-no:- TDM TX current sense time slot.
|
||||
- ti,vmon-slot-no:- TDM TX voltage sense time slot.
|
||||
|
||||
Optional properties:
|
||||
|
||||
- interrupt-parent: the phandle to the interrupt controller which provides
|
||||
the interrupt.
|
||||
- interrupts: interrupt specification for data-ready.
|
||||
|
||||
Examples:
|
||||
|
||||
tas2770@4c {
|
||||
compatible = "ti,tas2770";
|
||||
reg = <0x4c>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
interrupt-parent = <&msm_gpio>;
|
||||
interrupts = <97 0>;
|
||||
ti,asi-format = <0>;
|
||||
ti,imon-slot-no = <0>;
|
||||
ti,vmon-slot-no = <2>;
|
||||
};
|
||||
|
76
Documentation/devicetree/bindings/sound/tas2770.yaml
Normal file
76
Documentation/devicetree/bindings/sound/tas2770.yaml
Normal file
@ -0,0 +1,76 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
# Copyright (C) 2019-20 Texas Instruments Incorporated
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/sound/tas2770.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
|
||||
title: Texas Instruments TAS2770 Smart PA
|
||||
|
||||
maintainers:
|
||||
- Shi Fu <shifu0704@thundersoft.com>
|
||||
|
||||
description: |
|
||||
The TAS2770 is a mono, digital input Class-D audio amplifier optimized for
|
||||
efficiently driving high peak power into small loudspeakers.
|
||||
Integrated speaker voltage and current sense provides for
|
||||
real time monitoring of loudspeaker behavior.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- ti,tas2770
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
description: |
|
||||
I2C address of the device can be one of these 0x4c, 0x4d, 0x4e or 0x4f
|
||||
|
||||
reset-gpio:
|
||||
description: GPIO used to reset the device.
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
ti,imon-slot-no:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: TDM TX current sense time slot.
|
||||
|
||||
ti,vmon-slot-no:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: TDM TX voltage sense time slot.
|
||||
|
||||
ti,asi-format:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: Sets TDM RX capture edge.
|
||||
enum:
|
||||
- 0 # Rising edge
|
||||
- 1 # Falling edge
|
||||
|
||||
'#sound-dai-cells':
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
i2c0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
codec: codec@4c {
|
||||
compatible = "ti,tas2770";
|
||||
reg = <0x4c>;
|
||||
#sound-dai-cells = <1>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <14>;
|
||||
reset-gpio = <&gpio1 15 0>;
|
||||
ti,imon-slot-no = <0>;
|
||||
ti,vmon-slot-no = <2>;
|
||||
};
|
||||
};
|
||||
|
@ -4,9 +4,9 @@ The TAS5720 serial control bus communicates through the I2C protocol only. The
|
||||
serial bus is also used for periodic codec fault checking/reporting during
|
||||
audio playback. For more product information please see the links below:
|
||||
|
||||
http://www.ti.com/product/TAS5720L
|
||||
http://www.ti.com/product/TAS5720M
|
||||
http://www.ti.com/product/TAS5722L
|
||||
https://www.ti.com/product/TAS5720L
|
||||
https://www.ti.com/product/TAS5720M
|
||||
https://www.ti.com/product/TAS5722L
|
||||
|
||||
Required properties:
|
||||
|
||||
|
@ -0,0 +1,95 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/ti,j721e-cpb-audio.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Texas Instruments J721e Common Processor Board Audio Support
|
||||
|
||||
maintainers:
|
||||
- Peter Ujfalusi <peter.ujfalusi@ti.com>
|
||||
|
||||
description: |
|
||||
The audio support on the board is using pcm3168a codec connected to McASP10
|
||||
serializers in parallel setup.
|
||||
The pcm3168a SCKI clock is sourced from j721e AUDIO_REFCLK2 pin.
|
||||
In order to support 48KHz and 44.1KHz family of sampling rates the parent
|
||||
clock for AUDIO_REFCLK2 needs to be changed between PLL4 (for 48KHz) and
|
||||
PLL15 (for 44.1KHz). The same PLLs are used for McASP10's AUXCLK clock via
|
||||
different HSDIVIDER.
|
||||
|
||||
Clocking setup for 48KHz family:
|
||||
PLL4 ---> PLL4_HSDIV0 ---> MCASP10_AUXCLK ---> McASP10.auxclk
|
||||
|-> PLL4_HSDIV2 ---> AUDIO_REFCLK2 ---> pcm3168a.SCKI
|
||||
|
||||
Clocking setup for 44.1KHz family:
|
||||
PLL15 ---> PLL15_HSDIV0 ---> MCASP10_AUXCLK ---> McASP10.auxclk
|
||||
|-> PLL15_HSDIV2 ---> AUDIO_REFCLK2 ---> pcm3168a.SCKI
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
items:
|
||||
- const: ti,j721e-cpb-audio
|
||||
|
||||
model:
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
description: User specified audio sound card name
|
||||
|
||||
ti,cpb-mcasp:
|
||||
description: phandle to McASP used on CPB
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/phandle
|
||||
|
||||
ti,cpb-codec:
|
||||
description: phandle to the pcm3168a codec used on the CPB
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/phandle
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: AUXCLK clock for McASP used by CPB audio
|
||||
- description: Parent for CPB_McASP auxclk (for 48KHz)
|
||||
- description: Parent for CPB_McASP auxclk (for 44.1KHz)
|
||||
- description: SCKI clock for the pcm3168a codec on CPB
|
||||
- description: Parent for CPB_SCKI clock (for 48KHz)
|
||||
- description: Parent for CPB_SCKI clock (for 44.1KHz)
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: cpb-mcasp-auxclk
|
||||
- const: cpb-mcasp-auxclk-48000
|
||||
- const: cpb-mcasp-auxclk-44100
|
||||
- const: cpb-codec-scki
|
||||
- const: cpb-codec-scki-48000
|
||||
- const: cpb-codec-scki-44100
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- model
|
||||
- ti,cpb-mcasp
|
||||
- ti,cpb-codec
|
||||
- clocks
|
||||
- clock-names
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |+
|
||||
sound {
|
||||
compatible = "ti,j721e-cpb-audio";
|
||||
model = "j721e-cpb";
|
||||
|
||||
status = "okay";
|
||||
|
||||
ti,cpb-mcasp = <&mcasp10>;
|
||||
ti,cpb-codec = <&pcm3168a_1>;
|
||||
|
||||
clocks = <&k3_clks 184 1>,
|
||||
<&k3_clks 184 2>, <&k3_clks 184 4>,
|
||||
<&k3_clks 157 371>,
|
||||
<&k3_clks 157 400>, <&k3_clks 157 401>;
|
||||
clock-names = "cpb-mcasp-auxclk",
|
||||
"cpb-mcasp-auxclk-48000", "cpb-mcasp-auxclk-44100",
|
||||
"cpb-codec-scki",
|
||||
"cpb-codec-scki-48000", "cpb-codec-scki-44100";
|
||||
};
|
@ -0,0 +1,150 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/ti,j721e-cpb-ivi-audio.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Texas Instruments J721e Common Processor Board Audio Support
|
||||
|
||||
maintainers:
|
||||
- Peter Ujfalusi <peter.ujfalusi@ti.com>
|
||||
|
||||
description: |
|
||||
The Infotainment board plugs into the Common Processor Board, the support of the
|
||||
extension board is extending the CPB audio support, decribed in:
|
||||
sound/ti,j721e-cpb-audio.txt
|
||||
|
||||
The audio support on the Infotainment Expansion Board consists of McASP0
|
||||
connected to two pcm3168a codecs with dedicated set of serializers to each.
|
||||
The SCKI for pcm3168a is sourced from j721e AUDIO_REFCLK0 pin.
|
||||
|
||||
In order to support 48KHz and 44.1KHz family of sampling rates the parent clock
|
||||
for AUDIO_REFCLK0 needs to be changed between PLL4 (for 48KHz) and PLL15 (for
|
||||
44.1KHz). The same PLLs are used for McASP0's AUXCLK clock via different
|
||||
HSDIVIDER.
|
||||
|
||||
Note: the same PLL4 and PLL15 is used by the audio support on the CPB!
|
||||
|
||||
Clocking setup for 48KHz family:
|
||||
PLL4 ---> PLL4_HSDIV0 ---> MCASP10_AUXCLK ---> McASP10.auxclk
|
||||
| |-> MCASP0_AUXCLK ---> McASP0.auxclk
|
||||
|
|
||||
|-> PLL4_HSDIV2 ---> AUDIO_REFCLK2 ---> pcm3168a.SCKI
|
||||
|-> AUDIO_REFCLK0 ---> pcm3168a_a/b.SCKI
|
||||
|
||||
Clocking setup for 44.1KHz family:
|
||||
PLL15 ---> PLL15_HSDIV0 ---> MCASP10_AUXCLK ---> McASP10.auxclk
|
||||
| |-> MCASP0_AUXCLK ---> McASP0.auxclk
|
||||
|
|
||||
|-> PLL15_HSDIV2 ---> AUDIO_REFCLK2 ---> pcm3168a.SCKI
|
||||
|-> AUDIO_REFCLK0 ---> pcm3168a_a/b.SCKI
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
items:
|
||||
- const: ti,j721e-cpb-ivi-audio
|
||||
|
||||
model:
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
description: User specified audio sound card name
|
||||
|
||||
ti,cpb-mcasp:
|
||||
description: phandle to McASP used on CPB
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/phandle
|
||||
|
||||
ti,cpb-codec:
|
||||
description: phandle to the pcm3168a codec used on the CPB
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/phandle
|
||||
|
||||
ti,ivi-mcasp:
|
||||
description: phandle to McASP used on IVI
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/phandle
|
||||
|
||||
ti,ivi-codec-a:
|
||||
description: phandle to the pcm3168a-A codec on the expansion board
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/phandle
|
||||
|
||||
ti,ivi-codec-b:
|
||||
description: phandle to the pcm3168a-B codec on the expansion board
|
||||
allOf:
|
||||
- $ref: /schemas/types.yaml#/definitions/phandle
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: AUXCLK clock for McASP used by CPB audio
|
||||
- description: Parent for CPB_McASP auxclk (for 48KHz)
|
||||
- description: Parent for CPB_McASP auxclk (for 44.1KHz)
|
||||
- description: SCKI clock for the pcm3168a codec on CPB
|
||||
- description: Parent for CPB_SCKI clock (for 48KHz)
|
||||
- description: Parent for CPB_SCKI clock (for 44.1KHz)
|
||||
- description: AUXCLK clock for McASP used by IVI audio
|
||||
- description: Parent for IVI_McASP auxclk (for 48KHz)
|
||||
- description: Parent for IVI_McASP auxclk (for 44.1KHz)
|
||||
- description: SCKI clock for the pcm3168a codec on IVI
|
||||
- description: Parent for IVI_SCKI clock (for 48KHz)
|
||||
- description: Parent for IVI_SCKI clock (for 44.1KHz)
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: cpb-mcasp-auxclk
|
||||
- const: cpb-mcasp-auxclk-48000
|
||||
- const: cpb-mcasp-auxclk-44100
|
||||
- const: cpb-codec-scki
|
||||
- const: cpb-codec-scki-48000
|
||||
- const: cpb-codec-scki-44100
|
||||
- const: ivi-mcasp-auxclk
|
||||
- const: ivi-mcasp-auxclk-48000
|
||||
- const: ivi-mcasp-auxclk-44100
|
||||
- const: ivi-codec-scki
|
||||
- const: ivi-codec-scki-48000
|
||||
- const: ivi-codec-scki-44100
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- model
|
||||
- ti,cpb-mcasp
|
||||
- ti,cpb-codec
|
||||
- ti,ivi-mcasp
|
||||
- ti,ivi-codec-a
|
||||
- ti,ivi-codec-b
|
||||
- clocks
|
||||
- clock-names
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |+
|
||||
sound {
|
||||
compatible = "ti,j721e-cpb-ivi-audio";
|
||||
model = "j721e-cpb-ivi";
|
||||
|
||||
status = "okay";
|
||||
|
||||
ti,cpb-mcasp = <&mcasp10>;
|
||||
ti,cpb-codec = <&pcm3168a_1>;
|
||||
|
||||
ti,ivi-mcasp = <&mcasp0>;
|
||||
ti,ivi-codec-a = <&pcm3168a_a>;
|
||||
ti,ivi-codec-b = <&pcm3168a_b>;
|
||||
|
||||
clocks = <&k3_clks 184 1>,
|
||||
<&k3_clks 184 2>, <&k3_clks 184 4>,
|
||||
<&k3_clks 157 371>,
|
||||
<&k3_clks 157 400>, <&k3_clks 157 401>,
|
||||
<&k3_clks 174 1>,
|
||||
<&k3_clks 174 2>, <&k3_clks 174 4>,
|
||||
<&k3_clks 157 301>,
|
||||
<&k3_clks 157 330>, <&k3_clks 157 331>;
|
||||
clock-names = "cpb-mcasp-auxclk",
|
||||
"cpb-mcasp-auxclk-48000", "cpb-mcasp-auxclk-44100",
|
||||
"cpb-codec-scki",
|
||||
"cpb-codec-scki-48000", "cpb-codec-scki-44100",
|
||||
"ivi-mcasp-auxclk",
|
||||
"ivi-mcasp-auxclk-48000", "ivi-mcasp-auxclk-44100",
|
||||
"ivi-codec-scki",
|
||||
"ivi-codec-scki-48000", "ivi-codec-scki-44100";
|
||||
};
|
@ -19,4 +19,4 @@ tas6424: tas6424@6a {
|
||||
};
|
||||
|
||||
For more product information please see the link below:
|
||||
http://www.ti.com/product/TAS6424-Q1
|
||||
https://www.ti.com/product/TAS6424-Q1
|
||||
|
@ -18,9 +18,9 @@ description: |
|
||||
microphone bias or supply voltage generation.
|
||||
|
||||
Specifications can be found at:
|
||||
http://www.ti.com/lit/ds/symlink/tlv320adc3140.pdf
|
||||
http://www.ti.com/lit/ds/symlink/tlv320adc5140.pdf
|
||||
http://www.ti.com/lit/ds/symlink/tlv320adc6140.pdf
|
||||
https://www.ti.com/lit/ds/symlink/tlv320adc3140.pdf
|
||||
https://www.ti.com/lit/ds/symlink/tlv320adc5140.pdf
|
||||
https://www.ti.com/lit/ds/symlink/tlv320adc6140.pdf
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
@ -108,6 +108,32 @@ properties:
|
||||
maximum: 7
|
||||
default: [0, 0, 0, 0]
|
||||
|
||||
patternProperties:
|
||||
'^ti,gpo-config-[1-4]$':
|
||||
$ref: /schemas/types.yaml#/definitions/uint32-array
|
||||
description: |
|
||||
Defines the configuration and output driver for the general purpose
|
||||
output pins (GPO). These values are pairs, the first value is for the
|
||||
configuration type and the second value is for the output drive type.
|
||||
The array is defined as <GPO_CFG GPO_DRV>
|
||||
|
||||
GPO output configuration can be one of the following:
|
||||
|
||||
0 - (default) disabled
|
||||
1 - GPOX is configured as a general-purpose output (GPO)
|
||||
2 - GPOX is configured as a device interrupt output (IRQ)
|
||||
3 - GPOX is configured as a secondary ASI output (SDOUT2)
|
||||
4 - GPOX is configured as a PDM clock output (PDMCLK)
|
||||
|
||||
GPO output drive configuration for the GPO pins can be one of the following:
|
||||
|
||||
0d - (default) Hi-Z output
|
||||
1d - Drive active low and active high
|
||||
2d - Drive active low and weak high
|
||||
3d - Drive active low and Hi-Z
|
||||
4d - Drive weak low and active high
|
||||
5d - Drive Hi-Z and active high
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
@ -124,6 +150,8 @@ examples:
|
||||
ti,mic-bias-source = <6>;
|
||||
ti,pdm-edge-select = <0 1 0 1>;
|
||||
ti,gpi-config = <4 5 6 7>;
|
||||
ti,gpo-config-1 = <0 0>;
|
||||
ti,gpo-config-2 = <0 0>;
|
||||
reset-gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
@ -1,45 +0,0 @@
|
||||
Socionext UniPhier SoC audio driver
|
||||
|
||||
The Socionext UniPhier audio subsystem consists of I2S and S/PDIF blocks in
|
||||
the same register space.
|
||||
|
||||
Required properties:
|
||||
- compatible : should be one of the following:
|
||||
"socionext,uniphier-ld11-aio"
|
||||
"socionext,uniphier-ld20-aio"
|
||||
"socionext,uniphier-pxs2-aio"
|
||||
- reg : offset and length of the register set for the device.
|
||||
- interrupts : should contain I2S or S/PDIF interrupt.
|
||||
- pinctrl-names : should be "default".
|
||||
- pinctrl-0 : defined I2S signal pins for an external codec chip.
|
||||
- clock-names : should include following entries:
|
||||
"aio"
|
||||
- clocks : a list of phandle, should contain an entry for each
|
||||
entry in clock-names.
|
||||
- reset-names : should include following entries:
|
||||
"aio"
|
||||
- resets : a list of phandle, should contain an entry for each
|
||||
entry in reset-names.
|
||||
- #sound-dai-cells: should be 1.
|
||||
|
||||
Optional properties:
|
||||
- socionext,syscon: a phandle, should contain soc-glue.
|
||||
The soc-glue is used for changing mode of S/PDIF signal pin
|
||||
to Output from Hi-Z. This property is optional if you use
|
||||
I2S signal pins only.
|
||||
|
||||
Example:
|
||||
audio {
|
||||
compatible = "socionext,uniphier-ld20-aio";
|
||||
reg = <0x56000000 0x80000>;
|
||||
interrupts = <0 144 4>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_aout>;
|
||||
clock-names = "aio";
|
||||
clocks = <&sys_clk 40>;
|
||||
reset-names = "aio";
|
||||
resets = <&sys_rst 40>;
|
||||
#sound-dai-cells = <1>;
|
||||
|
||||
socionext,syscon = <&sg>;
|
||||
};
|
@ -1,26 +0,0 @@
|
||||
Socionext EVEA - UniPhier SoC internal codec driver
|
||||
|
||||
Required properties:
|
||||
- compatible : should be "socionext,uniphier-evea".
|
||||
- reg : offset and length of the register set for the device.
|
||||
- clock-names : should include following entries:
|
||||
"evea", "exiv"
|
||||
- clocks : a list of phandle, should contain an entry for each
|
||||
entries in clock-names.
|
||||
- reset-names : should include following entries:
|
||||
"evea", "exiv", "adamv"
|
||||
- resets : a list of phandle, should contain reset entries of
|
||||
reset-names.
|
||||
- #sound-dai-cells: should be 1.
|
||||
|
||||
Example:
|
||||
|
||||
codec {
|
||||
compatible = "socionext,uniphier-evea";
|
||||
reg = <0x57900000 0x1000>;
|
||||
clock-names = "evea", "exiv";
|
||||
clocks = <&sys_clk 41>, <&sys_clk 42>;
|
||||
reset-names = "evea", "exiv", "adamv";
|
||||
resets = <&sys_rst 41>, <&sys_rst 42>, <&adamv_rst 0>;
|
||||
#sound-dai-cells = <1>;
|
||||
};
|
@ -21,6 +21,17 @@ Optional properties:
|
||||
enabled and disabled together with HP_L and HP_R pins in response to jack
|
||||
detect events.
|
||||
|
||||
- wlf,hp-cfg: A list of headphone jack detect configuration register values.
|
||||
The list must be 3 entries long.
|
||||
hp-cfg[0]: HPSEL[1:0] of R48 (Additional Control 4).
|
||||
hp-cfg[1]: {HPSWEN:HPSWPOL} of R24 (Additional Control 2).
|
||||
hp-cfg[2]: {TOCLKSEL:TOEN} of R23 (Additional Control 1).
|
||||
|
||||
- wlf,gpio-cfg: A list of GPIO configuration register values.
|
||||
The list must be 2 entries long.
|
||||
gpio-cfg[0]: ALRCGPIO of R9 (Audio interface)
|
||||
gpio-cfg[1]: {GPIOPOL:GPIOSEL[2:0]} of R48 (Additional Control 4).
|
||||
|
||||
Example:
|
||||
|
||||
wm8960: codec@1a {
|
||||
|
@ -68,6 +68,29 @@ Optional properties:
|
||||
- wlf,csnaddr-pd : If present enable the internal pull-down resistor on
|
||||
the CS/ADDR pin.
|
||||
|
||||
Pins on the device (for linking into audio routes):
|
||||
|
||||
* IN1LN
|
||||
* IN1LP
|
||||
* IN2LN
|
||||
* IN2LP:VXRN
|
||||
* IN1RN
|
||||
* IN1RP
|
||||
* IN2RN
|
||||
* IN2RP:VXRP
|
||||
* SPKOUTLP
|
||||
* SPKOUTLN
|
||||
* SPKOUTRP
|
||||
* SPKOUTRN
|
||||
* HPOUT1L
|
||||
* HPOUT1R
|
||||
* HPOUT2P
|
||||
* HPOUT2N
|
||||
* LINEOUT1P
|
||||
* LINEOUT1N
|
||||
* LINEOUT2P
|
||||
* LINEOUT2N
|
||||
|
||||
Example:
|
||||
|
||||
wm8994: codec@1a {
|
||||
|
@ -50,7 +50,7 @@ properties:
|
||||
nvmem-cell-names:
|
||||
const: calibration
|
||||
|
||||
# See ./thermal.txt for details
|
||||
# See Documentation/devicetree/bindings/thermal/thermal-sensor.yaml for details
|
||||
"#thermal-sensor-cells":
|
||||
enum:
|
||||
- 0
|
||||
|
@ -6,7 +6,7 @@ transaction.
|
||||
Required properties:
|
||||
- compatible: "amazon,al-thermal".
|
||||
- reg: The physical base address and length of the sensor's registers.
|
||||
- #thermal-sensor-cells: Must be 1. See ./thermal.txt for a description.
|
||||
- #thermal-sensor-cells: Must be 1. See Documentation/devicetree/bindings/thermal/thermal-sensor.yaml for a description.
|
||||
|
||||
Example:
|
||||
thermal: thermal {
|
||||
|
@ -23,7 +23,7 @@ properties:
|
||||
compatible:
|
||||
const: brcm,bcm2711-thermal
|
||||
|
||||
# See ./thermal.txt for details
|
||||
# See Documentation/devicetree/bindings/thermal/thermal-sensor.yaml for details
|
||||
"#thermal-sensor-cells":
|
||||
const: 0
|
||||
|
||||
|
@ -7,7 +7,7 @@ compatible: should be one of: "brcm,bcm2835-thermal",
|
||||
"brcm,bcm2836-thermal" or "brcm,bcm2837-thermal"
|
||||
reg: Address range of the thermal registers.
|
||||
clocks: Phandle of the clock used by the thermal sensor.
|
||||
#thermal-sensor-cells: should be 0 (see thermal.txt)
|
||||
#thermal-sensor-cells: should be 0 (see Documentation/devicetree/bindings/thermal/thermal-sensor.yaml)
|
||||
|
||||
Example:
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
by /SOCTHERM/tsensor.
|
||||
- clock-names: Input clock name, should be 'thermal_clk'.
|
||||
- clocks: phandles for clock specified in "clock-names" property.
|
||||
- #thermal-sensor-cells: Should be 1. See ./thermal.txt for a description.
|
||||
- #thermal-sensor-cells: Should be 1. See Documentation/devicetree/bindings/thermal/thermal-sensor.yaml for a description.
|
||||
|
||||
Example :
|
||||
|
||||
|
@ -8,12 +8,12 @@ below threshold level.
|
||||
|
||||
Required properties:
|
||||
-------------------
|
||||
#thermal-sensor-cells: Please refer <devicetree/bindings/thermal/thermal.txt>
|
||||
for more details.
|
||||
#thermal-sensor-cells: For more details, please refer to
|
||||
<devicetree/bindings/thermal/thermal-sensor.yaml>
|
||||
The value must be 0.
|
||||
|
||||
For more details, please refer generic thermal DT binding document
|
||||
<devicetree/bindings/thermal/thermal.txt>.
|
||||
<devicetree/bindings/thermal/thermal*.yaml>.
|
||||
|
||||
Please refer <devicetree/bindings/mfd/max77620.txt> for mfd DT binding
|
||||
document for the MAX77620.
|
||||
|
@ -23,7 +23,7 @@ Required properties:
|
||||
- resets: Reference to the reset controller controlling the thermal controller.
|
||||
- mediatek,auxadc: A phandle to the AUXADC which the thermal controller uses
|
||||
- mediatek,apmixedsys: A phandle to the APMIXEDSYS controller.
|
||||
- #thermal-sensor-cells : Should be 0. See ./thermal.txt for a description.
|
||||
- #thermal-sensor-cells : Should be 0. See Documentation/devicetree/bindings/thermal/thermal-sensor.yaml for a description.
|
||||
|
||||
Optional properties:
|
||||
- nvmem-cells: A phandle to the calibration data provided by a nvmem device. If
|
||||
|
@ -28,9 +28,10 @@ Required properties :
|
||||
See ../reset/reset.txt for details.
|
||||
- reset-names : Must include the following entries:
|
||||
- soctherm
|
||||
- #thermal-sensor-cells : Should be 1. See ./thermal.txt for a description
|
||||
of this property. See <dt-bindings/thermal/tegra124-soctherm.h> for a
|
||||
list of valid values when referring to thermal sensors.
|
||||
- #thermal-sensor-cells : Should be 1. For a description of this property, see
|
||||
Documentation/devicetree/bindings/thermal/thermal-sensor.yaml.
|
||||
See <dt-bindings/thermal/tegra124-soctherm.h> for a list of valid values
|
||||
when referring to thermal sensors.
|
||||
- throttle-cfgs: A sub-node which is a container of configuration for each
|
||||
hardware throttle events. These events can be set as cooling devices.
|
||||
* throttle events: Sub-nodes must be named as "light" or "heavy".
|
||||
@ -62,7 +63,8 @@ Required properties :
|
||||
TEGRA_SOCTHERM_THROT_LEVEL_MED (75%),
|
||||
TEGRA_SOCTHERM_THROT_LEVEL_HIGH (85%).
|
||||
- #cooling-cells: Should be 1. This cooling device only support on/off state.
|
||||
See ./thermal.txt for a description of this property.
|
||||
For a description of this property see:
|
||||
Documentation/devicetree/bindings/thermal/thermal-cooling-devices.yaml
|
||||
|
||||
Optional properties: The following properties are T210 specific and
|
||||
valid only for OCx throttle events.
|
||||
|
@ -8,7 +8,7 @@ exposed by BPMP.
|
||||
The BPMP thermal node must be located directly inside the main BPMP node. See
|
||||
../firmware/nvidia,tegra186-bpmp.txt for details of the BPMP binding.
|
||||
|
||||
This node represents a thermal sensor. See thermal.txt for details of the
|
||||
This node represents a thermal sensor. See Documentation/devicetree/bindings/thermal/thermal-sensor.yaml for details of the
|
||||
core thermal binding.
|
||||
|
||||
Required properties:
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user