xref: /freebsd/sys/contrib/device-tree/src/arm64/amlogic/meson-g12b-a311d-khadas-vim3.dts (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*c66ec88fSEmmanuel Vadot/*
3*c66ec88fSEmmanuel Vadot * Copyright (c) 2019 BayLibre, SAS
4*c66ec88fSEmmanuel Vadot * Author: Neil Armstrong <narmstrong@baylibre.com>
5*c66ec88fSEmmanuel Vadot * Copyright (c) 2019 Christian Hewitt <christianshewitt@gmail.com>
6*c66ec88fSEmmanuel Vadot */
7*c66ec88fSEmmanuel Vadot
8*c66ec88fSEmmanuel Vadot/dts-v1/;
9*c66ec88fSEmmanuel Vadot
10*c66ec88fSEmmanuel Vadot#include "meson-g12b-a311d.dtsi"
11*c66ec88fSEmmanuel Vadot#include "meson-khadas-vim3.dtsi"
12*c66ec88fSEmmanuel Vadot#include "meson-g12b-khadas-vim3.dtsi"
13*c66ec88fSEmmanuel Vadot
14*c66ec88fSEmmanuel Vadot/ {
15*c66ec88fSEmmanuel Vadot	compatible = "khadas,vim3", "amlogic,a311d", "amlogic,g12b";
16*c66ec88fSEmmanuel Vadot};
17*c66ec88fSEmmanuel Vadot
18*c66ec88fSEmmanuel Vadot/*
19*c66ec88fSEmmanuel Vadot * The VIM3 on-board  MCU can mux the PCIe/USB3.0 shared differential
20*c66ec88fSEmmanuel Vadot * lines using a FUSB340TMX USB 3.1 SuperSpeed Data Switch between
21*c66ec88fSEmmanuel Vadot * an USB3.0 Type A connector and a M.2 Key M slot.
22*c66ec88fSEmmanuel Vadot * The PHY driving these differential lines is shared between
23*c66ec88fSEmmanuel Vadot * the USB3.0 controller and the PCIe Controller, thus only
24*c66ec88fSEmmanuel Vadot * a single controller can use it.
25*c66ec88fSEmmanuel Vadot * If the MCU is configured to mux the PCIe/USB3.0 differential lines
26*c66ec88fSEmmanuel Vadot * to the M.2 Key M slot, uncomment the following block to disable
27*c66ec88fSEmmanuel Vadot * USB3.0 from the USB Complex and enable the PCIe controller.
28*c66ec88fSEmmanuel Vadot * The End User is not expected to uncomment the following except for
29*c66ec88fSEmmanuel Vadot * testing purposes, but instead rely on the firmware/bootloader to
30*c66ec88fSEmmanuel Vadot * update these nodes accordingly if PCIe mode is selected by the MCU.
31*c66ec88fSEmmanuel Vadot */
32*c66ec88fSEmmanuel Vadot/*
33*c66ec88fSEmmanuel Vadot&pcie {
34*c66ec88fSEmmanuel Vadot	status = "okay";
35*c66ec88fSEmmanuel Vadot};
36*c66ec88fSEmmanuel Vadot
37*c66ec88fSEmmanuel Vadot&usb {
38*c66ec88fSEmmanuel Vadot	phys = <&usb2_phy0>, <&usb2_phy1>;
39*c66ec88fSEmmanuel Vadot	phy-names = "usb2-phy0", "usb2-phy1";
40*c66ec88fSEmmanuel Vadot};
41*c66ec88fSEmmanuel Vadot */
42