mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-27 20:38:52 +09:00
![Marek Behún](/assets/img/avatar_default.png)
This adds basic support for the Turris Mox board from CZ.NIC, which is currently being crowdfunded on Indiegogo. Turris Mox is as modular router based on the Armada 3720 SOC (same as EspressoBin). The basic module can be extended by different modules. The device tree binary for the kernel can be dependent on which modules are connected, and in what order. Because of this, the board specific code creates in U-Boot a variable called module_topology, which carries this information. Signed-off-by: Marek Behun <marek.behun@nic.cz> Signed-off-by: Stefan Roese <sr@denx.de>
133 lines
2.2 KiB
Plaintext
133 lines
2.2 KiB
Plaintext
// SPDX-License-Identifier: GPL-2.0+ or X11
|
|
/*
|
|
* Device Tree file for CZ.NIC Turris Mox Board
|
|
* 2018 by Marek Behun <marek.behun@nic.cz>
|
|
*
|
|
* Based on armada-3720-espressobin.dts by:
|
|
* Gregory CLEMENT <gregory.clement@free-electrons.com>
|
|
* Konstantin Porotchkin <kostap@marvell.com>
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include "armada-372x.dtsi"
|
|
|
|
/ {
|
|
model = "CZ.NIC Turris Mox Board";
|
|
compatible = "cznic,turris-mox", "marvell,armada3720",
|
|
"marvell,armada3710";
|
|
|
|
chosen {
|
|
stdout-path = "serial0:115200n8";
|
|
};
|
|
|
|
aliases {
|
|
ethernet0 = ð0;
|
|
i2c0 = &i2c0;
|
|
spi0 = &spi0;
|
|
};
|
|
|
|
memory {
|
|
device_type = "memory";
|
|
reg = <0x00000000 0x00000000 0x00000000 0x20000000>;
|
|
};
|
|
|
|
reg_usb3_vbus: usb3_vbus@0 {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "usb3-vbus";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
shutdown-delay-us = <1000000>;
|
|
gpio = <&gpiosb 0 GPIO_ACTIVE_HIGH>;
|
|
regulator-boot-on;
|
|
};
|
|
|
|
mdio {
|
|
eth_phy1: ethernet-phy@1 {
|
|
reg = <1>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&comphy {
|
|
max-lanes = <3>;
|
|
phy0 {
|
|
phy-type = <PHY_TYPE_SGMII1>;
|
|
phy-speed = <PHY_SPEED_3_125G>;
|
|
};
|
|
|
|
phy1 {
|
|
phy-type = <PHY_TYPE_PEX0>;
|
|
phy-speed = <PHY_SPEED_2_5G>;
|
|
};
|
|
|
|
phy2 {
|
|
phy-type = <PHY_TYPE_USB3_HOST0>;
|
|
phy-speed = <PHY_SPEED_5G>;
|
|
};
|
|
};
|
|
|
|
ð0 {
|
|
status = "okay";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&rgmii_pins>, <&smi_pins>;
|
|
phy-mode = "rgmii";
|
|
phy = <ð_phy1>;
|
|
};
|
|
|
|
&i2c0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2c1_pins>;
|
|
status = "okay";
|
|
};
|
|
|
|
&sdhci1 {
|
|
bus-width = <4>;
|
|
status = "okay";
|
|
};
|
|
|
|
&pinctrl_nb {
|
|
spi_cs1_pins: spi-cs1-pins {
|
|
groups = "spi_cs1";
|
|
function = "spi";
|
|
};
|
|
};
|
|
|
|
&pinctrl_sb {
|
|
smi_pins: smi-pins {
|
|
groups = "smi";
|
|
function = "smi";
|
|
};
|
|
};
|
|
|
|
&spi0 {
|
|
status = "okay";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&spi_cs1_pins>;
|
|
|
|
spi-flash@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
compatible = "st,s25fl064l", "spi-flash";
|
|
reg = <0>;
|
|
spi-max-frequency = <20000000>;
|
|
m25p,fast-read;
|
|
};
|
|
};
|
|
|
|
&uart0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart1_pins>;
|
|
status = "okay";
|
|
};
|
|
|
|
&usb2 {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb3 {
|
|
vbus-supply = <®_usb3_vbus>;
|
|
status = "okay";
|
|
};
|