// SPDX-License-Identifier: GPL-2.0
#include "qcom-ipq8064.dtsi"
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>

/ {
	model = "Qualcomm Technologies, Inc. IPQ8064-v1.0";

	aliases {
		serial0 = &gsbi4_serial;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	soc {
		gsbi@16300000 {
			qcom,mode = <GSBI_PROT_I2C_UART>;
			status = "okay";

			serial@16340000 {
				status = "okay";
			};
		};

		gsbi5: gsbi@1a200000 {
			qcom,mode = <GSBI_PROT_SPI>;
			status = "okay";

			spi4: spi@1a280000 {
				status = "okay";
				spi-max-frequency = <50000000>;

				pinctrl-0 = <&spi_pins>;
				pinctrl-names = "default";

				cs-gpios = <&qcom_pinmux 20 0>;

				flash: flash@0 {
					compatible = "s25fl256s1";
					#address-cells = <1>;
					#size-cells = <1>;
					spi-max-frequency = <50000000>;
					reg = <0>;

					partition@0 {
						label = "rootfs";
						reg = <0x0 0x1000000>;
					};

					partition@1 {
						label = "scratch";
						reg = <0x1000000 0x1000000>;
					};
				};
			};
		};

		sata-phy@1b400000 {
			status = "okay";
		};

		sata@29000000 {
			ports-implemented = <0x1>;
			status = "okay";
		};

		gpio-keys {
			compatible = "gpio-keys";
			pinctrl-0 = <&buttons_pins>;
			pinctrl-names = "default";

			button-1 {
				label = "reset";
				linux,code = <KEY_RESTART>;
				gpios = <&qcom_pinmux 54 GPIO_ACTIVE_LOW>;
				linux,input-type = <1>;
				debounce-interval = <60>;
			};
			button-2 {
				label = "wps";
				linux,code = <KEY_WPS_BUTTON>;
				gpios = <&qcom_pinmux 65 GPIO_ACTIVE_LOW>;
				linux,input-type = <1>;
				debounce-interval = <60>;
			};
		};

		leds {
			compatible = "gpio-leds";
			pinctrl-0 = <&leds_pins>;
			pinctrl-names = "default";

			led@7 {
				label = "led_usb1";
				gpios = <&qcom_pinmux 7 GPIO_ACTIVE_HIGH>;
				linux,default-trigger = "usbdev";
				default-state = "off";
			};

			led@8 {
				label = "led_usb3";
				gpios = <&qcom_pinmux 8 GPIO_ACTIVE_HIGH>;
				linux,default-trigger = "usbdev";
				default-state = "off";
			};

			led@9 {
				label = "status_led_fail";
				function = LED_FUNCTION_STATUS;
				gpios = <&qcom_pinmux 9 GPIO_ACTIVE_HIGH>;
				default-state = "off";
			};

			led@26 {
				label = "sata_led";
				gpios = <&qcom_pinmux 26 GPIO_ACTIVE_HIGH>;
				default-state = "off";
			};

			led@53 {
				label = "status_led_pass";
				function = LED_FUNCTION_STATUS;
				gpios = <&qcom_pinmux 53 GPIO_ACTIVE_HIGH>;
				default-state = "off";
			};
		};
	};
};
