123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315 |
- // SPDX-License-Identifier: GPL-2.0
- /*
- * Copyright (C) 2018 SolidRun ltd
- */
- #include "armada-8040.dtsi"
- / {
- model = "ClearFog-GT-8K";
- compatible = "solidrun,clearfog-gt-8k",
- "marvell,armada8040";
- chosen {
- stdout-path = "serial0:115200n8";
- };
- aliases {
- i2c0 = &cpm_i2c0;
- i2c1 = &cpm_i2c1;
- spi0 = &cps_spi1;
- };
- memory@00000000 {
- device_type = "memory";
- reg = <0x0 0x0 0x0 0x80000000>;
- };
- simple-bus {
- compatible = "simple-bus";
- reg_usb3h0_vbus: usb3-vbus0 {
- compatible = "regulator-fixed";
- pinctrl-names = "default";
- pinctrl-0 = <&cpm_xhci_vbus_pins>;
- regulator-name = "reg-usb3h0-vbus";
- regulator-min-microvolt = <5000000>;
- regulator-max-microvolt = <5000000>;
- startup-delay-us = <300000>;
- shutdown-delay-us = <500000>;
- regulator-force-boot-off;
- gpio = <&cpm_gpio1 15 GPIO_ACTIVE_LOW>; /* GPIO[47] */
- };
- };
- };
- &uart0 {
- status = "okay";
- };
- &ap_pinctl {
- /*
- * MPP Bus:
- * eMMC [0-10]
- * UART0 [11,19]
- */
- /* 0 1 2 3 4 5 6 7 8 9 */
- pin-func = < 1 1 1 1 1 1 1 1 1 1
- 1 3 0 0 0 0 0 0 0 3 >;
- };
- /* on-board eMMC */
- &ap_sdhci0 {
- pinctrl-names = "default";
- pinctrl-0 = <&ap_emmc_pins>;
- bus-width = <8>;
- status = "okay";
- };
- &cpm_pinctl {
- /*
- * MPP Bus:
- * [0-31] = 0xff: Keep default CP0_shared_pins:
- * [11] CLKOUT_MPP_11 (out)
- * [23] LINK_RD_IN_CP2CP (in)
- * [25] CLKOUT_MPP_25 (out)
- * [29] AVS_FB_IN_CP2CP (in)
- * [32, 33, 34] pci0/1/2 reset
- * [35-38] CP0 I2C1 and I2C0
- * [39] GPIO reset button
- * [40,41] LED0 and LED1
- * [43] 1512 phy reset
- * [47] USB VBUS EN (active low)
- * [48] FAN PWM
- * [49] SFP+ present signal
- * [50] TPM interrupt
- * [51] WLAN0 disable
- * [52] WLAN1 disable
- * [53] LTE disable
- * [54] NFC reset
- * [55] Micro SD card detect
- * [56-61] Micro SD
- */
- /* 0 1 2 3 4 5 6 7 8 9 */
- pin-func = < 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
- 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
- 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
- 0xff 0 0 0 0 2 2 2 2 0
- 0 0 0 0 0 0 0 0 0 0
- 0 0 0 0 0 0 0xe 0xe 0xe 0xe
- 0xe 0xe 0 >;
- cpm_xhci_vbus_pins: cpm-xhci-vbus-pins {
- marvell,pins = < 47 >;
- marvell,function = <0>;
- };
- cps_1g_phy_reset: cps-1g-phy-reset {
- marvell,pins = < 43 >;
- marvell,function = <0>;
- };
- };
- /* uSD slot */
- &cpm_sdhci0 {
- pinctrl-names = "default";
- pinctrl-0 = <&cpm_sdhci_pins>;
- bus-width = <4>;
- status = "okay";
- };
- &cpm_pcie0 {
- num-lanes = <1>;
- status = "okay";
- };
- &cpm_i2c0 {
- pinctrl-names = "default";
- pinctrl-0 = <&cpm_i2c0_pins>;
- status = "okay";
- clock-frequency = <100000>;
- };
- &cpm_i2c1 {
- pinctrl-names = "default";
- pinctrl-0 = <&cpm_i2c1_pins>;
- status = "okay";
- clock-frequency = <100000>;
- };
- &cpm_sata0 {
- status = "okay";
- };
- &cpm_comphy {
- /*
- * CP0 Serdes Configuration:
- * Lane 0: PCIe0 (x1)
- * Lane 1: Not connected
- * Lane 2: SFI (10G)
- * Lane 3: Not connected
- * Lane 4: USB 3.0 host port1 (can be PCIe)
- * Lane 5: Not connected
- */
- phy0 {
- phy-type = <PHY_TYPE_PEX0>;
- };
- phy1 {
- phy-type = <PHY_TYPE_UNCONNECTED>;
- };
- phy2 {
- phy-type = <PHY_TYPE_SFI>;
- };
- phy3 {
- phy-type = <PHY_TYPE_UNCONNECTED>;
- };
- phy4 {
- phy-type = <PHY_TYPE_USB3_HOST1>;
- };
- phy5 {
- phy-type = <PHY_TYPE_UNCONNECTED>;
- };
- };
- &cpm_ethernet {
- pinctrl-names = "default";
- status = "okay";
- };
- /* 10G SFI SFP */
- &cpm_eth0 {
- status = "okay";
- phy-mode = "sfi";
- };
- &cps_sata0 {
- status = "okay";
- };
- &cps_usb3_0 {
- vbus-supply = <®_usb3h0_vbus>;
- status = "okay";
- };
- &cps_utmi0 {
- status = "okay";
- };
- &cps_pinctl {
- /*
- * MPP Bus:
- * [0-5] TDM
- * [6] VHV Enable
- * [7] CP1 SPI0 CSn1 (FXS)
- * [8] CP1 SPI0 CSn0 (TPM)
- * [9.11]CP1 SPI0 MOSI/MISO/CLK
- * [13] CP1 SPI1 MISO (TDM and SPI ROM shared)
- * [14] CP1 SPI1 CS0n (64Mb SPI ROM)
- * [15] CP1 SPI1 MOSI (TDM and SPI ROM shared)
- * [16] CP1 SPI1 CLK (TDM and SPI ROM shared)
- * [24] Topaz switch reset
- * [26] Buzzer
- * [27] CP1 SMI MDIO
- * [28] CP1 SMI MDC
- * [29] CP0 10G SFP TX Disable
- * [30] WPS button
- * [31] Front panel button
- * [32-62] = 0xff: Keep default CP1_shared_pins:
- */
- /* 0 1 2 3 4 5 6 7 8 9 */
- pin-func = < 0x4 0x4 0x4 0x4 0x4 0x4 0x0 0x4 0x4 0x4
- 0x4 0x4 0x0 0x3 0x3 0x3 0x3 0xff 0xff 0xff
- 0xff 0xff 0xff 0xff 0x0 0xff 0x0 0x8 0x8 0x0
- 0x0 0x0 0x0 0xff 0xff 0xff 0xff 0xff 0xff 0xff
- 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
- 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
- 0xff 0xff 0xff>;
- };
- &cps_spi1 {
- pinctrl-names = "default";
- pinctrl-0 = <&cps_spi1_pins>;
- status = "okay";
- spi-flash@0 {
- compatible = "jedec,spi-nor", "spi-flash";
- reg = <0>;
- spi-max-frequency = <10000000>;
- partitions {
- compatible = "fixed-partitions";
- #address-cells = <1>;
- #size-cells = <1>;
- partition@0 {
- label = "U-Boot";
- reg = <0 0x200000>;
- };
- partition@200000 {
- label = "Filesystem";
- reg = <0x200000 0xce0000>;
- };
- };
- };
- };
- &cps_comphy {
- /*
- * CP1 Serdes Configuration:
- * Lane 0: SATA 1 (RX swapped). Can be PCIe0
- * Lane 1: Not used
- * Lane 2: USB HOST 0
- * Lane 3: SGMII1 - Connected to 1512 port
- * Lane 4: Not used
- * Lane 5: SGMII2 - Connected to Topaz switch
- */
- phy0 {
- phy-type = <PHY_TYPE_SATA1>;
- phy-invert = <PHY_POLARITY_RXD_INVERT>;
- };
- phy1 {
- phy-type = <PHY_TYPE_UNCONNECTED>;
- };
- phy2 {
- phy-type = <PHY_TYPE_USB3_HOST0>;
- };
- phy3 {
- phy-type = <PHY_TYPE_SGMII1>;
- phy-speed = <PHY_SPEED_1_25G>;
- };
- phy4 {
- phy-type = <PHY_TYPE_UNCONNECTED>;
- };
- phy5 {
- phy-type = <PHY_TYPE_SGMII2>;
- phy-speed = <PHY_SPEED_3_125G>;
- };
- };
- &cps_mdio {
- phy0: ethernet-phy@0 {
- reg = <0>;
- };
- };
- &cps_ethernet {
- pinctrl-names = "default";
- pinctrl-0 = <&cps_1g_phy_reset>;
- status = "okay";
- };
- /* 1G SGMII */
- &cps_eth1 {
- status = "okay";
- phy-mode = "sgmii";
- phy = <&phy0>;
- phy-reset-gpios = <&cpm_gpio1 11 GPIO_ACTIVE_LOW>;
- };
- /* 2.5G to Topaz switch */
- &cps_eth2 {
- status = "okay";
- phy-mode = "sgmii";
- phy-speed = <2500>;
- phy-reset-gpios = <&cps_gpio0 24 GPIO_ACTIVE_LOW>;
- };
|