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/kirkwood-linksys-viper.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
    2 /*
    3  * kirkwood-viper.dts - Device Tree file for Linksys viper (E4200v2 / EA4500)
    4  *
    5  * (c) 2013 Jonas Gorski <jogo@openwrt.org>
    6  * (c) 2013 Deutsche Telekom Innovation Laboratories
    7  * (c) 2014 Luka Perkov <luka@openwrt.org>
    8  * (c) 2014 Randy C. Will <randall.will@gmail.com>
    9  *
   10  */
   11 
   12 /dts-v1/;
   13 
   14 #include "kirkwood.dtsi"
   15 #include "kirkwood-6282.dtsi"
   16 
   17 / {
   18         model = "Linksys Viper (E4200v2 / EA4500)";
   19         compatible = "linksys,viper", "marvell,kirkwood-88f6282", "marvell,kirkwood";
   20 
   21         memory {
   22                 device_type = "memory";
   23                 reg = <0x00000000 0x8000000>;
   24         };
   25 
   26         aliases {
   27                 serial0 = &uart0;
   28         };
   29 
   30         chosen {
   31                 stdout-path = "serial0:115200n8";
   32         };
   33 
   34         gpio_keys {
   35                 compatible = "gpio-keys";
   36                 #address-cells = <1>;
   37                 #size-cells = <0>;
   38                 pinctrl-0 = < &pmx_btn_wps &pmx_btn_reset >;
   39                 pinctrl-names = "default";
   40 
   41                 wps {
   42                         label = "WPS Button";
   43                         linux,code = <KEY_WPS_BUTTON>;
   44                         gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
   45                 };
   46 
   47                 reset {
   48                         label = "Reset Button";
   49                         linux,code = <KEY_RESTART>;
   50                         gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
   51                 };
   52         };
   53 
   54         gpio-leds {
   55                 compatible = "gpio-leds";
   56                 pinctrl-0 = < &pmx_led_white_health &pmx_led_white_pulse >;
   57                 pinctrl-names = "default";
   58 
   59                 white-health {
   60                         label = "viper:white:health";
   61                         gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
   62                 };
   63 
   64                 white-pulse {
   65                         label = "viper:white:pulse";
   66                         gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
   67                 };
   68         };
   69 };
   70 
   71 &pinctrl {
   72         pmx_led_white_health: pmx-led-white-health {
   73                 marvell,pins = "mpp7";
   74                 marvell,function = "gpo";
   75         };
   76         pmx_led_white_pulse: pmx-led-white-pulse {
   77                 marvell,pins = "mpp14";
   78                 marvell,function = "gpio";
   79         };
   80         pmx_btn_wps: pmx-btn-wps {
   81                 marvell,pins = "mpp47";
   82                 marvell,function = "gpio";
   83         };
   84         pmx_btn_reset: pmx-btn-reset {
   85                 marvell,pins = "mpp48";
   86                 marvell,function = "gpio";
   87         };
   88 };
   89 
   90 &nand {
   91         status = "okay";
   92         pinctrl-0 = <&pmx_nand>;
   93         pinctrl-names = "default";
   94 
   95         partitions {
   96                 compatible = "fixed-partitions";
   97                 #address-cells = <1>;
   98                 #size-cells = <1>;
   99 
  100                 partition@0 {
  101                         label = "u-boot";
  102                         reg = <0x0 0x80000>;
  103                         read-only;
  104                 };
  105 
  106                 partition@80000 {
  107                         label = "u_env";
  108                         reg = <0x80000 0x20000>;
  109                 };
  110 
  111                 partition@a0000 {
  112                         label = "s_env";
  113                         reg = <0xA0000 0x20000>;
  114                 };
  115 
  116                 partition@200000 {
  117                         label = "kernel";
  118                         reg = <0x200000 0x2A0000>;
  119                 };
  120 
  121                 partition@4a0000 {
  122                         label = "rootfs";
  123                         reg = <0x4A0000 0x1760000>;
  124                 };
  125 
  126                 partition@1c00000 {
  127                         label = "alt_kernel";
  128                         reg = <0x1C00000 0x2A0000>;
  129                 };
  130 
  131                 partition@1ea0000 {
  132                         label = "alt_rootfs";
  133                         reg = <0x1EA0000 0x1760000>;
  134                 };
  135 
  136                 partition@3600000 {
  137                         label = "syscfg";
  138                         reg = <0x3600000 0x4A00000>;
  139                 };
  140 
  141                 partition@c0000 {
  142                         label = "unused";
  143                         reg = <0xC0000 0x140000>;
  144                 };
  145 
  146         };
  147 };
  148 
  149 &pciec {
  150         status = "okay";
  151 };
  152 
  153 &pcie0 {
  154         status = "okay";
  155 };
  156 
  157 &pcie1 {
  158         status = "okay";
  159 };
  160 
  161 &mdio {
  162         status = "okay";
  163 
  164         switch@10 {
  165                 compatible = "marvell,mv88e6085";
  166                 #address-cells = <1>;
  167                 #size-cells = <0>;
  168                 reg = <16>;
  169 
  170                 ports {
  171                         #address-cells = <1>;
  172                         #size-cells = <0>;
  173 
  174                         port@0 {
  175                                 reg = <0>;
  176                                 label = "ethernet1";
  177                         };
  178 
  179                         port@1 {
  180                                 reg = <1>;
  181                                 label = "ethernet2";
  182                         };
  183 
  184                         port@2 {
  185                                 reg = <2>;
  186                                 label = "ethernet3";
  187                         };
  188 
  189                         port@3 {
  190                                 reg = <3>;
  191                                 label = "ethernet4";
  192                         };
  193 
  194                         port@4 {
  195                                 reg = <4>;
  196                                 label = "internet";
  197                         };
  198 
  199                         port@5 {
  200                                 reg = <5>;
  201                                 label = "cpu";
  202                                 ethernet = <&eth0port>;
  203                                 fixed-link {
  204                                         speed = <1000>;
  205                                         full-duplex;
  206                                 };
  207                         };
  208                 };
  209         };
  210 };
  211 
  212 &uart0 {
  213         status = "okay";
  214 };
  215 
  216 /* eth0 is connected to a Marvell 88E6171 switch, without a PHY. So set
  217  * fixed speed and duplex.
  218  */
  219 &eth0 {
  220         status = "okay";
  221         ethernet0-port@0 {
  222                 speed = <1000>;
  223                 duplex = <1>;
  224         };
  225 };
  226 
  227 /* eth1 is connected to the switch at port 6. However DSA only supports a
  228  * single CPU port. So leave this port disabled to avoid confusion.
  229  */
  230 &eth1 {
  231         status = "disabled";
  232 };
  233 
  234 /* There is no battery on the board, so the RTC does not keep
  235  * time when there is no power, making it useless.
  236  */
  237 &rtc {
  238         status = "disabled";
  239 };
  240 

Cache object: 829975812ce6c3dfc4e1694e463c08a1


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