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

Cache object: ceac81b2a9477c9ce3a4e1f4f86d4d56


[ 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.