// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2022, Collabora Ltd
 * Author: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
 */

/dts-v1/;
#include "mt6795.dtsi"

/ {
	model = "Sony Xperia M5";
	compatible = "sony,xperia-m5", "mediatek,mt6795";
	chassis-type = "handset";

	aliases {
		mmc0 = &mmc0;
		mmc1 = &mmc1;
		serial0 = &uart0;
		serial1 = &uart1;
	};

	memory@40000000 {
		device_type = "memory";
		reg = <0 0x40000000 0 0x1e800000>;
	};

	reserved_memory: reserved-memory {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;

		/* 128 KiB reserved for ARM Trusted Firmware (BL31) */
		bl31_secmon_reserved: secmon@43000000 {
			reg = <0 0x43000000 0 0x30000>;
			no-map;
		};

		/* preloader and bootloader regions cannot be touched */
		preloader-region@44800000 {
			reg = <0 0x44800000 0 0x100000>;
			no-map;
		};

		bootloader-region@46000000 {
			reg = <0 0x46000000 0 0x400000>;
			no-map;
		};
	};
};

&pio {
	uart0_pins: uart0-pins {
		pins-rx {
			pinmux = <PINMUX_GPIO113__FUNC_URXD0>;
			bias-pull-up;
			input-enable;
		};
		pins-tx {
			pinmux = <PINMUX_GPIO114__FUNC_UTXD0>;
			output-high;
		};
	};

	uart2_pins: uart2-pins {
		pins-rx {
			pinmux = <PINMUX_GPIO31__FUNC_URXD2>;
			bias-pull-up;
			input-enable;
		};
		pins-tx {
			pinmux = <PINMUX_GPIO32__FUNC_UTXD2>;
		};
	};
};

&uart0 {
	status = "okay";

	pinctrl-names = "default";
	pinctrl-0 = <&uart0_pins>;
};

&uart2 {
	status = "okay";

	pinctrl-names = "default";
	pinctrl-0 = <&uart2_pins>;
};
