1865a0d06SJerome Brunet// SPDX-License-Identifier: GPL-2.0
2865a0d06SJerome Brunet/*
3865a0d06SJerome Brunet * Copyright (c) 2019 BayLibre SAS. All rights reserved.
4865a0d06SJerome Brunet * Author: Jerome Brunet <jbrunet@baylibre.com>
5865a0d06SJerome Brunet */
6865a0d06SJerome Brunet
7865a0d06SJerome Brunet/dts-v1/;
8865a0d06SJerome Brunet
9865a0d06SJerome Brunet#include "meson-gxm.dtsi"
10865a0d06SJerome Brunet#include "meson-gx-libretech-pc.dtsi"
11865a0d06SJerome Brunet
12865a0d06SJerome Brunet/ {
13865a0d06SJerome Brunet	compatible = "libretech,aml-s912-pc", "amlogic,s912",
14865a0d06SJerome Brunet		     "amlogic,meson-gxm";
15865a0d06SJerome Brunet	model = "Libre Computer AML-S912-PC";
16865a0d06SJerome Brunet
17865a0d06SJerome Brunet	typec2_vbus: regulator-typec2_vbus {
18865a0d06SJerome Brunet		compatible = "regulator-fixed";
19865a0d06SJerome Brunet		regulator-name = "TYPEC2_VBUS";
20865a0d06SJerome Brunet		regulator-min-microvolt = <5000000>;
21865a0d06SJerome Brunet		regulator-max-microvolt = <5000000>;
22865a0d06SJerome Brunet		vin-supply = <&vcc5v>;
23865a0d06SJerome Brunet
24865a0d06SJerome Brunet		gpio = <&gpio GPIODV_1 GPIO_ACTIVE_HIGH>;
25865a0d06SJerome Brunet		enable-active-high;
26865a0d06SJerome Brunet	};
27865a0d06SJerome Brunet};
28865a0d06SJerome Brunet
29865a0d06SJerome Brunet&pinctrl_periphs {
30865a0d06SJerome Brunet	/*
31865a0d06SJerome Brunet	 * Make sure the irq pin of the TYPE C controller is not driven
32865a0d06SJerome Brunet	 * by the SoC.
33865a0d06SJerome Brunet	 */
34865a0d06SJerome Brunet	fusb302_irq_pins: fusb302_irq {
35865a0d06SJerome Brunet		mux {
36865a0d06SJerome Brunet			groups = "GPIODV_0";
37865a0d06SJerome Brunet			function = "gpio_periphs";
38865a0d06SJerome Brunet			bias-pull-up;
39865a0d06SJerome Brunet			output-disable;
40865a0d06SJerome Brunet		};
41865a0d06SJerome Brunet	};
42865a0d06SJerome Brunet};
43865a0d06SJerome Brunet
44865a0d06SJerome Brunet&i2c_C {
45865a0d06SJerome Brunet	fusb302@22 {
46865a0d06SJerome Brunet		compatible = "fcs,fusb302";
47865a0d06SJerome Brunet		reg = <0x22>;
48865a0d06SJerome Brunet
49865a0d06SJerome Brunet		pinctrl-0 = <&fusb302_irq_pins>;
50865a0d06SJerome Brunet		pinctrl-names = "default";
51865a0d06SJerome Brunet		interrupt-parent = <&gpio_intc>;
52865a0d06SJerome Brunet		interrupts = <59 IRQ_TYPE_LEVEL_LOW>;
53865a0d06SJerome Brunet
54865a0d06SJerome Brunet		vbus-supply = <&typec2_vbus>;
55865a0d06SJerome Brunet
56865a0d06SJerome Brunet		status = "okay";
57*d7ff22a6SNeil Armstrong
58*d7ff22a6SNeil Armstrong		connector {
59*d7ff22a6SNeil Armstrong			compatible = "usb-c-connector";
60*d7ff22a6SNeil Armstrong		};
61865a0d06SJerome Brunet	};
62865a0d06SJerome Brunet};
63865a0d06SJerome Brunet
64865a0d06SJerome Brunet&usb2_phy2 {
65865a0d06SJerome Brunet	phy-supply = <&typec2_vbus>;
66865a0d06SJerome Brunet};
67