xref: /freebsd/sys/contrib/device-tree/src/arm/allwinner/sun8i-v3-sl631.dtsi (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR X11)
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright 2020 Paul Kocialkowski <contact@paulk.fr>
4*f126890aSEmmanuel Vadot */
5*f126890aSEmmanuel Vadot
6*f126890aSEmmanuel Vadot/dts-v1/;
7*f126890aSEmmanuel Vadot
8*f126890aSEmmanuel Vadot#include "sun8i-v3.dtsi"
9*f126890aSEmmanuel Vadot
10*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
11*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
12*f126890aSEmmanuel Vadot
13*f126890aSEmmanuel Vadot/ {
14*f126890aSEmmanuel Vadot	model = "SL631 Action Camera";
15*f126890aSEmmanuel Vadot	compatible = "allwinner,sl631", "allwinner,sun8i-v3";
16*f126890aSEmmanuel Vadot
17*f126890aSEmmanuel Vadot	aliases {
18*f126890aSEmmanuel Vadot		serial0 = &uart1;
19*f126890aSEmmanuel Vadot	};
20*f126890aSEmmanuel Vadot
21*f126890aSEmmanuel Vadot	chosen {
22*f126890aSEmmanuel Vadot		stdout-path = "serial0:115200n8";
23*f126890aSEmmanuel Vadot	};
24*f126890aSEmmanuel Vadot};
25*f126890aSEmmanuel Vadot
26*f126890aSEmmanuel Vadot&i2c0 {
27*f126890aSEmmanuel Vadot	status = "okay";
28*f126890aSEmmanuel Vadot
29*f126890aSEmmanuel Vadot	axp209: pmic@34 {
30*f126890aSEmmanuel Vadot		reg = <0x34>;
31*f126890aSEmmanuel Vadot		interrupt-parent = <&nmi_intc>;
32*f126890aSEmmanuel Vadot		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
33*f126890aSEmmanuel Vadot	};
34*f126890aSEmmanuel Vadot};
35*f126890aSEmmanuel Vadot
36*f126890aSEmmanuel Vadot&i2c1 {
37*f126890aSEmmanuel Vadot	pinctrl-names = "default";
38*f126890aSEmmanuel Vadot	pinctrl-0 = <&i2c1_pb_pins>;
39*f126890aSEmmanuel Vadot	status = "okay";
40*f126890aSEmmanuel Vadot};
41*f126890aSEmmanuel Vadot
42*f126890aSEmmanuel Vadot&lradc {
43*f126890aSEmmanuel Vadot	vref-supply = <&reg_ldo2>;
44*f126890aSEmmanuel Vadot	status = "okay";
45*f126890aSEmmanuel Vadot
46*f126890aSEmmanuel Vadot	button-174 {
47*f126890aSEmmanuel Vadot		label = "Down";
48*f126890aSEmmanuel Vadot		linux,code = <KEY_DOWN>;
49*f126890aSEmmanuel Vadot		channel = <0>;
50*f126890aSEmmanuel Vadot		voltage = <174603>;
51*f126890aSEmmanuel Vadot	};
52*f126890aSEmmanuel Vadot
53*f126890aSEmmanuel Vadot	button-384 {
54*f126890aSEmmanuel Vadot		label = "Up";
55*f126890aSEmmanuel Vadot		linux,code = <KEY_UP>;
56*f126890aSEmmanuel Vadot		channel = <0>;
57*f126890aSEmmanuel Vadot		voltage = <384126>;
58*f126890aSEmmanuel Vadot	};
59*f126890aSEmmanuel Vadot
60*f126890aSEmmanuel Vadot	button-593 {
61*f126890aSEmmanuel Vadot		label = "OK";
62*f126890aSEmmanuel Vadot		linux,code = <KEY_OK>;
63*f126890aSEmmanuel Vadot		channel = <0>;
64*f126890aSEmmanuel Vadot		voltage = <593650>;
65*f126890aSEmmanuel Vadot	};
66*f126890aSEmmanuel Vadot};
67*f126890aSEmmanuel Vadot
68*f126890aSEmmanuel Vadot&mmc0 {
69*f126890aSEmmanuel Vadot	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
70*f126890aSEmmanuel Vadot	bus-width = <4>;
71*f126890aSEmmanuel Vadot	vmmc-supply = <&reg_dcdc3>;
72*f126890aSEmmanuel Vadot	status = "okay";
73*f126890aSEmmanuel Vadot};
74*f126890aSEmmanuel Vadot
75*f126890aSEmmanuel Vadot&pio {
76*f126890aSEmmanuel Vadot	vcc-pd-supply = <&reg_dcdc3>;
77*f126890aSEmmanuel Vadot	vcc-pe-supply = <&reg_dcdc3>;
78*f126890aSEmmanuel Vadot};
79*f126890aSEmmanuel Vadot
80*f126890aSEmmanuel Vadot#include "axp209.dtsi"
81*f126890aSEmmanuel Vadot
82*f126890aSEmmanuel Vadot&ac_power_supply {
83*f126890aSEmmanuel Vadot	status = "okay";
84*f126890aSEmmanuel Vadot};
85*f126890aSEmmanuel Vadot
86*f126890aSEmmanuel Vadot&battery_power_supply {
87*f126890aSEmmanuel Vadot	status = "okay";
88*f126890aSEmmanuel Vadot};
89*f126890aSEmmanuel Vadot
90*f126890aSEmmanuel Vadot&reg_dcdc2 {
91*f126890aSEmmanuel Vadot	regulator-always-on;
92*f126890aSEmmanuel Vadot	regulator-min-microvolt = <1250000>;
93*f126890aSEmmanuel Vadot	regulator-max-microvolt = <1250000>;
94*f126890aSEmmanuel Vadot	regulator-name = "vdd-sys-cpu";
95*f126890aSEmmanuel Vadot};
96*f126890aSEmmanuel Vadot
97*f126890aSEmmanuel Vadot&reg_dcdc3 {
98*f126890aSEmmanuel Vadot	regulator-always-on;
99*f126890aSEmmanuel Vadot	regulator-min-microvolt = <3300000>;
100*f126890aSEmmanuel Vadot	regulator-max-microvolt = <3300000>;
101*f126890aSEmmanuel Vadot	regulator-name = "vdd-3v3";
102*f126890aSEmmanuel Vadot};
103*f126890aSEmmanuel Vadot
104*f126890aSEmmanuel Vadot&reg_ldo1 {
105*f126890aSEmmanuel Vadot	regulator-name = "vdd-rtc";
106*f126890aSEmmanuel Vadot};
107*f126890aSEmmanuel Vadot
108*f126890aSEmmanuel Vadot&reg_ldo2 {
109*f126890aSEmmanuel Vadot	regulator-always-on;
110*f126890aSEmmanuel Vadot	regulator-min-microvolt = <3000000>;
111*f126890aSEmmanuel Vadot	regulator-max-microvolt = <3000000>;
112*f126890aSEmmanuel Vadot	regulator-name = "avcc";
113*f126890aSEmmanuel Vadot};
114*f126890aSEmmanuel Vadot
115*f126890aSEmmanuel Vadot&spi0 {
116*f126890aSEmmanuel Vadot	status = "okay";
117*f126890aSEmmanuel Vadot
118*f126890aSEmmanuel Vadot	flash@0 {
119*f126890aSEmmanuel Vadot		reg = <0>;
120*f126890aSEmmanuel Vadot		compatible = "jedec,spi-nor";
121*f126890aSEmmanuel Vadot		spi-max-frequency = <50000000>;
122*f126890aSEmmanuel Vadot	};
123*f126890aSEmmanuel Vadot};
124*f126890aSEmmanuel Vadot
125*f126890aSEmmanuel Vadot&uart1 {
126*f126890aSEmmanuel Vadot	pinctrl-0 = <&uart1_pg_pins>;
127*f126890aSEmmanuel Vadot	pinctrl-names = "default";
128*f126890aSEmmanuel Vadot	status = "okay";
129*f126890aSEmmanuel Vadot};
130*f126890aSEmmanuel Vadot
131*f126890aSEmmanuel Vadot&usb_otg {
132*f126890aSEmmanuel Vadot	dr_mode = "peripheral";
133*f126890aSEmmanuel Vadot	status = "okay";
134*f126890aSEmmanuel Vadot};
135*f126890aSEmmanuel Vadot
136*f126890aSEmmanuel Vadot&usbphy {
137*f126890aSEmmanuel Vadot	status = "okay";
138*f126890aSEmmanuel Vadot};
139