@@ -10,6 +10,11 @@ / {
compatible = "google,tomato-rev1", "google,tomato", "mediatek,mt8195";
};
+&audio_codec {
+ compatible = "realtek,rt5682i";
+ realtek,btndet-delay = <16>;
+};
+
&ts_10 {
status = "okay";
};
@@ -10,6 +10,11 @@ / {
compatible = "google,tomato-rev2", "google,tomato", "mediatek,mt8195";
};
+&audio_codec {
+ compatible = "realtek,rt5682i";
+ realtek,btndet-delay = <16>;
+};
+
&pio_default {
pins-low-power-hdmi-disable {
pinmux = <PINMUX_GPIO31__FUNC_GPIO31>,
@@ -11,6 +11,11 @@ / {
"google,tomato", "mediatek,mt8195";
};
+&audio_codec {
+ compatible = "realtek,rt5682s";
+ realtek,amic-delay-ms = <250>;
+};
+
&pio_default {
pins-low-power-hdmi-disable {
pinmux = <PINMUX_GPIO31__FUNC_GPIO31>,
@@ -26,6 +26,12 @@ chosen {
stdout-path = "serial0:115200n8";
};
+ dmic-codec {
+ compatible = "dmic-codec";
+ num-channels = <2>;
+ wakeup-delay-ms = <50>;
+ };
+
memory@40000000 {
device_type = "memory";
reg = <0 0x40000000 0 0x80000000>;
@@ -136,6 +142,14 @@ adsp_device_mem: memory@60e80000 {
no-map;
};
};
+
+ spk_amplifier: rt1019p {
+ compatible = "realtek,rt1019p";
+ label = "rt1019p";
+ pinctrl-names = "default";
+ pinctrl-0 = <&rt1019p_pins_default>;
+ sdb-gpios = <&pio 100 GPIO_ACTIVE_HIGH>;
+ };
};
&adsp {
@@ -185,6 +199,17 @@ &i2c2 {
clock-frequency = <400000>;
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins>;
+
+ audio_codec: codec@1a {
+ /* Realtek RT5682i or RT5682s, sharing the same configuration */
+ reg = <0x1a>;
+ interrupts-extended = <&pio 89 IRQ_TYPE_EDGE_BOTH>;
+ realtek,jd-src = <1>;
+
+ AVDD-supply = <&mt6359_vio18_ldo_reg>;
+ MICVDD-supply = <&pp3300_z2>;
+ VBAT-supply = <&pp3300_z5>;
+ };
};
&i2c3 {
@@ -289,6 +314,11 @@ &mmc1 {
vqmmc-supply = <&mt_pmic_vmc_ldo_reg>;
};
+&mt6359codec {
+ mediatek,dmic-mode = <1>; /* one-wire */
+ mediatek,mic-type-0 = <2>; /* DMIC */
+};
+
/* for CPU-L */
&mt6359_vcore_buck_reg {
regulator-always-on;
@@ -723,6 +753,13 @@ pins-low-power-pupd {
};
};
+ rt1019p_pins_default: rt1019p-default-pins {
+ pins-amp-sdb {
+ pinmux = <PINMUX_GPIO100__FUNC_GPIO100>;
+ output-low;
+ };
+ };
+
scp_pins: scp-default-pins {
pins-vreq {
pinmux = <PINMUX_GPIO76__FUNC_SCP_VREQ_VAO>;
The entire Cherry family has two digital microphones, for which we use the generic dmic-codec, linked to the MT6359 PMIC. Moreover, it uses a Realtek RT1019p amplifier for the speakers and has either a Realtek RT5682i or RT5682s audio codec on I2C2: specifically, RT5682i is found on Tomato's rev 1 and rev 2 boards, while RT5682s is found in rev3 and rev4 boards. Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> --- .../dts/mediatek/mt8195-cherry-tomato-r1.dts | 5 +++ .../dts/mediatek/mt8195-cherry-tomato-r2.dts | 5 +++ .../dts/mediatek/mt8195-cherry-tomato-r3.dts | 5 +++ .../boot/dts/mediatek/mt8195-cherry.dtsi | 37 +++++++++++++++++++ 4 files changed, 52 insertions(+)