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/sunxi-bananapi-m2-plus.dtsi

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 /*
    2  * Copyright (C) 2016 Chen-Yu Tsai <wens@csie.org>
    3  *
    4  * This file is dual-licensed: you can use it either under the terms
    5  * of the GPL or the X11 license, at your option. Note that this dual
    6  * licensing only applies to this file, and not this project as a
    7  * whole.
    8  *
    9  *  a) This file is free software; you can redistribute it and/or
   10  *     modify it under the terms of the GNU General Public License as
   11  *     published by the Free Software Foundation; either version 2 of the
   12  *     License, or (at your option) any later version.
   13  *
   14  *     This file is distributed in the hope that it will be useful,
   15  *     but WITHOUT ANY WARRANTY; without even the implied warranty of
   16  *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   17  *     GNU General Public License for more details.
   18  *
   19  * Or, alternatively,
   20  *
   21  *  b) Permission is hereby granted, free of charge, to any person
   22  *     obtaining a copy of this software and associated documentation
   23  *     files (the "Software"), to deal in the Software without
   24  *     restriction, including without limitation the rights to use,
   25  *     copy, modify, merge, publish, distribute, sublicense, and/or
   26  *     sell copies of the Software, and to permit persons to whom the
   27  *     Software is furnished to do so, subject to the following
   28  *     conditions:
   29  *
   30  *     The above copyright notice and this permission notice shall be
   31  *     included in all copies or substantial portions of the Software.
   32  *
   33  *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
   34  *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
   35  *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
   36  *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
   37  *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
   38  *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
   39  *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
   40  *     OTHER DEALINGS IN THE SOFTWARE.
   41  */
   42 
   43 #include "sunxi-common-regulators.dtsi"
   44 
   45 #include <dt-bindings/gpio/gpio.h>
   46 #include <dt-bindings/input/input.h>
   47 
   48 / {
   49         aliases {
   50                 ethernet0 = &emac;
   51                 serial0 = &uart0;
   52                 serial1 = &uart1;
   53         };
   54 
   55         chosen {
   56                 stdout-path = "serial0:115200n8";
   57         };
   58 
   59         connector {
   60                 compatible = "hdmi-connector";
   61                 type = "a";
   62 
   63                 port {
   64                         hdmi_con_in: endpoint {
   65                                 remote-endpoint = <&hdmi_out_con>;
   66                         };
   67                 };
   68         };
   69 
   70         leds {
   71                 compatible = "gpio-leds";
   72 
   73                 pwr_led {
   74                         label = "bananapi-m2-plus:red:pwr";
   75                         gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; /* PL10 */
   76                         default-state = "on";
   77                 };
   78         };
   79 
   80         gpio-keys {
   81                 compatible = "gpio-keys";
   82 
   83                 switch-4 {
   84                         label = "power";
   85                         linux,code = <KEY_POWER>;
   86                         gpios = <&r_pio 0 3 GPIO_ACTIVE_LOW>;
   87                         wakeup-source;
   88                 };
   89         };
   90 
   91         reg_gmac_3v3: gmac-3v3 {
   92                       compatible = "regulator-fixed";
   93                       regulator-name = "gmac-3v3";
   94                       regulator-min-microvolt = <3300000>;
   95                       regulator-max-microvolt = <3300000>;
   96                       startup-delay-us = <100000>;
   97                       enable-active-high;
   98                       gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>;
   99         };
  100 
  101         wifi_pwrseq: wifi_pwrseq {
  102                 compatible = "mmc-pwrseq-simple";
  103                 reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */
  104                 clocks = <&rtc CLK_OSC32K_FANOUT>;
  105                 clock-names = "ext_clock";
  106         };
  107 };
  108 
  109 &de {
  110         status = "okay";
  111 };
  112 
  113 &ehci0 {
  114         status = "okay";
  115 };
  116 
  117 &ehci1 {
  118         status = "okay";
  119 };
  120 
  121 &ehci2 {
  122         status = "okay";
  123 };
  124 
  125 &emac {
  126         pinctrl-names = "default";
  127         pinctrl-0 = <&emac_rgmii_pins>;
  128         phy-supply = <&reg_gmac_3v3>;
  129         phy-handle = <&ext_rgmii_phy>;
  130         phy-mode = "rgmii-id";
  131 
  132         status = "okay";
  133 };
  134 
  135 &external_mdio {
  136         ext_rgmii_phy: ethernet-phy@1 {
  137                 compatible = "ethernet-phy-ieee802.3-c22";
  138                 reg = <1>;
  139         };
  140 };
  141 
  142 &hdmi {
  143         status = "okay";
  144 };
  145 
  146 &hdmi_out {
  147         hdmi_out_con: endpoint {
  148                 remote-endpoint = <&hdmi_con_in>;
  149         };
  150 };
  151 
  152 &ir {
  153         pinctrl-names = "default";
  154         pinctrl-0 = <&r_ir_rx_pin>;
  155         status = "okay";
  156 };
  157 
  158 &mmc0 {
  159         vmmc-supply = <&reg_vcc3v3>;
  160         bus-width = <4>;
  161         cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
  162         status = "okay";
  163 };
  164 
  165 &mmc1 {
  166         vmmc-supply = <&reg_vcc3v3>;
  167         vqmmc-supply = <&reg_vcc3v3>;
  168         mmc-pwrseq = <&wifi_pwrseq>;
  169         bus-width = <4>;
  170         non-removable;
  171         status = "okay";
  172 
  173         brcmf: wifi@1 {
  174                 reg = <1>;
  175                 compatible = "brcm,bcm4329-fmac";
  176                 interrupt-parent = <&pio>;
  177                 interrupts = <6 10 IRQ_TYPE_LEVEL_LOW>; /* PG10 / EINT10 */
  178                 interrupt-names = "host-wake";
  179         };
  180 };
  181 
  182 &mmc2 {
  183         pinctrl-names = "default";
  184         pinctrl-0 = <&mmc2_8bit_pins>;
  185         vmmc-supply = <&reg_vcc3v3>;
  186         vqmmc-supply = <&reg_vcc3v3>;
  187         bus-width = <8>;
  188         non-removable;
  189         status = "okay";
  190 };
  191 
  192 &ohci0 {
  193         status = "okay";
  194 };
  195 
  196 &ohci1 {
  197         status = "okay";
  198 };
  199 
  200 &ohci2 {
  201         status = "okay";
  202 };
  203 
  204 &reg_usb0_vbus {
  205         gpio = <&pio 3 11 GPIO_ACTIVE_HIGH>; /* PD11 */
  206         status = "okay";
  207 };
  208 
  209 &uart0 {
  210         pinctrl-names = "default";
  211         pinctrl-0 = <&uart0_pa_pins>;
  212         status = "okay";
  213 };
  214 
  215 &uart1 {
  216         pinctrl-names = "default";
  217         pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
  218         uart-has-rtscts;
  219         status = "okay";
  220 
  221         bluetooth {
  222                 compatible = "brcm,bcm43438-bt";
  223                 max-speed = <1500000>;
  224                 clocks = <&rtc CLK_OSC32K_FANOUT>;
  225                 clock-names = "lpo";
  226                 vbat-supply = <&reg_vcc3v3>;
  227                 vddio-supply = <&reg_vcc3v3>;
  228                 device-wakeup-gpios = <&pio 6 13 GPIO_ACTIVE_HIGH>; /* PG13 */
  229                 host-wakeup-gpios = <&pio 6 11 GPIO_ACTIVE_HIGH>; /* PG11 */
  230                 shutdown-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
  231         };
  232 };
  233 
  234 &usb_otg {
  235         dr_mode = "otg";
  236         status = "okay";
  237 };
  238 
  239 &usbphy {
  240         usb0_id_det-gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
  241         usb0_vbus-supply = <&reg_usb0_vbus>;
  242         /* USB host VBUS is on as long as VCC-IO is on */
  243         status = "okay";
  244 };

Cache object: 508c9d68d9202afd3c3908ccba43f5c8


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