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

lpc4357-ea4357-devkit.dts (10821B)


      1/*
      2 * Embedded Artist LPC4357 Developer's Kit
      3 *
      4 * Copyright 2015 Joachim Eastwood <manabian@gmail.com>
      5 *
      6 * This code is released using a dual license strategy: BSD/GPL
      7 * You can choose the licence that better fits your requirements.
      8 *
      9 * Released under the terms of 3-clause BSD License
     10 * Released under the terms of GNU General Public License Version 2.0
     11 *
     12 */
     13/dts-v1/;
     14
     15#include "lpc18xx.dtsi"
     16#include "lpc4357.dtsi"
     17
     18#include "dt-bindings/input/input.h"
     19#include "dt-bindings/gpio/gpio.h"
     20
     21/ {
     22	model = "Embedded Artists' LPC4357 Developer's Kit";
     23	compatible = "ea,lpc4357-developers-kit", "nxp,lpc4357", "nxp,lpc4350";
     24
     25	aliases {
     26		serial0 = &uart0;
     27		serial1 = &uart1;
     28		serial2 = &uart2;
     29		serial3 = &uart3;
     30	};
     31
     32	chosen {
     33		stdout-path = &uart0;
     34	};
     35
     36	memory@28000000 {
     37		device_type = "memory";
     38		reg = <0x28000000 0x2000000>; /* 32 MB */
     39	};
     40
     41	vcc: vcc_fixed {
     42		compatible = "regulator-fixed";
     43		regulator-name = "3v3-supply";
     44		regulator-min-microvolt = <3300000>;
     45		regulator-max-microvolt = <3300000>;
     46	};
     47
     48	/* vmmc is controlled by sdmmc host internally */
     49	vmmc: vmmc_fixed {
     50		compatible = "regulator-fixed";
     51		regulator-name = "vmmc-supply";
     52		regulator-min-microvolt = <3300000>;
     53		regulator-max-microvolt = <3300000>;
     54	};
     55
     56	gpio_joystick {
     57		compatible = "gpio-keys-polled";
     58		pinctrl-names = "default";
     59		pinctrl-0 = <&gpio_joystick_pins>;
     60		poll-interval = <100>;
     61		autorepeat;
     62
     63		button0 {
     64			label = "joy_enter";
     65			linux,code = <KEY_ENTER>;
     66			gpios = <&gpio LPC_GPIO(4,8) GPIO_ACTIVE_LOW>;
     67		};
     68
     69		button1 {
     70			label = "joy_left";
     71			linux,code = <KEY_LEFT>;
     72			gpios = <&gpio LPC_GPIO(4,9) GPIO_ACTIVE_LOW>;
     73		};
     74
     75		button2 {
     76			label = "joy_up";
     77			linux,code = <KEY_UP>;
     78			gpios = <&gpio LPC_GPIO(4,10) GPIO_ACTIVE_LOW>;
     79		};
     80
     81		button3 {
     82			label = "joy_right";
     83			linux,code = <KEY_RIGHT>;
     84			gpios = <&gpio LPC_GPIO(4,12) GPIO_ACTIVE_LOW>;
     85		};
     86
     87		button4 {
     88			label = "joy_down";
     89			linux,code = <KEY_DOWN>;
     90			gpios = <&gpio LPC_GPIO(4,13) GPIO_ACTIVE_LOW>;
     91		};
     92	};
     93
     94	leds_mmio {
     95		compatible = "gpio-leds";
     96
     97		led1 {
     98			gpios = <&mmio_leds 15 GPIO_ACTIVE_HIGH>;
     99			linux,default-trigger = "heartbeat";
    100		};
    101
    102		led2 {
    103			gpios = <&mmio_leds 14 GPIO_ACTIVE_HIGH>;
    104		};
    105
    106		led3 {
    107			gpios = <&mmio_leds 13 GPIO_ACTIVE_HIGH>;
    108		};
    109
    110		led4 {
    111			gpios = <&mmio_leds 12 GPIO_ACTIVE_HIGH>;
    112		};
    113
    114		led5 {
    115			gpios = <&mmio_leds 11 GPIO_ACTIVE_HIGH>;
    116		};
    117
    118		led6 {
    119			gpios = <&mmio_leds 10 GPIO_ACTIVE_HIGH>;
    120		};
    121
    122		led7 {
    123			gpios = <&mmio_leds 9 GPIO_ACTIVE_HIGH>;
    124		};
    125
    126		led8 {
    127			gpios = <&mmio_leds 8 GPIO_ACTIVE_HIGH>;
    128		};
    129
    130		led9 {
    131			gpios = <&mmio_leds 7 GPIO_ACTIVE_HIGH>;
    132		};
    133
    134		led10 {
    135			gpios = <&mmio_leds 6 GPIO_ACTIVE_HIGH>;
    136		};
    137
    138		led11 {
    139			gpios = <&mmio_leds 5 GPIO_ACTIVE_HIGH>;
    140		};
    141
    142		led12 {
    143			gpios = <&mmio_leds 4 GPIO_ACTIVE_HIGH>;
    144		};
    145
    146		led13 {
    147			gpios = <&mmio_leds 3 GPIO_ACTIVE_HIGH>;
    148		};
    149
    150		led14 {
    151			gpios = <&mmio_leds 2 GPIO_ACTIVE_HIGH>;
    152		};
    153
    154		led15 {
    155			gpios = <&mmio_leds 1 GPIO_ACTIVE_HIGH>;
    156		};
    157
    158		led16 {
    159			gpios = <&mmio_leds 0 GPIO_ACTIVE_HIGH>;
    160		};
    161	};
    162};
    163
    164&pinctrl {
    165	emc_pins: emc-pins {
    166		emc_addr0_23_cfg {
    167			pins =	"p2_9",  "p2_10", "p2_11", "p2_12",
    168				"p2_13", "p1_0",  "p1_1",  "p1_2",
    169				"p2_8",  "p2_7",  "p2_6",  "p2_2",
    170				"p2_1",  "p2_0",  "p6_8",  "p6_7",
    171				"pd_16", "pd_15", "pe_0",  "pe_1",
    172				"pe_2",  "pe_3",  "pe_4",  "pa_4";
    173			function = "emc";
    174			slew-rate = <1>;
    175			bias-disable;
    176			input-enable;
    177			input-schmitt-disable;
    178		};
    179
    180		emc_data0_31_cfg {
    181			pins =	"p1_7",  "p1_8",  "p1_9",  "p1_10",
    182				"p1_11", "p1_12", "p1_13", "p1_14",
    183				"p5_4",  "p5_5",  "p5_6",  "p5_7",
    184				"p5_0",  "p5_1",  "p5_2",  "p5_3",
    185				"pd_2",  "pd_3",  "pd_4",  "pd_5",
    186				"pd_6",  "pd_7",  "pd_8",  "pd_9",
    187				"pe_5",  "pe_6",  "pe_7",  "pe_8",
    188				"pe_9",  "pe_10", "pe_11", "pe_12";
    189			function = "emc";
    190			slew-rate = <1>;
    191			bias-disable;
    192			input-enable;
    193			input-schmitt-disable;
    194		};
    195
    196		emc_we_oe_cfg {
    197			pins = "p1_6", "p1_3";
    198			function = "emc";
    199			slew-rate = <1>;
    200			bias-disable;
    201			input-enable;
    202			input-schmitt-disable;
    203		};
    204
    205		emc_bls0_3_cfg {
    206			pins = "p1_4", "p6_6", "pd_13", "pd_10";
    207			function = "emc";
    208			slew-rate = <1>;
    209			bias-disable;
    210			input-enable;
    211			input-schmitt-disable;
    212		};
    213
    214		emc_cs0_3_cfg {
    215			pins = "p1_5", "p6_3", "pd_12", "pd_11";
    216			function = "emc";
    217			slew-rate = <1>;
    218			bias-disable;
    219			input-enable;
    220			input-schmitt-disable;
    221		};
    222
    223		emc_sdram_dqm0_3_cfg {
    224			pins = "p6_12", "p6_10", "pd_0", "pe_13";
    225			function = "emc";
    226			slew-rate = <1>;
    227			bias-disable;
    228			input-enable;
    229			input-schmitt-disable;
    230		};
    231
    232		emc_sdram_ras_cas_cfg {
    233			pins = "p6_5", "p6_4";
    234			function = "emc";
    235			slew-rate = <1>;
    236			bias-disable;
    237			input-enable;
    238			input-schmitt-disable;
    239		};
    240
    241		emc_sdram_dycs0_cfg {
    242			pins = "p6_9";
    243			function = "emc";
    244			slew-rate = <1>;
    245			bias-disable;
    246			input-enable;
    247			input-schmitt-disable;
    248		};
    249
    250		emc_sdram_cke_cfg {
    251			pins = "p6_11";
    252			function = "emc";
    253			slew-rate = <1>;
    254			bias-disable;
    255			input-enable;
    256			input-schmitt-disable;
    257		};
    258
    259		emc_sdram_clock_cfg {
    260			pins = "clk0", "clk1", "clk2", "clk3";
    261			function = "emc";
    262			slew-rate = <1>;
    263			bias-disable;
    264			input-enable;
    265			input-schmitt-disable;
    266		};
    267	};
    268
    269	enet_rmii_pins: enet-rmii-pins {
    270		enet_rmii_rxd_cfg {
    271			pins = "p1_15", "p0_0";
    272			function = "enet";
    273			slew-rate = <1>;
    274			bias-disable;
    275			input-enable;
    276			input-schmitt-disable;
    277		};
    278
    279		enet_rmii_txd_cfg {
    280			pins = "p1_18", "p1_20";
    281			function = "enet";
    282			slew-rate = <1>;
    283			bias-disable;
    284			input-enable;
    285			input-schmitt-disable;
    286		};
    287
    288		enet_rmii_rx_dv_cfg {
    289			pins = "p1_16";
    290			function = "enet";
    291			bias-disable;
    292			input-enable;
    293			input-schmitt-disable;
    294		};
    295
    296		enet_rmii_tx_en_cfg {
    297			pins = "p0_1";
    298			function = "enet";
    299			bias-disable;
    300			input-enable;
    301			input-schmitt-disable;
    302		};
    303
    304		enet_ref_clk_cfg {
    305			pins = "p1_19";
    306			function = "enet";
    307			slew-rate = <1>;
    308			bias-disable;
    309			input-enable;
    310			input-schmitt-disable;
    311		};
    312
    313		enet_mdio_cfg {
    314			pins = "p1_17";
    315			function = "enet";
    316			bias-disable;
    317			input-enable;
    318			input-schmitt-disable;
    319		};
    320
    321		enet_mdc_cfg {
    322			pins = "pc_1";
    323			function = "enet";
    324			slew-rate = <1>;
    325			bias-disable;
    326			input-enable;
    327			input-schmitt-disable;
    328		};
    329	};
    330
    331	gpio_joystick_pins: gpio-joystick-pins {
    332		gpio_joystick_cfg {
    333			pins =	"p9_0", "p9_1", "pa_1", "pa_2", "pa_3";
    334			function = "gpio";
    335			input-enable;
    336			bias-disable;
    337		};
    338	};
    339
    340	i2c0_pins: i2c0-pins {
    341		i2c0_pins_cfg {
    342			pins = "i2c0_scl", "i2c0_sda";
    343			function = "i2c0";
    344			input-enable;
    345		};
    346	};
    347
    348	sdmmc_pins: sdmmc-pins {
    349		sdmmc_clk_cfg {
    350			pins = "pc_0";
    351			function = "sdmmc";
    352			slew-rate = <1>;
    353			bias-pull-down;
    354		};
    355
    356		sdmmc_cmd_dat0_3_cfg {
    357			pins = "pc_4", "pc_5", "pc_6", "pc_7", "pc_10";
    358			function = "sdmmc";
    359			slew-rate = <1>;
    360			bias-disable;
    361			input-enable;
    362			input-schmitt-disable;
    363		};
    364
    365		sdmmc_cd_cfg {
    366			pins = "pc_8";
    367			function = "sdmmc";
    368			bias-pull-down;
    369			input-enable;
    370		};
    371
    372		sdmmc_pow_cfg {
    373			pins = "pc_9";
    374			function = "sdmmc";
    375			bias-pull-down;
    376		};
    377	};
    378
    379	spifi_pins: spifi-pins {
    380		spifi_clk_cfg {
    381			pins = "p3_3";
    382			function = "spifi";
    383			slew-rate = <1>;
    384			bias-disable;
    385			input-enable;
    386			input-schmitt-disable;
    387		};
    388
    389		spifi_mosi_miso_sio2_3_cfg {
    390			pins = "p3_7", "p3_6", "p3_5", "p3_4";
    391			function = "spifi";
    392			slew-rate = <0>;
    393			bias-disable;
    394			input-enable;
    395			input-schmitt-disable;
    396		};
    397
    398		spifi_cs_cfg {
    399			pins = "p3_8";
    400			function = "spifi";
    401			bias-disable;
    402		};
    403	};
    404
    405	ssp0_pins: ssp0-pins {
    406		ssp0_sck_miso_mosi {
    407			pins = "pf_0", "pf_2", "pf_3";
    408			function = "ssp0";
    409			slew-rate = <1>;
    410			bias-pull-down;
    411			input-enable;
    412			input-schmitt-disable;
    413		};
    414
    415		ssp0_ssel {
    416			pins = "pf_1";
    417			function = "ssp0";
    418			bias-pull-up;
    419		};
    420	};
    421
    422	uart0_pins: uart0-pins {
    423		uart0_rx_cfg {
    424			pins = "pf_11";
    425			function = "uart0";
    426			input-schmitt-disable;
    427			bias-disable;
    428			input-enable;
    429		};
    430
    431		uart0_tx_cfg {
    432			pins = "pf_10";
    433			function = "uart0";
    434			bias-pull-down;
    435		};
    436	};
    437
    438	uart3_pins: uart3-pins {
    439		uart3_rx_cfg {
    440			pins = "p2_4";
    441			function = "uart3";
    442			input-schmitt-disable;
    443			bias-disable;
    444			input-enable;
    445		};
    446
    447		uart3_tx_cfg {
    448			pins = "p9_3";
    449			function = "uart3";
    450			bias-pull-down;
    451		};
    452	};
    453
    454	usb0_pins: usb0-pins {
    455		usb0_pwr_enable {
    456			pins = "p2_3";
    457			function = "usb0";
    458		};
    459
    460		usb0_pwr_fault {
    461			pins = "p8_0";
    462			function = "usb0";
    463			bias-disable;
    464			input-enable;
    465		};
    466	};
    467};
    468
    469&adc0 {
    470	status = "okay";
    471	vref-supply = <&vcc>;
    472};
    473
    474&i2c0 {
    475	status = "okay";
    476	pinctrl-names = "default";
    477	pinctrl-0 = <&i2c0_pins>;
    478	clock-frequency = <400000>;
    479
    480	mma7455@1d {
    481		compatible = "fsl,mma7455";
    482		reg = <0x1d>;
    483	};
    484
    485	lm75@48 {
    486		compatible = "nxp,lm75";
    487		reg = <0x48>;
    488	};
    489
    490	eeprom@57 {
    491		compatible = "microchip,24c64", "atmel,24c64";
    492		reg = <0x57>;
    493	};
    494};
    495
    496&dac {
    497	status = "okay";
    498	vref-supply = <&vcc>;
    499};
    500
    501&emc {
    502	status = "okay";
    503	pinctrl-names = "default";
    504	pinctrl-0 = <&emc_pins>;
    505
    506	cs0 {
    507		#address-cells = <2>;
    508		#size-cells = <1>;
    509		ranges;
    510
    511		mpmc,cs = <0>;
    512		mpmc,memory-width = <16>;
    513		mpmc,byte-lane-low;
    514		mpmc,write-enable-delay = <0>;
    515		mpmc,output-enable-delay = <0>;
    516		mpmc,read-access-delay = <70>;
    517		mpmc,page-mode-read-delay = <70>;
    518
    519		flash@0,0 {
    520			compatible = "sst,sst39vf320", "cfi-flash";
    521			reg = <0 0 0x400000>;
    522			bank-width = <2>;
    523			#address-cells = <1>;
    524			#size-cells = <1>;
    525
    526			partition@0 {
    527				label = "bootloader";
    528				reg = <0x000000 0x040000>; /* 256 KiB */
    529			};
    530
    531			partition@1 {
    532				label = "kernel";
    533				reg = <0x040000 0x2c0000>; /* 2.75 MiB */
    534			};
    535
    536			partition@2 {
    537				label = "rootfs";
    538				reg = <0x300000 0x100000>; /* 1 MiB */
    539			};
    540		};
    541	};
    542
    543	cs2 {
    544		#address-cells = <2>;
    545		#size-cells = <1>;
    546		ranges;
    547
    548		mpmc,cs = <2>;
    549		mpmc,memory-width = <16>;
    550
    551		mmio_leds: gpio@2,0 {
    552			compatible = "ti,7416374";
    553			reg = <2 0 0x2>;
    554			gpio-controller;
    555			#gpio-cells = <2>;
    556		};
    557
    558	};
    559};
    560
    561&enet_tx_clk {
    562	clock-frequency = <50000000>;
    563};
    564
    565&mac {
    566	status = "okay";
    567	phy-mode = "rmii";
    568	pinctrl-names = "default";
    569	pinctrl-0 = <&enet_rmii_pins>;
    570};
    571
    572&mmcsd {
    573	status = "okay";
    574	bus-width = <4>;
    575	vmmc-supply = <&vmmc>;
    576	pinctrl-names = "default";
    577	pinctrl-0 = <&sdmmc_pins>;
    578};
    579
    580&spifi {
    581	status = "okay";
    582	pinctrl-names = "default";
    583	pinctrl-0 = <&spifi_pins>;
    584
    585	flash {
    586		compatible = "jedec,spi-nor";
    587		spi-cpol;
    588		spi-cpha;
    589		spi-rx-bus-width = <4>;
    590		#address-cells = <1>;
    591		#size-cells = <1>;
    592
    593		partition@0 {
    594			label = "data";
    595			reg = <0 0x200000>;
    596		};
    597	};
    598};
    599
    600&ssp0 {
    601	status = "okay";
    602	pinctrl-names = "default";
    603	pinctrl-0 = <&ssp0_pins>;
    604	num-cs = <1>;
    605};
    606
    607&uart0 {
    608	status = "okay";
    609	pinctrl-names = "default";
    610	pinctrl-0 = <&uart0_pins>;
    611};
    612
    613&uart3 {
    614	status = "okay";
    615	pinctrl-names = "default";
    616	pinctrl-0 = <&uart3_pins>;
    617};
    618
    619&usb0 {
    620	status = "okay";
    621	pinctrl-names = "default";
    622	pinctrl-0 = <&usb0_pins>;
    623};