1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (c) 2019 BayLibre SAS. All rights reserved.
4 * Author: Jerome Brunet <jbrunet@baylibre.com>
5 */
6
7/dts-v1/;
8
9#include "meson-gxm.dtsi"
10#include "meson-gx-libretech-pc.dtsi"
11
12/ {
13	compatible = "libretech,aml-s912-pc", "amlogic,s912",
14		     "amlogic,meson-gxm";
15	model = "Libre Computer AML-S912-PC";
16
17	typec2_vbus: regulator-typec2_vbus {
18		compatible = "regulator-fixed";
19		regulator-name = "TYPEC2_VBUS";
20		regulator-min-microvolt = <5000000>;
21		regulator-max-microvolt = <5000000>;
22		vin-supply = <&vcc5v>;
23
24		gpio = <&gpio GPIODV_1 GPIO_ACTIVE_HIGH>;
25		enable-active-high;
26	};
27};
28
29&pinctrl_periphs {
30	/*
31	 * Make sure the irq pin of the TYPE C controller is not driven
32	 * by the SoC.
33	 */
34	fusb302_irq_pins: fusb302_irq {
35		mux {
36			groups = "GPIODV_0";
37			function = "gpio_periphs";
38			bias-pull-up;
39			output-disable;
40		};
41	};
42};
43
44&i2c_C {
45	fusb302@22 {
46		compatible = "fcs,fusb302";
47		reg = <0x22>;
48
49		pinctrl-0 = <&fusb302_irq_pins>;
50		pinctrl-names = "default";
51		interrupt-parent = <&gpio_intc>;
52		interrupts = <59 IRQ_TYPE_LEVEL_LOW>;
53
54		vbus-supply = <&typec2_vbus>;
55
56		status = "okay";
57
58		connector {
59			compatible = "usb-c-connector";
60		};
61	};
62};
63
64&usb2_phy2 {
65	phy-supply = <&typec2_vbus>;
66};
67