The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/src/arm/imx28-duckbill-2-enocean.dts

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    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 };

Cache object: 67f217e70c8218c45eac1e7f11d661e1


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.