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

imx28-duckbill-2-enocean.dts (4776B)


      1// SPDX-License-Identifier: GPL-2.0-or-later
      2/*
      3 * Copyright (C) 2015-2017 I2SE GmbH <info@i2se.com>
      4 * Copyright (C) 2016 Michael Heimpold <mhei@heimpold.de>
      5 */
      6
      7/dts-v1/;
      8#include <dt-bindings/interrupt-controller/irq.h>
      9#include <dt-bindings/input/input.h>
     10#include <dt-bindings/gpio/gpio.h>
     11#include "imx28.dtsi"
     12
     13/ {
     14	model = "I2SE Duckbill 2 EnOcean";
     15	compatible = "i2se,duckbill-2-enocean", "i2se,duckbill-2", "fsl,imx28";
     16
     17	memory@40000000 {
     18		device_type = "memory";
     19		reg = <0x40000000 0x08000000>;
     20	};
     21
     22	apb@80000000 {
     23		apbh@80000000 {
     24			ssp0: spi@80010000 {
     25				compatible = "fsl,imx28-mmc";
     26				pinctrl-names = "default";
     27				pinctrl-0 = <&mmc0_8bit_pins_a
     28					&mmc0_cd_cfg &mmc0_sck_cfg>;
     29				bus-width = <8>;
     30				vmmc-supply = <&reg_3p3v>;
     31				status = "okay";
     32				non-removable;
     33			};
     34
     35			ssp2: spi@80014000 {
     36				compatible = "fsl,imx28-mmc";
     37				pinctrl-names = "default";
     38				pinctrl-0 = <&mmc2_4bit_pins_b
     39					&mmc2_cd_cfg &mmc2_sck_cfg_b>;
     40				bus-width = <4>;
     41				vmmc-supply = <&reg_3p3v>;
     42				status = "okay";
     43			};
     44
     45			pinctrl@80018000 {
     46				pinctrl-names = "default";
     47				pinctrl-0 = <&hog_pins_a>;
     48
     49				hog_pins_a: hog@0 {
     50					reg = <0>;
     51					fsl,pinmux-ids = <
     52						MX28_PAD_LCD_D17__GPIO_1_17    /* Revision detection */
     53					>;
     54					fsl,drive-strength = <MXS_DRIVE_4mA>;
     55					fsl,voltage = <MXS_VOLTAGE_HIGH>;
     56					fsl,pull-up = <MXS_PULL_DISABLE>;
     57				};
     58
     59				mac0_phy_reset_pin: mac0-phy-reset@0 {
     60					reg = <0>;
     61					fsl,pinmux-ids = <
     62						MX28_PAD_GPMI_ALE__GPIO_0_26    /* PHY Reset */
     63					>;
     64					fsl,drive-strength = <MXS_DRIVE_4mA>;
     65					fsl,voltage = <MXS_VOLTAGE_HIGH>;
     66					fsl,pull-up = <MXS_PULL_DISABLE>;
     67				};
     68
     69				mac0_phy_int_pin: mac0-phy-int@0 {
     70					reg = <0>;
     71					fsl,pinmux-ids = <
     72						MX28_PAD_GPMI_D07__GPIO_0_7    /* PHY Interrupt */
     73					>;
     74					fsl,drive-strength = <MXS_DRIVE_4mA>;
     75					fsl,voltage = <MXS_VOLTAGE_HIGH>;
     76					fsl,pull-up = <MXS_PULL_DISABLE>;
     77				};
     78
     79				led_pins: leds@0 {
     80					reg = <0>;
     81					fsl,pinmux-ids = <
     82						MX28_PAD_SAIF0_MCLK__GPIO_3_20
     83						MX28_PAD_SAIF0_LRCLK__GPIO_3_21
     84						MX28_PAD_AUART0_CTS__GPIO_3_2
     85						MX28_PAD_I2C0_SCL__GPIO_3_24
     86						MX28_PAD_I2C0_SDA__GPIO_3_25
     87					>;
     88					fsl,drive-strength = <MXS_DRIVE_4mA>;
     89					fsl,voltage = <MXS_VOLTAGE_HIGH>;
     90					fsl,pull-up = <MXS_PULL_DISABLE>;
     91				};
     92
     93				enocean_button: enocean-button@0 {
     94					reg = <0>;
     95					fsl,pinmux-ids = <
     96						MX28_PAD_AUART0_RTS__GPIO_3_3
     97					>;
     98					fsl,drive-strength = <MXS_DRIVE_4mA>;
     99					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    100					fsl,pull-up = <MXS_PULL_DISABLE>;
    101				};
    102			};
    103		};
    104
    105		apbx@80040000 {
    106			lradc@80050000 {
    107				status = "okay";
    108			};
    109
    110			auart0: serial@8006a000 {
    111				pinctrl-names = "default";
    112				pinctrl-0 = <&auart0_2pins_a>;
    113				status = "okay";
    114			};
    115
    116			duart: serial@80074000 {
    117				pinctrl-names = "default";
    118				pinctrl-0 = <&duart_pins_a>;
    119				status = "okay";
    120			};
    121
    122			usbphy0: usbphy@8007c000 {
    123				status = "okay";
    124			};
    125		};
    126	};
    127
    128	ahb@80080000 {
    129		usb0: usb@80080000 {
    130			status = "okay";
    131			dr_mode = "peripheral";
    132		};
    133
    134		mac0: ethernet@800f0000 {
    135			phy-mode = "rmii";
    136			pinctrl-names = "default";
    137			pinctrl-0 = <&mac0_pins_a>, <&mac0_phy_reset_pin>;
    138			phy-supply = <&reg_3p3v>;
    139			phy-reset-gpios = <&gpio0 26 GPIO_ACTIVE_LOW>;
    140			phy-reset-duration = <25>;
    141			phy-handle = <&ethphy>;
    142			status = "okay";
    143
    144			mdio {
    145				#address-cells = <1>;
    146				#size-cells = <0>;
    147
    148				ethphy: ethernet-phy@0 {
    149					compatible = "ethernet-phy-ieee802.3-c22";
    150					reg = <0>;
    151					pinctrl-names = "default";
    152					pinctrl-0 = <&mac0_phy_int_pin>;
    153					interrupt-parent = <&gpio0>;
    154					interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
    155					max-speed = <100>;
    156				};
    157			};
    158		};
    159	};
    160
    161	reg_3p3v: regulator-3p3v {
    162		compatible = "regulator-fixed";
    163		regulator-name = "3P3V";
    164		regulator-min-microvolt = <3300000>;
    165		regulator-max-microvolt = <3300000>;
    166		regulator-always-on;
    167	};
    168
    169	leds {
    170		compatible = "gpio-leds";
    171		pinctrl-names = "default";
    172		pinctrl-0 = <&led_pins>;
    173
    174		status-red {
    175			label = "duckbill:red:status";
    176			gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
    177			linux,default-trigger = "default-on";
    178		};
    179
    180		status-green {
    181			label = "duckbill:green:status";
    182			gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>;
    183			linux,default-trigger = "heartbeat";
    184		};
    185
    186		enocean-blue {
    187			label = "duckbill:blue:enocean";
    188			gpios = <&gpio3 24 GPIO_ACTIVE_LOW>;
    189		};
    190
    191		enocean-red {
    192			label = "duckbill:red:enocean";
    193			gpios = <&gpio3 25 GPIO_ACTIVE_LOW>;
    194		};
    195
    196		enocean-green {
    197			label = "duckbill:green:enocean";
    198			gpios = <&gpio3 2 GPIO_ACTIVE_LOW>;
    199		};
    200	};
    201
    202	gpio-keys {
    203		compatible = "gpio-keys";
    204		pinctrl-names = "default";
    205		pinctrl-0 = <&enocean_button>;
    206
    207		enocean {
    208			label = "EnOcean";
    209			linux,code = <KEY_NEW>;
    210			gpios = <&gpio3 3 GPIO_ACTIVE_HIGH>;
    211		};
    212	};
    213};