137 lines
4.2 KiB
Plaintext
137 lines
4.2 KiB
Plaintext
/dts-v1/;
|
|
/plugin/;
|
|
|
|
/ {
|
|
compatible = "brcm,bcm2712";
|
|
|
|
fragment@0 {
|
|
target = <&i2s_clk_producer>;
|
|
__overlay__ {
|
|
status = "okay";
|
|
};
|
|
};
|
|
|
|
fragment@1 {
|
|
target-path = "/";
|
|
__overlay__ {
|
|
tlv320_dvdd: regulator-tlv320-dvdd {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "tlv320-dvdd-1v8";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
tlv320_iovdd: regulator-tlv320-iovdd {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "tlv320-iovdd-3v3";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
tlv320_avdd: regulator-tlv320-avdd {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "tlv320-avdd-3v3";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
tlv320_hpvdd: regulator-tlv320-hpvdd {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "tlv320-hpvdd-3v3";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
tlv320_spkvdd: regulator-tlv320-spkvdd {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "tlv320-spkvdd-5v0";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
/*
|
|
* The T5848 is a control-less I2S microphone from Linux's point
|
|
* of view, so use the generic ICS43432 codec DAI as a simple
|
|
* capture endpoint and keep the speaker path unchanged.
|
|
*/
|
|
mic_codec: t5848-codec {
|
|
compatible = "invensense,ics43432";
|
|
#sound-dai-cells = <0>;
|
|
};
|
|
};
|
|
};
|
|
|
|
fragment@2 {
|
|
target = <&i2c_arm>;
|
|
__overlay__ {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
status = "okay";
|
|
|
|
dac_codec: tlv320dac3100@18 {
|
|
compatible = "ti,tlv320dac3100";
|
|
reg = <0x18>;
|
|
#sound-dai-cells = <0>;
|
|
AVDD-supply = <&tlv320_avdd>;
|
|
IOVDD-supply = <&tlv320_iovdd>;
|
|
DVDD-supply = <&tlv320_dvdd>;
|
|
HPVDD-supply = <&tlv320_hpvdd>;
|
|
SPLVDD-supply = <&tlv320_spkvdd>;
|
|
SPRVDD-supply = <&tlv320_spkvdd>;
|
|
reset-gpios = <&gpio 12 1>; /* GPIO_ACTIVE_LOW */
|
|
ti,pll-clkin-src = <1>;
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
fragment@3 {
|
|
target-path = "/";
|
|
__overlay__ {
|
|
sound {
|
|
compatible = "simple-audio-card";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
simple-audio-card,name = "toesaudio";
|
|
simple-audio-card,format = "i2s";
|
|
status = "okay";
|
|
|
|
simple-audio-card,dai-link@0 {
|
|
reg = <0>;
|
|
format = "i2s";
|
|
bitclock-master = <&cpu0>;
|
|
frame-master = <&cpu0>;
|
|
|
|
cpu0: cpu {
|
|
sound-dai = <&i2s_clk_producer>;
|
|
};
|
|
|
|
codec0: codec {
|
|
sound-dai = <&dac_codec>;
|
|
system-clock-frequency = <1536000>;
|
|
};
|
|
};
|
|
|
|
simple-audio-card,dai-link@1 {
|
|
reg = <1>;
|
|
format = "i2s";
|
|
bitclock-master = <&cpu1>;
|
|
frame-master = <&cpu1>;
|
|
|
|
cpu1: cpu {
|
|
sound-dai = <&i2s_clk_producer>;
|
|
};
|
|
|
|
codec1: codec {
|
|
sound-dai = <&mic_codec>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}; |