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-p20x.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 
   10 / {
   11         aliases {
   12                 serial0 = &uart_AO;
   13                 ethernet0 = &ethmac;
   14         };
   15 
   16         chosen {
   17                 stdout-path = "serial0:115200n8";
   18         };
   19 
   20         memory@0 {
   21                 device_type = "memory";
   22                 reg = <0x0 0x0 0x0 0x40000000>;
   23         };
   24 
   25         usb_pwr: regulator-usb-pwrs {
   26                 compatible = "regulator-fixed";
   27 
   28                 regulator-name = "USB_PWR";
   29 
   30                 regulator-min-microvolt = <5000000>;
   31                 regulator-max-microvolt = <5000000>;
   32 
   33                 /* signal name in schematic: USB_PWR_EN */
   34                 gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>;
   35                 enable-active-high;
   36         };
   37 
   38         vddio_card: gpio-regulator {
   39                 compatible = "regulator-gpio";
   40 
   41                 regulator-name = "VDDIO_CARD";
   42                 regulator-min-microvolt = <1800000>;
   43                 regulator-max-microvolt = <3300000>;
   44 
   45                 gpios = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>;
   46                 gpios-states = <1>;
   47 
   48                 /* Based on P200 schematics, signal CARD_1.8V/3.3V_CTR */
   49                 states = <1800000 0>,
   50                          <3300000 1>;
   51 
   52                 regulator-settling-time-up-us = <10000>;
   53                 regulator-settling-time-down-us = <150000>;
   54         };
   55 
   56         vddio_boot: regulator-vddio_boot {
   57                 compatible = "regulator-fixed";
   58                 regulator-name = "VDDIO_BOOT";
   59                 regulator-min-microvolt = <1800000>;
   60                 regulator-max-microvolt = <1800000>;
   61         };
   62 
   63         vddao_3v3: regulator-vddao_3v3 {
   64                 compatible = "regulator-fixed";
   65                 regulator-name = "VDDAO_3V3";
   66                 regulator-min-microvolt = <3300000>;
   67                 regulator-max-microvolt = <3300000>;
   68         };
   69 
   70         vcc_3v3: regulator-vcc_3v3 {
   71                 compatible = "regulator-fixed";
   72                 regulator-name = "VCC_3V3";
   73                 regulator-min-microvolt = <3300000>;
   74                 regulator-max-microvolt = <3300000>;
   75         };
   76 
   77         emmc_pwrseq: emmc-pwrseq {
   78                 compatible = "mmc-pwrseq-emmc";
   79                 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
   80         };
   81 
   82         wifi32k: wifi32k {
   83                 compatible = "pwm-clock";
   84                 #clock-cells = <0>;
   85                 clock-frequency = <32768>;
   86                 pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
   87         };
   88 
   89         sdio_pwrseq: sdio-pwrseq {
   90                 compatible = "mmc-pwrseq-simple";
   91                 reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
   92                 clocks = <&wifi32k>;
   93                 clock-names = "ext_clock";
   94         };
   95 
   96         cvbs_connector: cvbs-connector {
   97                 compatible = "composite-video-connector";
   98 
   99                 port {
  100                         cvbs_connector_in: endpoint {
  101                                 remote-endpoint = <&cvbs_vdac_out>;
  102                         };
  103                 };
  104         };
  105 
  106         hdmi-connector {
  107                 compatible = "hdmi-connector";
  108                 type = "a";
  109 
  110                 port {
  111                         hdmi_connector_in: endpoint {
  112                                 remote-endpoint = <&hdmi_tx_tmds_out>;
  113                         };
  114                 };
  115         };
  116 };
  117 
  118 &cec_AO {
  119         status = "okay";
  120         pinctrl-0 = <&ao_cec_pins>;
  121         pinctrl-names = "default";
  122         hdmi-phandle = <&hdmi_tx>;
  123 };
  124 
  125 &cvbs_vdac_port {
  126         cvbs_vdac_out: endpoint {
  127                 remote-endpoint = <&cvbs_connector_in>;
  128         };
  129 };
  130 
  131 &hdmi_tx {
  132         status = "okay";
  133         pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
  134         pinctrl-names = "default";
  135 };
  136 
  137 &hdmi_tx_tmds_port {
  138         hdmi_tx_tmds_out: endpoint {
  139                 remote-endpoint = <&hdmi_connector_in>;
  140         };
  141 };
  142 
  143 &ir {
  144         status = "okay";
  145         pinctrl-0 = <&remote_input_ao_pins>;
  146         pinctrl-names = "default";
  147 };
  148 
  149 &pwm_ef {
  150         status = "okay";
  151         pinctrl-0 = <&pwm_e_pins>;
  152         pinctrl-names = "default";
  153         clocks = <&clkc CLKID_FCLK_DIV4>;
  154         clock-names = "clkin0";
  155 };
  156 
  157 /* Wireless SDIO Module */
  158 &sd_emmc_a {
  159         status = "okay";
  160         pinctrl-0 = <&sdio_pins>;
  161         pinctrl-1 = <&sdio_clk_gate_pins>;
  162         pinctrl-names = "default", "clk-gate";
  163         #address-cells = <1>;
  164         #size-cells = <0>;
  165 
  166         bus-width = <4>;
  167         cap-sd-highspeed;
  168         max-frequency = <50000000>;
  169 
  170         non-removable;
  171         disable-wp;
  172 
  173         /* WiFi firmware requires power to be kept while in suspend */
  174         keep-power-in-suspend;
  175 
  176         mmc-pwrseq = <&sdio_pwrseq>;
  177 
  178         vmmc-supply = <&vddao_3v3>;
  179         vqmmc-supply = <&vddio_boot>;
  180 
  181         brcmf: wifi@1 {
  182                 reg = <1>;
  183                 compatible = "brcm,bcm4329-fmac";
  184         };
  185 };
  186 
  187 /* SD card */
  188 &sd_emmc_b {
  189         status = "okay";
  190         pinctrl-0 = <&sdcard_pins>;
  191         pinctrl-1 = <&sdcard_clk_gate_pins>;
  192         pinctrl-names = "default", "clk-gate";
  193 
  194         bus-width = <4>;
  195         cap-sd-highspeed;
  196         sd-uhs-sdr12;
  197         sd-uhs-sdr25;
  198         sd-uhs-sdr50;
  199         max-frequency = <100000000>;
  200         disable-wp;
  201 
  202         cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
  203 
  204         vmmc-supply = <&vddao_3v3>;
  205         vqmmc-supply = <&vddio_card>;
  206 };
  207 
  208 /* eMMC */
  209 &sd_emmc_c {
  210         status = "okay";
  211         pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
  212         pinctrl-1 = <&emmc_clk_gate_pins>;
  213         pinctrl-names = "default", "clk-gate";
  214 
  215         bus-width = <8>;
  216         cap-mmc-highspeed;
  217         max-frequency = <200000000>;
  218         non-removable;
  219         disable-wp;
  220         mmc-ddr-1_8v;
  221         mmc-hs200-1_8v;
  222 
  223         mmc-pwrseq = <&emmc_pwrseq>;
  224         vmmc-supply = <&vcc_3v3>;
  225         vqmmc-supply = <&vddio_boot>;
  226 };
  227 
  228 /* This UART is brought out to the DB9 connector */
  229 &uart_AO {
  230         status = "okay";
  231         pinctrl-0 = <&uart_ao_a_pins>;
  232         pinctrl-names = "default";
  233 };
  234 
  235 &usb0_phy {
  236         status = "okay";
  237         phy-supply = <&usb_pwr>;
  238 };
  239 
  240 &usb1_phy {
  241         status = "okay";
  242 };
  243 
  244 &usb0 {
  245         status = "okay";
  246 };
  247 
  248 &usb1 {
  249         status = "okay";
  250 };

Cache object: fbfac62fbec7049da81105525ec0a14d


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