mirror of
https://github.com/torvalds/linux.git
synced 2024-12-04 18:13:04 +00:00
761cab6678
Add the audio codec sub-device. This sub-device is used to set the optional voltage values according to the hardware. The properties are: - Setup of microphone bias voltage. - Setup of the speaker pin pull-down. Also, add the audio power supply property which is dedicated for the audio codec sub-device. Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com> Link: https://patch.msgid.link/20240226-audio-i350-v7-3-6518d953a141@baylibre.com Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Mark Brown <broonie@kernel.org>
136 lines
3.5 KiB
YAML
136 lines
3.5 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/mfd/mediatek,mt6357.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: MediaTek MT6357 PMIC
|
|
|
|
maintainers:
|
|
- Flora Fu <flora.fu@mediatek.com>
|
|
- Alexandre Mergnat <amergnat@baylibre.com>
|
|
|
|
description: |
|
|
MT6357 is a power management system chip containing 5 buck
|
|
converters and 29 LDOs. Supported features are audio codec,
|
|
USB battery charging, fuel gauge, RTC
|
|
|
|
This is a multifunction device with the following sub modules:
|
|
- Regulator
|
|
- RTC
|
|
- Keys
|
|
|
|
It is interfaced to host controller using SPI interface by a proprietary hardware
|
|
called PMIC wrapper or pwrap. This MFD is a child device of pwrap.
|
|
See the following for pwrap node definitions:
|
|
Documentation/devicetree/bindings/soc/mediatek/mediatek,pwrap.yaml
|
|
|
|
properties:
|
|
compatible:
|
|
const: mediatek,mt6357
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
interrupt-controller: true
|
|
|
|
"#interrupt-cells":
|
|
const: 2
|
|
|
|
mediatek,hp-pull-down:
|
|
description:
|
|
Earphone driver positive output stage short to
|
|
the audio reference ground.
|
|
type: boolean
|
|
|
|
mediatek,micbias0-microvolt:
|
|
description: Selects MIC Bias 0 output voltage.
|
|
enum: [1700000, 1800000, 1900000, 2000000,
|
|
2100000, 2500000, 2600000, 2700000]
|
|
default: 1700000
|
|
|
|
mediatek,micbias1-microvolt:
|
|
description: Selects MIC Bias 1 output voltage.
|
|
enum: [1700000, 1800000, 1900000, 2000000,
|
|
2100000, 2500000, 2600000, 2700000]
|
|
default: 1700000
|
|
|
|
regulators:
|
|
type: object
|
|
$ref: /schemas/regulator/mediatek,mt6357-regulator.yaml
|
|
unevaluatedProperties: false
|
|
description:
|
|
List of MT6357 BUCKs and LDOs regulators.
|
|
|
|
rtc:
|
|
type: object
|
|
$ref: /schemas/rtc/rtc.yaml#
|
|
unevaluatedProperties: false
|
|
description:
|
|
MT6357 Real Time Clock.
|
|
properties:
|
|
compatible:
|
|
const: mediatek,mt6357-rtc
|
|
start-year: true
|
|
required:
|
|
- compatible
|
|
|
|
keys:
|
|
type: object
|
|
$ref: /schemas/input/mediatek,pmic-keys.yaml
|
|
unevaluatedProperties: false
|
|
description:
|
|
MT6357 power and home keys.
|
|
|
|
required:
|
|
- compatible
|
|
- regulators
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
|
|
pwrap {
|
|
pmic {
|
|
compatible = "mediatek,mt6357";
|
|
|
|
interrupt-parent = <&pio>;
|
|
interrupts = <145 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <2>;
|
|
|
|
mediatek,micbias0-microvolt = <1700000>;
|
|
mediatek,micbias1-microvolt = <1700000>;
|
|
|
|
regulators {
|
|
mt6357_vproc_reg: buck-vproc {
|
|
regulator-name = "vproc";
|
|
regulator-min-microvolt = <518750>;
|
|
regulator-max-microvolt = <1312500>;
|
|
regulator-ramp-delay = <6250>;
|
|
regulator-enable-ramp-delay = <220>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
// ...
|
|
|
|
mt6357_vusb33_reg: ldo-vusb33 {
|
|
regulator-name = "vusb33";
|
|
regulator-min-microvolt = <3000000>;
|
|
regulator-max-microvolt = <3100000>;
|
|
regulator-enable-ramp-delay = <264>;
|
|
};
|
|
};
|
|
|
|
rtc {
|
|
compatible = "mediatek,mt6357-rtc";
|
|
};
|
|
|
|
keys {
|
|
compatible = "mediatek,mt6357-keys";
|
|
};
|
|
};
|
|
};
|