cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

bm1880-sophon-edge.dts (4757B)


      1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
      2/*
      3 * Copyright (c) 2019 Linaro Ltd.
      4 * Author: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
      5 */
      6
      7/dts-v1/;
      8
      9#include "bm1880.dtsi"
     10
     11/*
     12 * GPIO name legend: proper name = the GPIO line is used as GPIO
     13 *         NC = not connected (pin out but not routed from the chip to
     14 *              anything the board)
     15 *         "[PER]" = pin is muxed for [peripheral] (not GPIO)
     16 *         LSEC = Low Speed External Connector
     17 *         HSEC = High Speed External Connector
     18 *
     19 * Line names are taken from the schematic "sophon-edge-schematics"
     20 * version, 1.0210.
     21 *
     22 * For the lines routed to the external connectors the
     23 * lines are named after the 96Boards CE Specification 1.0,
     24 * Appendix "Expansion Connector Signal Description".
     25 *
     26 * When the 96Board naming of a line and the schematic name of
     27 * the same line are in conflict, the 96Board specification
     28 * takes precedence. This is only for the informational
     29 * lines i.e. "[FOO]", the GPIO named lines "GPIO-A" thru "GPIO-L"
     30 * are the only ones actually used for GPIO.
     31 */
     32
     33/ {
     34	compatible = "bitmain,sophon-edge", "bitmain,bm1880";
     35	model = "Sophon Edge";
     36
     37	aliases {
     38		serial0 = &uart0;
     39		serial1 = &uart2;
     40		serial2 = &uart1;
     41	};
     42
     43	chosen {
     44		stdout-path = "serial0:115200n8";
     45	};
     46
     47	memory@0 {
     48		device_type = "memory";
     49		reg = <0x1 0x00000000 0x0 0x40000000>; // 1GB
     50	};
     51
     52	soc {
     53		gpio0: gpio@50027000 {
     54			porta: gpio-controller@0 {
     55				gpio-line-names =
     56					"GPIO-A", /* GPIO0, LSEC pin 23 */
     57					"GPIO-C", /* GPIO1, LSEC pin 25 */
     58					"[GPIO2_PHY0_RST]", /* GPIO2 */
     59					"GPIO-E", /* GPIO3, LSEC pin 27 */
     60					"[USB_DET]", /* GPIO4 */
     61					"[EN_P5V]", /* GPIO5 */
     62					"[VDDIO_MS1_SEL]", /* GPIO6 */
     63					"GPIO-G", /* GPIO7, LSEC pin 29 */
     64					"[BM_TUSB_RST_L]", /* GPIO8 */
     65					"[EN_P5V_USBHUB]", /* GPIO9 */
     66					"NC",
     67					"LED_WIFI", /* GPIO11 */
     68					"LED_BT", /* GPIO12 */
     69					"[BM_BLM8221_EN_L]", /* GPIO13 */
     70					"NC", /* GPIO14 */
     71					"NC", /* GPIO15 */
     72					"NC", /* GPIO16 */
     73					"NC", /* GPIO17 */
     74					"NC", /* GPIO18 */
     75					"NC", /* GPIO19 */
     76					"NC", /* GPIO20 */
     77					"NC", /* GPIO21 */
     78					"NC", /* GPIO22 */
     79					"NC", /* GPIO23 */
     80					"NC", /* GPIO24 */
     81					"NC", /* GPIO25 */
     82					"NC", /* GPIO26 */
     83					"NC", /* GPIO27 */
     84					"NC", /* GPIO28 */
     85					"NC", /* GPIO29 */
     86					"NC", /* GPIO30 */
     87					"NC"; /* GPIO31 */
     88			};
     89		};
     90
     91		gpio1: gpio@50027400 {
     92			portb: gpio-controller@0 {
     93				gpio-line-names =
     94					"NC", /* GPIO32 */
     95					"NC", /* GPIO33 */
     96					"[I2C0_SDA]", /* GPIO34, LSEC pin 17 */
     97					"[I2C0_SCL]", /* GPIO35, LSEC pin 15 */
     98					"[JTAG0_TDO]", /* GPIO36 */
     99					"[JTAG0_TCK]", /* GPIO37 */
    100					"[JTAG0_TDI]", /* GPIO38 */
    101					"[JTAG0_TMS]", /* GPIO39 */
    102					"[JTAG0_TRST_X]", /* GPIO40 */
    103					"[JTAG1_TDO]", /* GPIO41 */
    104					"[JTAG1_TCK]", /* GPIO42 */
    105					"[JTAG1_TDI]", /* GPIO43 */
    106					"[CPU_TX]", /* GPIO44 */
    107					"[CPU_RX]", /* GPIO45 */
    108					"[UART1_TXD]", /* GPIO46 */
    109					"[UART1_RXD]", /* GPIO47 */
    110					"[UART0_TXD]", /* GPIO48 */
    111					"[UART0_RXD]", /* GPIO49 */
    112					"GPIO-I", /* GPIO50, LSEC pin 31 */
    113					"GPIO-K", /* GPIO51, LSEC pin 33 */
    114					"USER_LED2", /* GPIO52 */
    115					"USER_LED1", /* GPIO53 */
    116					"[UART0_RTS]", /* GPIO54 */
    117					"[UART0_CTS]", /* GPIO55 */
    118					"USER_LED4", /* GPIO56, JTAG1_TRST_X */
    119					"USER_LED3", /* GPIO57, JTAG1_TMS */
    120					"[I2S0_SCLK]", /* GPIO58 */
    121					"[I2S0_FS]", /* GPIO59 */
    122					"[I2S0_SDI]", /* GPIO60 */
    123					"[I2S0_SDO]", /* GPIO61 */
    124					"GPIO-B", /* GPIO62, LSEC pin 24 */
    125					"GPIO-F"; /* GPIO63, I2S1_SCLK, LSEC pin 28 */
    126			};
    127		};
    128
    129		gpio2: gpio@50027800 {
    130			portc: gpio-controller@0 {
    131				gpio-line-names =
    132					"GPIO-D", /* GPIO64, I2S1_FS, LSEC pin 26 */
    133					"GPIO-J", /* GPIO65, I2S1_SDI, LSEC pin 32 */
    134					"GPIO-H", /* GPIO66, I2S1_SDO, LSEC pin 30 */
    135					"GPIO-L", /* GPIO67, LSEC pin 34 */
    136					"[SPI0_CS]", /* GPIO68, SPI1_CS, LSEC pin 12 */
    137					"[SPI0_DIN]", /* GPIO69, SPI1_SDI, LSEC pin 10 */
    138					"[SPI0_DOUT]", /* GPIO70, SPI1_SDO, LSEC pin 14 */
    139					"[SPI0_SCLK]"; /* GPIO71, SPI1_SCK, LSEC pin 8 */
    140			};
    141		};
    142	};
    143};
    144
    145&pinctrl {
    146	pinctrl_uart0_default: pinctrl-uart0-default {
    147		pinmux {
    148			groups = "uart0_grp";
    149			function = "uart0";
    150		};
    151	};
    152
    153	pinctrl_uart1_default: pinctrl-uart1-default {
    154		pinmux {
    155			groups = "uart1_grp";
    156			function = "uart1";
    157		};
    158	};
    159
    160	pinctrl_uart2_default: pinctrl-uart2-default {
    161		pinmux {
    162			groups = "uart2_grp";
    163			function = "uart2";
    164		};
    165	};
    166};
    167
    168&uart0 {
    169	status = "okay";
    170	pinctrl-names = "default";
    171	pinctrl-0 = <&pinctrl_uart0_default>;
    172};
    173
    174&uart1 {
    175	status = "okay";
    176	pinctrl-names = "default";
    177	pinctrl-0 = <&pinctrl_uart1_default>;
    178};
    179
    180&uart2 {
    181	status = "okay";
    182	pinctrl-names = "default";
    183	pinctrl-0 = <&pinctrl_uart2_default>;
    184};