mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 18:09:56 +00:00
ASoC: dt-bindings: add bindings for pm4125 audio codec
The audio codec IC is found on Qualcomm PM4125/PM2250 PMIC. It has TX and RX soundwire slave devices hence two files are added. Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org> Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com> Tested-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com> Link: https://patch.msgid.link/20250915-pm4125_audio_codec_v1-v4-1-b247b64eec52@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
committed by
Mark Brown
parent
b9cb410d48
commit
88d0d17192
134
Documentation/devicetree/bindings/sound/qcom,pm4125-codec.yaml
Normal file
134
Documentation/devicetree/bindings/sound/qcom,pm4125-codec.yaml
Normal file
@@ -0,0 +1,134 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/qcom,pm4125-codec.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Qualcomm PM4125 Audio Codec
|
||||
|
||||
maintainers:
|
||||
- Alexey Klimov <alexey.klimov@linaro.org>
|
||||
|
||||
description:
|
||||
The audio codec IC found on Qualcomm PM4125/PM2250 PMIC.
|
||||
It has RX and TX Soundwire slave devices.
|
||||
|
||||
allOf:
|
||||
- $ref: dai-common.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: qcom,pm4125-codec
|
||||
|
||||
reg:
|
||||
description:
|
||||
Specifies the SPMI base address for the audio codec peripherals. The
|
||||
address space contains reset register needed to power-on the codec.
|
||||
maxItems: 1
|
||||
|
||||
reg-names:
|
||||
maxItems: 1
|
||||
|
||||
vdd-io-supply:
|
||||
description: A reference to the 1.8V I/O supply
|
||||
|
||||
vdd-cp-supply:
|
||||
description: A reference to the charge pump I/O supply
|
||||
|
||||
vdd-mic-bias-supply:
|
||||
description: A reference to the 3.3V mic bias supply
|
||||
|
||||
vdd-pa-vpos-supply:
|
||||
description: A reference to the PA VPOS supply
|
||||
|
||||
qcom,tx-device:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
description: A reference to Soundwire tx device phandle
|
||||
|
||||
qcom,rx-device:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
description: A reference to Soundwire rx device phandle
|
||||
|
||||
qcom,micbias1-microvolt:
|
||||
description: micbias1 voltage
|
||||
minimum: 1800000
|
||||
maximum: 2850000
|
||||
|
||||
qcom,micbias2-microvolt:
|
||||
description: micbias2 voltage
|
||||
minimum: 1800000
|
||||
maximum: 2850000
|
||||
|
||||
qcom,micbias3-microvolt:
|
||||
description: micbias3 voltage
|
||||
minimum: 1800000
|
||||
maximum: 2850000
|
||||
|
||||
qcom,mbhc-buttons-vthreshold-microvolt:
|
||||
description:
|
||||
Array of 8 Voltage threshold values corresponding to headset
|
||||
button0 - button7
|
||||
minItems: 8
|
||||
maxItems: 8
|
||||
|
||||
'#sound-dai-cells':
|
||||
const: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- vdd-io-supply
|
||||
- vdd-cp-supply
|
||||
- vdd-mic-bias-supply
|
||||
- vdd-pa-vpos-supply
|
||||
- qcom,tx-device
|
||||
- qcom,rx-device
|
||||
- qcom,micbias1-microvolt
|
||||
- qcom,micbias2-microvolt
|
||||
- qcom,micbias3-microvolt
|
||||
- '#sound-dai-cells'
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/spmi/spmi.h>
|
||||
|
||||
spmi {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pmic {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
audio-codec@f000 {
|
||||
compatible = "qcom,pm4125-codec";
|
||||
reg = <0xf000>;
|
||||
vdd-io-supply = <&pm4125_l15>;
|
||||
vdd-cp-supply = <&pm4125_s4>;
|
||||
vdd-pa-vpos-supply = <&pm4125_s4>;
|
||||
vdd-mic-bias-supply = <&pm4125_l22>;
|
||||
qcom,micbias1-microvolt = <1800000>;
|
||||
qcom,micbias2-microvolt = <1800000>;
|
||||
qcom,micbias3-microvolt = <1800000>;
|
||||
qcom,rx-device = <&pm4125_rx>;
|
||||
qcom,tx-device = <&pm4125_tx>;
|
||||
#sound-dai-cells = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* ... */
|
||||
|
||||
soundwire@a610000 {
|
||||
reg = <0x0a610000 0x2000>;
|
||||
#address-cells = <2>;
|
||||
#size-cells = <0>;
|
||||
pm4125_rx: audio-codec@0,4 {
|
||||
compatible = "sdw20217010c00";
|
||||
reg = <0 4>;
|
||||
qcom,rx-port-mapping = <1 3>;
|
||||
};
|
||||
};
|
||||
...
|
||||
79
Documentation/devicetree/bindings/sound/qcom,pm4125-sdw.yaml
Normal file
79
Documentation/devicetree/bindings/sound/qcom,pm4125-sdw.yaml
Normal file
@@ -0,0 +1,79 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/qcom,pm4125-sdw.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Qualcomm SoundWire Slave devices on PM4125/PM2250 PMIC audio codec.
|
||||
|
||||
maintainers:
|
||||
- Alexey Klimov <alexey.klimov@linaro.org>
|
||||
|
||||
description:
|
||||
The audio codec IC found on Qualcomm PM4125/PM2250 PMICs.
|
||||
It has RX and TX Soundwire slave devices.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: sdw20217010c00
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
qcom,tx-port-mapping:
|
||||
description: |
|
||||
Specifies static port mapping between device and host tx ports.
|
||||
In the order of the device port index which are adc1_port, adc23_port,
|
||||
dmic03_mbhc_port, dmic46_port.
|
||||
Supports maximum 2 tx soundwire ports.
|
||||
|
||||
PM4125 TX Port 1 (ADC1,2 & DMIC0 & MBHC) <=> SWR0 Port 1
|
||||
PM4125 TX Port 2 (ADC1 & DMIC0,1,2 & MBHC) <=> SWR0 Port 2
|
||||
|
||||
$ref: /schemas/types.yaml#/definitions/uint32-array
|
||||
minItems: 2
|
||||
maxItems: 2
|
||||
items:
|
||||
enum: [1, 2, 3, 4]
|
||||
|
||||
qcom,rx-port-mapping:
|
||||
description: |
|
||||
Specifies static port mapping between device and host rx ports.
|
||||
In the order of device port index which are hph_port, clsh_port,
|
||||
comp_port, lo_port, dsd port.
|
||||
Supports maximum 2 rx soundwire ports.
|
||||
|
||||
PM4125 RX Port 1 (HPH_L/R) <==> SWR1 Port 1 (HPH_L/R)
|
||||
PM4125 RX Port 2 (COMP_L/R) <==> SWR1 Port 3 (COMP_L/R)
|
||||
|
||||
$ref: /schemas/types.yaml#/definitions/uint32-array
|
||||
minItems: 2
|
||||
maxItems: 2
|
||||
items:
|
||||
enum: [1, 2, 3, 4, 5]
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
oneOf:
|
||||
- required:
|
||||
- qcom,tx-port-mapping
|
||||
- required:
|
||||
- qcom,rx-port-mapping
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
soundwire@a610000 {
|
||||
reg = <0x0a610000 0x2000>;
|
||||
#address-cells = <2>;
|
||||
#size-cells = <0>;
|
||||
pm4125_rx: codec@0,1 {
|
||||
compatible = "sdw20217010c00";
|
||||
reg = <0 1>;
|
||||
qcom,rx-port-mapping = <1 3>;
|
||||
};
|
||||
};
|
||||
...
|
||||
Reference in New Issue
Block a user