// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
/*
 * Tesla FSD board device tree source
 *
 * Copyright (c) 2017-2021 Samsung Electronics Co., Ltd.
 *		https://www.samsung.com
 * Copyright (c) 2017-2021 Tesla, Inc.
 *		https://www.tesla.com
 */

/dts-v1/;
#include "fsd.dtsi"
#include <dt-bindings/gpio/gpio.h>

/ {
	model = "Tesla Full Self-Driving (FSD) Evaluation board";
	compatible = "tesla,fsd-evb", "tesla,fsd";

	aliases {
		serial0 = &serial_0;
		serial1 = &serial_1;
	};

	chosen {
		stdout-path = &serial_0;
	};

	memory@80000000 {
		device_type = "memory";
		reg = <0x0 0x80000000 0x2 0x00000000>;
	};

	sound {
		compatible = "simple-audio-card";

		#address-cells = <1>;
		#size-cells = <0>;

		simple-audio-card,name = "FSD Audio Card";
		simple-audio-card,widgets = "Line", "Line Out",
					    "Line", "Line In";
		simple-audio-card,routing = "Line Out", "LLOUT",
					    "Line Out", "RLOUT",
					    "MIC2L", "Line In",
					    "MIC2R", "Line In";

		simple-audio-card,dai-link@0 {
			reg = <0>;
			format = "i2s";
			bitclock-master = <&tlv320aic3x>;
			frame-master = <&tlv320aic3x>;

			cpu-0 {
				sound-dai = <&i2s_0 0>;
			};
			cpu-1 {
				sound-dai = <&i2s_0 1>;
			};
			codec {
				sound-dai = <&tlv320aic3x>;
				system-clock-frequency = <33000000>;
			};
		};
	};
};

&fin_pll {
	clock-frequency = <24000000>;
};

&hsi2c_5 {
	status = "okay";

	tlv320aic3x: codec@18 {
		compatible = "ti,tlv320aic3104";
		reg = <0x18>;
		#sound-dai-cells = <0>;
		reset-gpios = <&gpg1 6 GPIO_ACTIVE_LOW>;
	};
};

&i2s_0 {
	status = "okay";
};

&i2s_1 {
	status = "okay";
};

&m_can0 {
	status = "okay";
};

&m_can1 {
	status = "okay";
};

&m_can2 {
	status = "okay";
};

&m_can3 {
	status = "okay";
};

&serial_0 {
	status = "okay";
};

&ufs {
	status = "okay";
};