// SPDX-License-Identifier: (GPL-2.0+ OR X11)
/*
 * Copyright 2020 Paul Kocialkowski <contact@paulk.fr>
 */

/dts-v1/;

#include "sun8i-v3.dtsi"

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>

/ {
	model = "SL631 Action Camera";
	compatible = "allwinner,sl631", "allwinner,sun8i-v3";

	aliases {
		serial0 = &uart1;
	};

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

&i2c0 {
	status = "okay";

	axp209: pmic@34 {
		reg = <0x34>;
		interrupt-parent = <&nmi_intc>;
		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
	};
};

&i2c1 {
	pinctrl-names = "default";
	pinctrl-0 = <&i2c1_pb_pins>;
	status = "okay";
};

&lradc {
	vref-supply = <&reg_ldo2>;
	status = "okay";

	button-174 {
		label = "Down";
		linux,code = <KEY_DOWN>;
		channel = <0>;
		voltage = <174603>;
	};

	button-384 {
		label = "Up";
		linux,code = <KEY_UP>;
		channel = <0>;
		voltage = <384126>;
	};

	button-593 {
		label = "OK";
		linux,code = <KEY_OK>;
		channel = <0>;
		voltage = <593650>;
	};
};

&mmc0 {
	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
	bus-width = <4>;
	vmmc-supply = <&reg_dcdc3>;
	status = "okay";
};

&pio {
	vcc-pd-supply = <&reg_dcdc3>;
	vcc-pe-supply = <&reg_dcdc3>;
};

#include "axp209.dtsi"

&ac_power_supply {
	status = "okay";
};

&battery_power_supply {
	status = "okay";
};

&reg_dcdc2 {
	regulator-always-on;
	regulator-min-microvolt = <1250000>;
	regulator-max-microvolt = <1250000>;
	regulator-name = "vdd-sys-cpu";
};

&reg_dcdc3 {
	regulator-always-on;
	regulator-min-microvolt = <3300000>;
	regulator-max-microvolt = <3300000>;
	regulator-name = "vdd-3v3";
};

&reg_ldo1 {
	regulator-name = "vdd-rtc";
};

&reg_ldo2 {
	regulator-always-on;
	regulator-min-microvolt = <3000000>;
	regulator-max-microvolt = <3000000>;
	regulator-name = "avcc";
};

&spi0 {
	status = "okay";

	spi-flash@0 {
		reg = <0>;
		compatible = "jedec,spi-nor";
		spi-max-frequency = <50000000>;
	};
};

&uart1 {
	pinctrl-0 = <&uart1_pg_pins>;
	pinctrl-names = "default";
	status = "okay";
};

&usb_otg {
	dr_mode = "peripheral";
	status = "okay";
};

&usbphy {
	status = "okay";
};
