mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-28 23:23:55 +08:00
fcaf20360a
Based on 1 normalized pattern(s): the code contained herein is licensed under the gnu general public license you may obtain a copy of the gnu general public license version 2 or later at the following locations http www opensource org licenses gpl license html http www gnu org copyleft gpl html extracted by the scancode license scanner the SPDX license identifier GPL-2.0-or-later has been chosen to replace the boilerplate/reference in 161 file(s). Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Richard Fontana <rfontana@redhat.com> Reviewed-by: Allison Randal <allison@lohutok.net> Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190527070033.383790741@linutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
214 lines
4.7 KiB
Plaintext
214 lines
4.7 KiB
Plaintext
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
/*
|
|
* Copyright (C) 2015-2017 I2SE GmbH <info@i2se.com>
|
|
* Copyright (C) 2016 Michael Heimpold <mhei@heimpold.de>
|
|
*/
|
|
|
|
/dts-v1/;
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
#include <dt-bindings/input/input.h>
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include "imx28.dtsi"
|
|
|
|
/ {
|
|
model = "I2SE Duckbill 2 EnOcean";
|
|
compatible = "i2se,duckbill-2-enocean", "i2se,duckbill-2", "fsl,imx28";
|
|
|
|
memory@40000000 {
|
|
device_type = "memory";
|
|
reg = <0x40000000 0x08000000>;
|
|
};
|
|
|
|
apb@80000000 {
|
|
apbh@80000000 {
|
|
ssp0: spi@80010000 {
|
|
compatible = "fsl,imx28-mmc";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&mmc0_8bit_pins_a
|
|
&mmc0_cd_cfg &mmc0_sck_cfg>;
|
|
bus-width = <8>;
|
|
vmmc-supply = <®_3p3v>;
|
|
status = "okay";
|
|
non-removable;
|
|
};
|
|
|
|
ssp2: spi@80014000 {
|
|
compatible = "fsl,imx28-mmc";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&mmc2_4bit_pins_b
|
|
&mmc2_cd_cfg &mmc2_sck_cfg_b>;
|
|
bus-width = <4>;
|
|
vmmc-supply = <®_3p3v>;
|
|
status = "okay";
|
|
};
|
|
|
|
pinctrl@80018000 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&hog_pins_a>;
|
|
|
|
hog_pins_a: hog@0 {
|
|
reg = <0>;
|
|
fsl,pinmux-ids = <
|
|
MX28_PAD_LCD_D17__GPIO_1_17 /* Revision detection */
|
|
>;
|
|
fsl,drive-strength = <MXS_DRIVE_4mA>;
|
|
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
|
fsl,pull-up = <MXS_PULL_DISABLE>;
|
|
};
|
|
|
|
mac0_phy_reset_pin: mac0-phy-reset@0 {
|
|
reg = <0>;
|
|
fsl,pinmux-ids = <
|
|
MX28_PAD_GPMI_ALE__GPIO_0_26 /* PHY Reset */
|
|
>;
|
|
fsl,drive-strength = <MXS_DRIVE_4mA>;
|
|
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
|
fsl,pull-up = <MXS_PULL_DISABLE>;
|
|
};
|
|
|
|
mac0_phy_int_pin: mac0-phy-int@0 {
|
|
reg = <0>;
|
|
fsl,pinmux-ids = <
|
|
MX28_PAD_GPMI_D07__GPIO_0_7 /* PHY Interrupt */
|
|
>;
|
|
fsl,drive-strength = <MXS_DRIVE_4mA>;
|
|
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
|
fsl,pull-up = <MXS_PULL_DISABLE>;
|
|
};
|
|
|
|
led_pins: leds@0 {
|
|
reg = <0>;
|
|
fsl,pinmux-ids = <
|
|
MX28_PAD_SAIF0_MCLK__GPIO_3_20
|
|
MX28_PAD_SAIF0_LRCLK__GPIO_3_21
|
|
MX28_PAD_AUART0_CTS__GPIO_3_2
|
|
MX28_PAD_I2C0_SCL__GPIO_3_24
|
|
MX28_PAD_I2C0_SDA__GPIO_3_25
|
|
>;
|
|
fsl,drive-strength = <MXS_DRIVE_4mA>;
|
|
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
|
fsl,pull-up = <MXS_PULL_DISABLE>;
|
|
};
|
|
|
|
enocean_button: enocean-button@0 {
|
|
reg = <0>;
|
|
fsl,pinmux-ids = <
|
|
MX28_PAD_AUART0_RTS__GPIO_3_3
|
|
>;
|
|
fsl,drive-strength = <MXS_DRIVE_4mA>;
|
|
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
|
fsl,pull-up = <MXS_PULL_DISABLE>;
|
|
};
|
|
};
|
|
};
|
|
|
|
apbx@80040000 {
|
|
lradc@80050000 {
|
|
status = "okay";
|
|
};
|
|
|
|
auart0: serial@8006a000 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&auart0_2pins_a>;
|
|
status = "okay";
|
|
};
|
|
|
|
duart: serial@80074000 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&duart_pins_a>;
|
|
status = "okay";
|
|
};
|
|
|
|
usbphy0: usbphy@8007c000 {
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
ahb@80080000 {
|
|
usb0: usb@80080000 {
|
|
status = "okay";
|
|
dr_mode = "peripheral";
|
|
};
|
|
|
|
mac0: ethernet@800f0000 {
|
|
phy-mode = "rmii";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&mac0_pins_a>, <&mac0_phy_reset_pin>;
|
|
phy-supply = <®_3p3v>;
|
|
phy-reset-gpios = <&gpio0 26 GPIO_ACTIVE_LOW>;
|
|
phy-reset-duration = <25>;
|
|
phy-handle = <ðphy>;
|
|
status = "okay";
|
|
|
|
mdio {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
ethphy: ethernet-phy@0 {
|
|
compatible = "ethernet-phy-ieee802.3-c22";
|
|
reg = <0>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&mac0_phy_int_pin>;
|
|
interrupt-parent = <&gpio0>;
|
|
interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
|
|
max-speed = <100>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
reg_3p3v: regulator-3p3v {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "3P3V";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
leds {
|
|
compatible = "gpio-leds";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&led_pins>;
|
|
|
|
status-red {
|
|
label = "duckbill:red:status";
|
|
gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
|
|
linux,default-trigger = "default-on";
|
|
};
|
|
|
|
status-green {
|
|
label = "duckbill:green:status";
|
|
gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>;
|
|
linux,default-trigger = "heartbeat";
|
|
};
|
|
|
|
enocean-blue {
|
|
label = "duckbill:blue:enocean";
|
|
gpios = <&gpio3 24 GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
enocean-red {
|
|
label = "duckbill:red:enocean";
|
|
gpios = <&gpio3 25 GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
enocean-green {
|
|
label = "duckbill:green:enocean";
|
|
gpios = <&gpio3 2 GPIO_ACTIVE_LOW>;
|
|
};
|
|
};
|
|
|
|
gpio-keys {
|
|
compatible = "gpio-keys";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&enocean_button>;
|
|
|
|
enocean {
|
|
label = "EnOcean";
|
|
linux,code = <KEY_NEW>;
|
|
gpios = <&gpio3 3 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
};
|
|
};
|