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/arm64/amlogic/meson-gxbb-wetek.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 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
    2 /*
    3  * Copyright (c) 2016 Andreas Färber
    4  * Copyright (c) 2016 BayLibre, Inc.
    5  * Author: Kevin Hilman <khilman@kernel.org>
    6  */
    7 
    8 #include "meson-gxbb.dtsi"
    9 #include <dt-bindings/gpio/gpio.h>
   10 #include <dt-bindings/leds/common.h>
   11 
   12 / {
   13         aliases {
   14                 serial0 = &uart_AO;
   15                 ethernet0 = &ethmac;
   16         };
   17 
   18         chosen {
   19                 stdout-path = "serial0:115200n8";
   20         };
   21 
   22         memory@0 {
   23                 device_type = "memory";
   24                 reg = <0x0 0x0 0x0 0x40000000>;
   25         };
   26 
   27         leds {
   28                 compatible = "gpio-leds";
   29 
   30                 led-power {
   31                         /* red in suspend or power-off */
   32                         color = <LED_COLOR_ID_BLUE>;
   33                         function = LED_FUNCTION_POWER;
   34                         gpios = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>;
   35                         default-state = "on";
   36                         panic-indicator;
   37                 };
   38         };
   39 
   40         usb_pwr: regulator-usb-pwrs {
   41                 compatible = "regulator-fixed";
   42 
   43                 regulator-name = "USB_PWR";
   44 
   45                 regulator-min-microvolt = <5000000>;
   46                 regulator-max-microvolt = <5000000>;
   47 
   48                 gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>;
   49                 enable-active-high;
   50         };
   51 
   52         vddio_boot: regulator-vddio_boot {
   53                 compatible = "regulator-fixed";
   54                 regulator-name = "VDDIO_BOOT";
   55                 regulator-min-microvolt = <1800000>;
   56                 regulator-max-microvolt = <1800000>;
   57         };
   58 
   59         vddao_3v3: regulator-vddao_3v3 {
   60                 compatible = "regulator-fixed";
   61                 regulator-name = "VDDAO_3V3";
   62                 regulator-min-microvolt = <3300000>;
   63                 regulator-max-microvolt = <3300000>;
   64         };
   65 
   66         vddio_ao18: regulator-vddio_ao18 {
   67                 compatible = "regulator-fixed";
   68                 regulator-name = "VDDIO_AO18";
   69                 regulator-min-microvolt = <1800000>;
   70                 regulator-max-microvolt = <1800000>;
   71                 regulator-always-on;
   72         };
   73 
   74         vcc_3v3: regulator-vcc_3v3 {
   75                 compatible = "regulator-fixed";
   76                 regulator-name = "VCC_3V3";
   77                 regulator-min-microvolt = <3300000>;
   78                 regulator-max-microvolt = <3300000>;
   79         };
   80 
   81         emmc_pwrseq: emmc-pwrseq {
   82                 compatible = "mmc-pwrseq-emmc";
   83                 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
   84         };
   85 
   86         wifi32k: wifi32k {
   87                 compatible = "pwm-clock";
   88                 #clock-cells = <0>;
   89                 clock-frequency = <32768>;
   90                 pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
   91         };
   92 
   93         sdio_pwrseq: sdio-pwrseq {
   94                 compatible = "mmc-pwrseq-simple";
   95                 reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
   96                 clocks = <&wifi32k>;
   97                 clock-names = "ext_clock";
   98         };
   99 
  100         cvbs-connector {
  101                 compatible = "composite-video-connector";
  102 
  103                 port {
  104                         cvbs_connector_in: endpoint {
  105                                 remote-endpoint = <&cvbs_vdac_out>;
  106                         };
  107                 };
  108         };
  109 
  110         hdmi-connector {
  111                 compatible = "hdmi-connector";
  112                 type = "a";
  113 
  114                 port {
  115                         hdmi_connector_in: endpoint {
  116                                 remote-endpoint = <&hdmi_tx_tmds_out>;
  117                         };
  118                 };
  119         };
  120 };
  121 
  122 &cec_AO {
  123         status = "okay";
  124         pinctrl-0 = <&ao_cec_pins>;
  125         pinctrl-names = "default";
  126         hdmi-phandle = <&hdmi_tx>;
  127 };
  128 
  129 &cvbs_vdac_port {
  130         cvbs_vdac_out: endpoint {
  131                 remote-endpoint = <&cvbs_connector_in>;
  132         };
  133 };
  134 
  135 &ethmac {
  136         status = "okay";
  137         pinctrl-0 = <&eth_rgmii_pins>;
  138         pinctrl-names = "default";
  139 
  140         phy-handle = <&eth_phy0>;
  141         phy-mode = "rgmii";
  142 
  143         amlogic,tx-delay-ns = <2>;
  144 
  145         mdio {
  146                 compatible = "snps,dwmac-mdio";
  147                 #address-cells = <1>;
  148                 #size-cells = <0>;
  149 
  150                 eth_phy0: ethernet-phy@0 {
  151                         /* Realtek RTL8211F (0x001cc916) */
  152                         reg = <0>;
  153 
  154                         reset-assert-us = <10000>;
  155                         reset-deassert-us = <80000>;
  156                         reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>;
  157 
  158                         interrupt-parent = <&gpio_intc>;
  159                         /* MAC_INTR on GPIOZ_15 */
  160                         interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
  161                 };
  162         };
  163 };
  164 
  165 &hdmi_tx {
  166         status = "okay";
  167         pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
  168         pinctrl-names = "default";
  169         hdmi-supply = <&vddio_ao18>;
  170 };
  171 
  172 &hdmi_tx_tmds_port {
  173         hdmi_tx_tmds_out: endpoint {
  174                 remote-endpoint = <&hdmi_connector_in>;
  175         };
  176 };
  177 
  178 &ir {
  179         status = "okay";
  180         pinctrl-0 = <&remote_input_ao_pins>;
  181         pinctrl-names = "default";
  182 };
  183 
  184 &pwm_ef {
  185         status = "okay";
  186         pinctrl-0 = <&pwm_e_pins>;
  187         pinctrl-names = "default";
  188         clocks = <&clkc CLKID_FCLK_DIV4>;
  189         clock-names = "clkin0";
  190 };
  191 
  192 &saradc {
  193         status = "okay";
  194         vref-supply = <&vddio_ao18>;
  195 };
  196 
  197 /* Wireless SDIO Module */
  198 &sd_emmc_a {
  199         status = "okay";
  200         pinctrl-0 = <&sdio_pins>;
  201         pinctrl-1 = <&sdio_clk_gate_pins>;
  202         pinctrl-names = "default", "clk-gate";
  203         #address-cells = <1>;
  204         #size-cells = <0>;
  205 
  206         bus-width = <4>;
  207         cap-sd-highspeed;
  208         max-frequency = <50000000>;
  209 
  210         non-removable;
  211         disable-wp;
  212 
  213         /* WiFi firmware requires power to be kept while in suspend */
  214         keep-power-in-suspend;
  215 
  216         mmc-pwrseq = <&sdio_pwrseq>;
  217 
  218         vmmc-supply = <&vddao_3v3>;
  219         vqmmc-supply = <&vddio_boot>;
  220 
  221         brcmf: wifi@1 {
  222                 reg = <1>;
  223                 compatible = "brcm,bcm4329-fmac";
  224         };
  225 };
  226 
  227 /* SD card */
  228 &sd_emmc_b {
  229         status = "okay";
  230         pinctrl-0 = <&sdcard_pins>;
  231         pinctrl-1 = <&sdcard_clk_gate_pins>;
  232         pinctrl-names = "default", "clk-gate";
  233 
  234         bus-width = <4>;
  235         cap-sd-highspeed;
  236         max-frequency = <50000000>;
  237         disable-wp;
  238 
  239         cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
  240 
  241         vmmc-supply = <&vddao_3v3>;
  242         vqmmc-supply = <&vcc_3v3>;
  243 };
  244 
  245 /* eMMC */
  246 &sd_emmc_c {
  247         status = "okay";
  248         pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
  249         pinctrl-1 = <&emmc_clk_gate_pins>;
  250         pinctrl-names = "default", "clk-gate";
  251 
  252         bus-width = <8>;
  253         cap-mmc-highspeed;
  254         max-frequency = <200000000>;
  255         non-removable;
  256         disable-wp;
  257         mmc-ddr-1_8v;
  258         mmc-hs200-1_8v;
  259 
  260         mmc-pwrseq = <&emmc_pwrseq>;
  261         vmmc-supply = <&vcc_3v3>;
  262         vqmmc-supply = <&vddio_boot>;
  263 };
  264 
  265 /* This is connected to the Bluetooth module: */
  266 &uart_A {
  267         status = "okay";
  268         pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
  269         pinctrl-names = "default";
  270         uart-has-rtscts;
  271 
  272         bluetooth {
  273                 compatible = "brcm,bcm43438-bt";
  274                 shutdown-gpios = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>;
  275         };
  276 };
  277 
  278 /* This UART is brought out to the DB9 connector */
  279 &uart_AO {
  280         status = "okay";
  281         pinctrl-0 = <&uart_ao_a_pins>;
  282         pinctrl-names = "default";
  283 };
  284 
  285 &usb0_phy {
  286         status = "okay";
  287         phy-supply = <&usb_pwr>;
  288 };
  289 
  290 &usb0 {
  291         status = "okay";
  292 };

Cache object: 2565f1c9a6c3a2db2c631954f8338fe2


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