162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci
362306a36Sopenharmony_ci#include <dt-bindings/clock/maxim,max9485.h>
462306a36Sopenharmony_ci
562306a36Sopenharmony_ci/ {
662306a36Sopenharmony_ci	xo_27mhz: oscillator-27mhz {
762306a36Sopenharmony_ci		compatible = "fixed-clock";
862306a36Sopenharmony_ci		#clock-cells = <0>;
962306a36Sopenharmony_ci		clock-frequency = <27000000>;
1062306a36Sopenharmony_ci		clock-accuracy = <100>;
1162306a36Sopenharmony_ci	};
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci	sound {
1462306a36Sopenharmony_ci		compatible = "simple-audio-card";
1562306a36Sopenharmony_ci		simple-audio-card,name = "Raumfeld Speaker";
1662306a36Sopenharmony_ci		#address-cells = <1>;
1762306a36Sopenharmony_ci		#size-cells = <0>;
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci		simple-audio-card,dai-link@0 {
2062306a36Sopenharmony_ci			reg = <0>;
2162306a36Sopenharmony_ci			format = "i2s";
2262306a36Sopenharmony_ci			bitclock-master = <&dailink_master_analog>;
2362306a36Sopenharmony_ci			frame-master = <&dailink_master_analog>;
2462306a36Sopenharmony_ci			mclk-fs = <256>;
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ci			dailink_master_analog: cpu {
2762306a36Sopenharmony_ci				sound-dai = <&ssp_dai0>;
2862306a36Sopenharmony_ci			};
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci			codec {
3162306a36Sopenharmony_ci				sound-dai = <&cs4270>;
3262306a36Sopenharmony_ci			};
3362306a36Sopenharmony_ci		};
3462306a36Sopenharmony_ci	};
3562306a36Sopenharmony_ci};
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci&ssp_dai0 {
3862306a36Sopenharmony_ci	clocks = <&max9485 MAX9485_CLKOUT1>;
3962306a36Sopenharmony_ci};
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci&ssp_dai1 {
4262306a36Sopenharmony_ci	clocks = <&max9485 MAX9485_CLKOUT1>;
4362306a36Sopenharmony_ci};
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ci&pxai2c1 {
4662306a36Sopenharmony_ci	cs4270: codec@48 {
4762306a36Sopenharmony_ci		compatible = "cirrus,cs4270";
4862306a36Sopenharmony_ci		pinctrl-names = "default";
4962306a36Sopenharmony_ci		pinctrl-0 = <&cs4270_pins>;
5062306a36Sopenharmony_ci		reg = <0x48>;
5162306a36Sopenharmony_ci		va-supply = <&reg_va_5v0>;
5262306a36Sopenharmony_ci		vd-supply = <&reg_3v3>;
5362306a36Sopenharmony_ci		vlc-supply = <&reg_3v3>;
5462306a36Sopenharmony_ci		reset-gpios = <&gpio 120 GPIO_ACTIVE_HIGH>;
5562306a36Sopenharmony_ci		#sound-dai-cells = <0>;
5662306a36Sopenharmony_ci	};
5762306a36Sopenharmony_ci
5862306a36Sopenharmony_ci	max9485: clock-generator@63 {
5962306a36Sopenharmony_ci		compatible = "maxim,max9485";
6062306a36Sopenharmony_ci		pinctrl-names = "default";
6162306a36Sopenharmony_ci		pinctrl-0 = <&max9485_pins>;
6262306a36Sopenharmony_ci		reg = <0x63>;
6362306a36Sopenharmony_ci		vdd-supply = <&reg_3v3>;
6462306a36Sopenharmony_ci		clock-names = "xclk";
6562306a36Sopenharmony_ci		clocks = <&xo_27mhz>;
6662306a36Sopenharmony_ci		reset-gpios = <&gpio 111 GPIO_ACTIVE_HIGH>;
6762306a36Sopenharmony_ci		#clock-cells = <1>;
6862306a36Sopenharmony_ci	};
6962306a36Sopenharmony_ci};
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci&pinctrl {
7262306a36Sopenharmony_ci	cs4270_pins: cs4270-pins {
7362306a36Sopenharmony_ci		pinctrl-single,pins = <
7462306a36Sopenharmony_ci			MFP_PIN_PXA300(120) MFP_AF0	/* RESET */
7562306a36Sopenharmony_ci		>;
7662306a36Sopenharmony_ci		pinctrl-single,low-power-mode = MFP_LPM(MFP_LPM_PULL_LOW);
7762306a36Sopenharmony_ci	};
7862306a36Sopenharmony_ci
7962306a36Sopenharmony_ci	max9485_pins: max9485-pins {
8062306a36Sopenharmony_ci		pinctrl-single,pins = <
8162306a36Sopenharmony_ci			MFP_PIN_PXA300(111) MFP_AF0	/* RESET */
8262306a36Sopenharmony_ci		>;
8362306a36Sopenharmony_ci		pinctrl-single,low-power-mode = MFP_LPM(MFP_LPM_PULL_LOW);
8462306a36Sopenharmony_ci	};
8562306a36Sopenharmony_ci};
86