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

stm32mp157c-ev1.dts (8006B)


      1// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
      2/*
      3 * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
      4 * Author: Ludovic Barre <ludovic.barre@st.com> for STMicroelectronics.
      5 */
      6/dts-v1/;
      7
      8#include "stm32mp157c-ed1.dts"
      9#include <dt-bindings/gpio/gpio.h>
     10#include <dt-bindings/input/input.h>
     11
     12/ {
     13	model = "STMicroelectronics STM32MP157C eval daughter on eval mother";
     14	compatible = "st,stm32mp157c-ev1", "st,stm32mp157c-ed1", "st,stm32mp157";
     15
     16	chosen {
     17		stdout-path = "serial0:115200n8";
     18	};
     19
     20	aliases {
     21		serial0 = &uart4;
     22		serial1 = &usart3;
     23		ethernet0 = &ethernet0;
     24	};
     25
     26	clocks {
     27		clk_ext_camera: clk-ext-camera {
     28			#clock-cells = <0>;
     29			compatible = "fixed-clock";
     30			clock-frequency = <24000000>;
     31		};
     32	};
     33
     34	joystick {
     35		compatible = "gpio-keys";
     36		pinctrl-0 = <&joystick_pins>;
     37		pinctrl-names = "default";
     38		button-0 {
     39			label = "JoySel";
     40			linux,code = <KEY_ENTER>;
     41			interrupt-parent = <&stmfx_pinctrl>;
     42			interrupts = <0 IRQ_TYPE_EDGE_RISING>;
     43		};
     44		button-1 {
     45			label = "JoyDown";
     46			linux,code = <KEY_DOWN>;
     47			interrupt-parent = <&stmfx_pinctrl>;
     48			interrupts = <1 IRQ_TYPE_EDGE_RISING>;
     49		};
     50		button-2 {
     51			label = "JoyLeft";
     52			linux,code = <KEY_LEFT>;
     53			interrupt-parent = <&stmfx_pinctrl>;
     54			interrupts = <2 IRQ_TYPE_EDGE_RISING>;
     55		};
     56		button-3 {
     57			label = "JoyRight";
     58			linux,code = <KEY_RIGHT>;
     59			interrupt-parent = <&stmfx_pinctrl>;
     60			interrupts = <3 IRQ_TYPE_EDGE_RISING>;
     61		};
     62		button-4 {
     63			label = "JoyUp";
     64			linux,code = <KEY_UP>;
     65			interrupt-parent = <&stmfx_pinctrl>;
     66			interrupts = <4 IRQ_TYPE_EDGE_RISING>;
     67		};
     68	};
     69
     70	panel_backlight: panel-backlight {
     71		compatible = "gpio-backlight";
     72		gpios = <&gpiod 13 GPIO_ACTIVE_LOW>;
     73		default-on;
     74		status = "okay";
     75	};
     76};
     77
     78&cec {
     79	pinctrl-names = "default";
     80	pinctrl-0 = <&cec_pins_a>;
     81	status = "okay";
     82};
     83
     84&dcmi {
     85	status = "okay";
     86	pinctrl-names = "default", "sleep";
     87	pinctrl-0 = <&dcmi_pins_a>;
     88	pinctrl-1 = <&dcmi_sleep_pins_a>;
     89
     90	port {
     91		dcmi_0: endpoint {
     92			remote-endpoint = <&ov5640_0>;
     93			bus-type = <5>;
     94			bus-width = <8>;
     95			hsync-active = <0>;
     96			vsync-active = <0>;
     97			pclk-sample = <1>;
     98		};
     99	};
    100};
    101
    102&dsi {
    103	phy-dsi-supply = <&reg18>;
    104	status = "okay";
    105
    106	ports {
    107		port@0 {
    108			reg = <0>;
    109			dsi_in: endpoint {
    110				remote-endpoint = <&ltdc_ep0_out>;
    111			};
    112		};
    113
    114		port@1 {
    115			reg = <1>;
    116			dsi_out: endpoint {
    117				remote-endpoint = <&dsi_panel_in>;
    118			};
    119		};
    120	};
    121
    122	panel-dsi@0 {
    123		compatible = "raydium,rm68200";
    124		reg = <0>;
    125		reset-gpios = <&gpiof 15 GPIO_ACTIVE_LOW>;
    126		backlight = <&panel_backlight>;
    127		power-supply = <&v3v3>;
    128		status = "okay";
    129
    130		port {
    131			dsi_panel_in: endpoint {
    132				remote-endpoint = <&dsi_out>;
    133			};
    134		};
    135	};
    136};
    137
    138&ethernet0 {
    139	status = "okay";
    140	pinctrl-0 = <&ethernet0_rgmii_pins_a>;
    141	pinctrl-1 = <&ethernet0_rgmii_sleep_pins_a>;
    142	pinctrl-names = "default", "sleep";
    143	phy-mode = "rgmii-id";
    144	max-speed = <1000>;
    145	phy-handle = <&phy0>;
    146
    147	mdio0 {
    148		#address-cells = <1>;
    149		#size-cells = <0>;
    150		compatible = "snps,dwmac-mdio";
    151		phy0: ethernet-phy@0 {
    152			reg = <0>;
    153		};
    154	};
    155};
    156
    157&fmc {
    158	pinctrl-names = "default", "sleep";
    159	pinctrl-0 = <&fmc_pins_a>;
    160	pinctrl-1 = <&fmc_sleep_pins_a>;
    161	status = "okay";
    162
    163	nand-controller@4,0 {
    164		status = "okay";
    165
    166		nand@0 {
    167			reg = <0>;
    168			nand-on-flash-bbt;
    169			#address-cells = <1>;
    170			#size-cells = <1>;
    171		};
    172	};
    173};
    174
    175&i2c2 {
    176	pinctrl-names = "default", "sleep";
    177	pinctrl-0 = <&i2c2_pins_a>;
    178	pinctrl-1 = <&i2c2_sleep_pins_a>;
    179	i2c-scl-rising-time-ns = <185>;
    180	i2c-scl-falling-time-ns = <20>;
    181	status = "okay";
    182
    183	ov5640: camera@3c {
    184		compatible = "ovti,ov5640";
    185		reg = <0x3c>;
    186		clocks = <&clk_ext_camera>;
    187		clock-names = "xclk";
    188		DOVDD-supply = <&v2v8>;
    189		powerdown-gpios = <&stmfx_pinctrl 18 (GPIO_ACTIVE_HIGH | GPIO_PUSH_PULL)>;
    190		reset-gpios = <&stmfx_pinctrl 19 (GPIO_ACTIVE_LOW | GPIO_PUSH_PULL)>;
    191		rotation = <180>;
    192		status = "okay";
    193
    194		port {
    195			ov5640_0: endpoint {
    196				remote-endpoint = <&dcmi_0>;
    197				bus-width = <8>;
    198				data-shift = <2>; /* lines 9:2 are used */
    199				hsync-active = <0>;
    200				vsync-active = <0>;
    201				pclk-sample = <1>;
    202			};
    203		};
    204	};
    205
    206	stmfx: stmfx@42 {
    207		compatible = "st,stmfx-0300";
    208		reg = <0x42>;
    209		interrupts = <8 IRQ_TYPE_EDGE_RISING>;
    210		interrupt-parent = <&gpioi>;
    211		vdd-supply = <&v3v3>;
    212
    213		stmfx_pinctrl: pinctrl {
    214			compatible = "st,stmfx-0300-pinctrl";
    215			gpio-controller;
    216			#gpio-cells = <2>;
    217			interrupt-controller;
    218			#interrupt-cells = <2>;
    219			gpio-ranges = <&stmfx_pinctrl 0 0 24>;
    220
    221			joystick_pins: joystick-pins {
    222				pins = "gpio0", "gpio1", "gpio2", "gpio3", "gpio4";
    223				bias-pull-down;
    224			};
    225		};
    226	};
    227};
    228
    229&i2c5 {
    230	pinctrl-names = "default", "sleep";
    231	pinctrl-0 = <&i2c5_pins_a>;
    232	pinctrl-1 = <&i2c5_sleep_pins_a>;
    233	i2c-scl-rising-time-ns = <185>;
    234	i2c-scl-falling-time-ns = <20>;
    235	status = "okay";
    236};
    237
    238&ltdc {
    239	status = "okay";
    240
    241	port {
    242		ltdc_ep0_out: endpoint@0 {
    243			reg = <0>;
    244			remote-endpoint = <&dsi_in>;
    245		};
    246	};
    247};
    248
    249&m_can1 {
    250	pinctrl-names = "default", "sleep";
    251	pinctrl-0 = <&m_can1_pins_a>;
    252	pinctrl-1 = <&m_can1_sleep_pins_a>;
    253	status = "okay";
    254};
    255
    256&qspi {
    257	pinctrl-names = "default", "sleep";
    258	pinctrl-0 = <&qspi_clk_pins_a &qspi_bk1_pins_a &qspi_bk2_pins_a>;
    259	pinctrl-1 = <&qspi_clk_sleep_pins_a &qspi_bk1_sleep_pins_a &qspi_bk2_sleep_pins_a>;
    260	reg = <0x58003000 0x1000>, <0x70000000 0x4000000>;
    261	#address-cells = <1>;
    262	#size-cells = <0>;
    263	status = "okay";
    264
    265	flash0: flash@0 {
    266		compatible = "jedec,spi-nor";
    267		reg = <0>;
    268		spi-rx-bus-width = <4>;
    269		spi-max-frequency = <108000000>;
    270		#address-cells = <1>;
    271		#size-cells = <1>;
    272	};
    273
    274	flash1: flash@1 {
    275		compatible = "jedec,spi-nor";
    276		reg = <1>;
    277		spi-rx-bus-width = <4>;
    278		spi-max-frequency = <108000000>;
    279		#address-cells = <1>;
    280		#size-cells = <1>;
    281	};
    282};
    283
    284&sdmmc3 {
    285	pinctrl-names = "default", "opendrain", "sleep";
    286	pinctrl-0 = <&sdmmc3_b4_pins_a>;
    287	pinctrl-1 = <&sdmmc3_b4_od_pins_a>;
    288	pinctrl-2 = <&sdmmc3_b4_sleep_pins_a>;
    289	broken-cd;
    290	st,neg-edge;
    291	bus-width = <4>;
    292	vmmc-supply = <&v3v3>;
    293	status = "disabled";
    294};
    295
    296&spi1 {
    297	pinctrl-names = "default";
    298	pinctrl-0 = <&spi1_pins_a>;
    299	status = "disabled";
    300};
    301
    302&timers2 {
    303	/* spare dmas for other usage (un-delete to enable pwm capture) */
    304	/delete-property/dmas;
    305	/delete-property/dma-names;
    306	status = "disabled";
    307	pwm {
    308		pinctrl-0 = <&pwm2_pins_a>;
    309		pinctrl-1 = <&pwm2_sleep_pins_a>;
    310		pinctrl-names = "default", "sleep";
    311		status = "okay";
    312	};
    313	timer@1 {
    314		status = "okay";
    315	};
    316};
    317
    318&timers8 {
    319	/delete-property/dmas;
    320	/delete-property/dma-names;
    321	status = "disabled";
    322	pwm {
    323		pinctrl-0 = <&pwm8_pins_a>;
    324		pinctrl-1 = <&pwm8_sleep_pins_a>;
    325		pinctrl-names = "default", "sleep";
    326		status = "okay";
    327	};
    328	timer@7 {
    329		status = "okay";
    330	};
    331};
    332
    333&timers12 {
    334	/delete-property/dmas;
    335	/delete-property/dma-names;
    336	status = "disabled";
    337	pwm {
    338		pinctrl-0 = <&pwm12_pins_a>;
    339		pinctrl-1 = <&pwm12_sleep_pins_a>;
    340		pinctrl-names = "default", "sleep";
    341		status = "okay";
    342	};
    343	timer@11 {
    344		status = "okay";
    345	};
    346};
    347
    348&usart3 {
    349	pinctrl-names = "default", "sleep", "idle";
    350	pinctrl-0 = <&usart3_pins_b>;
    351	pinctrl-1 = <&usart3_sleep_pins_b>;
    352	pinctrl-2 = <&usart3_idle_pins_b>;
    353	/*
    354	 * HW flow control USART3_RTS is optional, and isn't default wired to
    355	 * the connector. SB23 needs to be soldered in order to use it, and R77
    356	 * (ETH_CLK) should be removed.
    357	 */
    358	uart-has-rtscts;
    359	status = "disabled";
    360};
    361
    362&usbh_ehci {
    363	phys = <&usbphyc_port0>;
    364	status = "okay";
    365};
    366
    367&usbotg_hs {
    368	pinctrl-0 = <&usbotg_hs_pins_a>;
    369	pinctrl-names = "default";
    370	phys = <&usbphyc_port1 0>;
    371	phy-names = "usb2-phy";
    372	status = "okay";
    373};
    374
    375&usbphyc {
    376	status = "okay";
    377};
    378
    379&usbphyc_port0 {
    380	st,tune-hs-dc-level = <2>;
    381	st,enable-fs-rftime-tuning;
    382	st,enable-hs-rftime-reduction;
    383	st,trim-hs-current = <15>;
    384	st,trim-hs-impedance = <1>;
    385	st,tune-squelch-level = <3>;
    386	st,tune-hs-rx-offset = <2>;
    387	st,no-lsfs-sc;
    388};
    389
    390&usbphyc_port1 {
    391	st,tune-hs-dc-level = <2>;
    392	st,enable-fs-rftime-tuning;
    393	st,enable-hs-rftime-reduction;
    394	st,trim-hs-current = <15>;
    395	st,trim-hs-impedance = <1>;
    396	st,tune-squelch-level = <3>;
    397	st,tune-hs-rx-offset = <2>;
    398	st,no-lsfs-sc;
    399};