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/qcom/apq8096-db820c.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-only
    2 /*
    3  * Copyright (c) 2014-2016, The Linux Foundation. All rights reserved.
    4  */
    5 
    6 #include "msm8996.dtsi"
    7 #include "pm8994.dtsi"
    8 #include "pmi8994.dtsi"
    9 #include <dt-bindings/input/input.h>
   10 #include <dt-bindings/gpio/gpio.h>
   11 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
   12 #include <dt-bindings/sound/qcom,q6afe.h>
   13 #include <dt-bindings/sound/qcom,q6asm.h>
   14 
   15 /*
   16  * GPIO name legend: proper name = the GPIO line is used as GPIO
   17  *         NC      = not connected (pin out but not routed from the chip to
   18  *                   anything the board)
   19  *         "[PER]" = pin is muxed for [peripheral] (not GPIO)
   20  *         LSEC    = Low Speed External Connector
   21  *         P HSEC  = Primary High Speed External Connector
   22  *         S HSEC  = Secondary High Speed External Connector
   23  *         J14     = Camera Connector
   24  *         TP      = Test Points
   25  *
   26  * Line names are taken from the schematic "DragonBoard 820c",
   27  * drawing no: LM25-P2751-1
   28  *
   29  * For the lines routed to the external connectors the
   30  * lines are named after the 96Boards CE Specification 1.0,
   31  * Appendix "Expansion Connector Signal Description".
   32  *
   33  * When the 96Board naming of a line and the schematic name of
   34  * the same line are in conflict, the 96Board specification
   35  * takes precedence, which means that the external UART on the
   36  * LSEC is named UART0 while the schematic and SoC names this
   37  * UART3. This is only for the informational lines i.e. "[FOO]",
   38  * the GPIO named lines "GPIO-A" thru "GPIO-L" are the only
   39  * ones actually used for GPIO.
   40  */
   41 
   42 / {
   43         aliases {
   44                 serial0 = &blsp2_uart2;
   45                 serial1 = &blsp2_uart3;
   46                 serial2 = &blsp1_uart2;
   47                 i2c0    = &blsp1_i2c3;
   48                 i2c1    = &blsp2_i2c1;
   49                 i2c2    = &blsp2_i2c1;
   50                 spi0    = &blsp1_spi1;
   51                 spi1    = &blsp2_spi6;
   52         };
   53 
   54         chosen {
   55                 stdout-path = "serial0:115200n8";
   56         };
   57 
   58         clocks {
   59                 compatible = "simple-bus";
   60                 divclk4: divclk4 {
   61                         compatible = "fixed-clock";
   62                         #clock-cells = <0>;
   63                         clock-frequency = <32768>;
   64                         clock-output-names = "divclk4";
   65 
   66                         pinctrl-names = "default";
   67                         pinctrl-0 = <&divclk4_pin_a>;
   68                 };
   69 
   70                 div1_mclk: divclk1 {
   71                         compatible = "gpio-gate-clock";
   72                         pinctrl-0 = <&audio_mclk>;
   73                         pinctrl-names = "default";
   74                         clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
   75                         #clock-cells = <0>;
   76                         enable-gpios = <&pm8994_gpios 15 0>;
   77                 };
   78         };
   79 
   80         gpio_keys {
   81                 compatible = "gpio-keys";
   82                 #address-cells = <1>;
   83                 #size-cells = <0>;
   84                 autorepeat;
   85 
   86                 pinctrl-names = "default";
   87                 pinctrl-0 = <&volume_up_gpio>;
   88 
   89                 button@0 {
   90                         label = "Volume Up";
   91                         linux,code = <KEY_VOLUMEUP>;
   92                         gpios = <&pm8994_gpios 2 GPIO_ACTIVE_LOW>;
   93                 };
   94         };
   95 
   96         usb2_id: usb2-id {
   97                 compatible = "linux,extcon-usb-gpio";
   98                 id-gpio = <&pmi8994_gpios 6 GPIO_ACTIVE_HIGH>;
   99                 pinctrl-names = "default";
  100                 pinctrl-0 = <&usb2_vbus_det_gpio>;
  101         };
  102 
  103         usb3_id: usb3-id {
  104                 compatible = "linux,extcon-usb-gpio";
  105                 id-gpio = <&pm8994_gpios 22 GPIO_ACTIVE_HIGH>;
  106                 pinctrl-names = "default";
  107                 pinctrl-0 = <&usb3_vbus_det_gpio>;
  108         };
  109 
  110         vph_pwr: vph-pwr-regulator {
  111                 compatible = "regulator-fixed";
  112                 regulator-name = "vph_pwr";
  113                 regulator-always-on;
  114                 regulator-boot-on;
  115 
  116                 regulator-min-microvolt = <3700000>;
  117                 regulator-max-microvolt = <3700000>;
  118         };
  119 
  120         wlan_en: wlan-en-1-8v {
  121                 pinctrl-names = "default";
  122                 pinctrl-0 = <&wlan_en_gpios>;
  123                 compatible = "regulator-fixed";
  124                 regulator-name = "wlan-en-regulator";
  125                 regulator-min-microvolt = <1800000>;
  126                 regulator-max-microvolt = <1800000>;
  127 
  128                 gpio = <&pm8994_gpios 8 0>;
  129 
  130                 /* WLAN card specific delay */
  131                 startup-delay-us = <70000>;
  132                 enable-active-high;
  133         };
  134 };
  135 
  136 &blsp1_i2c3 {
  137         /* On Low speed expansion */
  138         label = "LS-I2C0";
  139         status = "okay";
  140 };
  141 
  142 &blsp1_spi1 {
  143         /* On Low speed expansion */
  144         label = "LS-SPI0";
  145         status = "okay";
  146 };
  147 
  148 &blsp1_uart2 {
  149         label = "BT-UART";
  150         status = "okay";
  151         pinctrl-names = "default", "sleep";
  152         pinctrl-0 = <&blsp1_uart2_default>;
  153         pinctrl-1 = <&blsp1_uart2_sleep>;
  154 
  155         bluetooth {
  156                 compatible = "qcom,qca6174-bt";
  157 
  158                 /* bt_disable_n gpio */
  159                 enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>;
  160 
  161                 clocks = <&divclk4>;
  162         };
  163 };
  164 
  165 &adsp_pil {
  166         status = "okay";
  167 };
  168 
  169 &blsp2_i2c1 {
  170         /* On High speed expansion */
  171         label = "HS-I2C2";
  172         status = "okay";
  173 };
  174 
  175 &blsp2_i2c1 {
  176         /* On Low speed expansion */
  177         label = "LS-I2C1";
  178         status = "okay";
  179 };
  180 
  181 &blsp2_spi6 {
  182         /* On High speed expansion */
  183         label = "HS-SPI1";
  184         status = "okay";
  185 };
  186 
  187 &blsp2_uart2 {
  188         label = "LS-UART1";
  189         status = "okay";
  190         pinctrl-names = "default", "sleep";
  191         pinctrl-0 = <&blsp2_uart2_2pins_default>;
  192         pinctrl-1 = <&blsp2_uart2_2pins_sleep>;
  193 };
  194 
  195 &blsp2_uart3 {
  196         label = "LS-UART0";
  197         status = "disabled";
  198         pinctrl-names = "default", "sleep";
  199         pinctrl-0 = <&blsp2_uart3_4pins_default>;
  200         pinctrl-1 = <&blsp2_uart3_4pins_sleep>;
  201 };
  202 
  203 &camss {
  204         vdda-supply = <&vreg_l2a_1p25>;
  205 };
  206 
  207 &gpu {
  208         status = "okay";
  209 };
  210 
  211 &hdmi {
  212         status = "okay";
  213 
  214         pinctrl-names = "default", "sleep";
  215         pinctrl-0 = <&hdmi_hpd_active &hdmi_ddc_active>;
  216         pinctrl-1 = <&hdmi_hpd_suspend &hdmi_ddc_suspend>;
  217 
  218         core-vdda-supply = <&vreg_l12a_1p8>;
  219         core-vcc-supply = <&vreg_s4a_1p8>;
  220 };
  221 
  222 &hdmi_phy {
  223         status = "okay";
  224 
  225         vddio-supply = <&vreg_l12a_1p8>;
  226         vcca-supply = <&vreg_l28a_0p925>;
  227         #phy-cells = <0>;
  228 };
  229 
  230 &hsusb_phy1 {
  231         status = "okay";
  232 
  233         vdda-pll-supply = <&vreg_l12a_1p8>;
  234         vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
  235 };
  236 
  237 &hsusb_phy2 {
  238         status = "okay";
  239 
  240         vdda-pll-supply = <&vreg_l12a_1p8>;
  241         vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
  242 };
  243 
  244 &mdp {
  245         status = "okay";
  246 };
  247 
  248 &mdss {
  249         status = "okay";
  250 };
  251 
  252 &mmcc {
  253         vdd-gfx-supply = <&vdd_gfx>;
  254 };
  255 
  256 &pm8994_resin {
  257         status = "okay";
  258         linux,code = <KEY_VOLUMEDOWN>;
  259 };
  260 
  261 &tlmm {
  262         gpio-line-names =
  263                 "[SPI0_DOUT]", /* GPIO_0, BLSP1_SPI_MOSI, LSEC pin 14 */
  264                 "[SPI0_DIN]", /* GPIO_1, BLSP1_SPI_MISO, LSEC pin 10 */
  265                 "[SPI0_CS]", /* GPIO_2, BLSP1_SPI_CS_N, LSEC pin 12 */
  266                 "[SPI0_SCLK]", /* GPIO_3, BLSP1_SPI_CLK, LSEC pin 8 */
  267                 "[UART1_TxD]", /* GPIO_4, BLSP8_UART_TX, LSEC pin 11 */
  268                 "[UART1_RxD]", /* GPIO_5, BLSP8_UART_RX, LSEC pin 13 */
  269                 "[I2C1_SDA]", /* GPIO_6, BLSP8_I2C_SDA, LSEC pin 21 */
  270                 "[I2C1_SCL]", /* GPIO_7, BLSP8_I2C_SCL, LSEC pin 19 */
  271                 "GPIO-H", /* GPIO_8, LCD0_RESET_N, LSEC pin 30 */
  272                 "TP93", /* GPIO_9 */
  273                 "GPIO-G", /* GPIO_10, MDP_VSYNC_P, LSEC pin 29 */
  274                 "[MDP_VSYNC_S]", /* GPIO_11, S HSEC pin 55 */
  275                 "NC", /* GPIO_12 */
  276                 "[CSI0_MCLK]", /* GPIO_13, CAM_MCLK0, P HSEC pin 15 */
  277                 "[CAM_MCLK1]", /* GPIO_14, J14 pin 11 */
  278                 "[CSI1_MCLK]", /* GPIO_15, CAM_MCLK2, P HSEC pin 17 */
  279                 "TP99", /* GPIO_16 */
  280                 "[I2C2_SDA]", /* GPIO_17, CCI_I2C_SDA0, P HSEC pin 34 */
  281                 "[I2C2_SCL]", /* GPIO_18, CCI_I2C_SCL0, P HSEC pin 32 */
  282                 "[CCI_I2C_SDA1]", /* GPIO_19, S HSEC pin 38 */
  283                 "[CCI_I2C_SCL1]", /* GPIO_20, S HSEC pin 36 */
  284                 "FLASH_STROBE_EN", /* GPIO_21, S HSEC pin 5 */
  285                 "FLASH_STROBE_TRIG", /* GPIO_22, S HSEC pin 1 */
  286                 "GPIO-K", /* GPIO_23, CAM2_RST_N, LSEC pin 33 */
  287                 "GPIO-D", /* GPIO_24, LSEC pin 26 */
  288                 "GPIO-I", /* GPIO_25, CAM0_RST_N, LSEC pin 31 */
  289                 "GPIO-J", /* GPIO_26, CAM0_STANDBY_N, LSEC pin 32 */
  290                 "BLSP6_I2C_SDA", /* GPIO_27 */
  291                 "BLSP6_I2C_SCL", /* GPIO_28 */
  292                 "GPIO-B", /* GPIO_29, TS0_RESET_N, LSEC pin 24 */
  293                 "GPIO30", /* GPIO_30, S HSEC pin 4 */
  294                 "HDMI_CEC", /* GPIO_31 */
  295                 "HDMI_DDC_CLOCK", /* GPIO_32 */
  296                 "HDMI_DDC_DATA", /* GPIO_33 */
  297                 "HDMI_HOT_PLUG_DETECT", /* GPIO_34 */
  298                 "PCIE0_RST_N", /* GPIO_35 */
  299                 "PCIE0_CLKREQ_N", /* GPIO_36 */
  300                 "PCIE0_WAKE", /* GPIO_37 */
  301                 "SD_CARD_DET_N", /* GPIO_38 */
  302                 "TSIF1_SYNC", /* GPIO_39, S HSEC pin 48 */
  303                 "W_DISABLE_N", /* GPIO_40 */
  304                 "[BLSP9_UART_TX]", /* GPIO_41 */
  305                 "[BLSP9_UART_RX]", /* GPIO_42 */
  306                 "[BLSP2_UART_CTS_N]", /* GPIO_43 */
  307                 "[BLSP2_UART_RFR_N]", /* GPIO_44 */
  308                 "[BLSP3_UART_TX]", /* GPIO_45 */
  309                 "[BLSP3_UART_RX]", /* GPIO_46 */
  310                 "[I2C0_SDA]", /* GPIO_47, LS_I2C0_SDA, LSEC pin 17 */
  311                 "[I2C0_SCL]", /* GPIO_48, LS_I2C0_SCL, LSEC pin 15 */
  312                 "[UART0_TxD]", /* GPIO_49, BLSP9_UART_TX, LSEC pin 5 */
  313                 "[UART0_RxD]", /* GPIO_50, BLSP9_UART_RX, LSEC pin 7 */
  314                 "[UART0_CTS]", /* GPIO_51, BLSP9_UART_CTS_N, LSEC pin 3 */
  315                 "[UART0_RTS]", /* GPIO_52, BLSP9_UART_RFR_N, LSEC pin 9 */
  316                 "[CODEC_INT1_N]", /* GPIO_53 */
  317                 "[CODEC_INT2_N]", /* GPIO_54 */
  318                 "[BLSP7_I2C_SDA]", /* GPIO_55 */
  319                 "[BLSP7_I2C_SCL]", /* GPIO_56 */
  320                 "MI2S_MCLK", /* GPIO_57, S HSEC pin 3 */
  321                 "[PCM_CLK]", /* GPIO_58, QUA_MI2S_SCK, LSEC pin 18 */
  322                 "[PCM_FS]", /* GPIO_59, QUA_MI2S_WS, LSEC pin 16 */
  323                 "[PCM_DO]", /* GPIO_60, QUA_MI2S_DATA0, LSEC pin 20 */
  324                 "[PCM_DI]", /* GPIO_61, QUA_MI2S_DATA1, LSEC pin 22 */
  325                 "GPIO-E", /* GPIO_62, LSEC pin 27 */
  326                 "TP87", /* GPIO_63 */
  327                 "[CODEC_RST_N]", /* GPIO_64 */
  328                 "[PCM1_CLK]", /* GPIO_65 */
  329                 "[PCM1_SYNC]", /* GPIO_66 */
  330                 "[PCM1_DIN]", /* GPIO_67 */
  331                 "[PCM1_DOUT]", /* GPIO_68 */
  332                 "AUDIO_REF_CLK", /* GPIO_69 */
  333                 "SLIMBUS_CLK", /* GPIO_70 */
  334                 "SLIMBUS_DATA0", /* GPIO_71 */
  335                 "SLIMBUS_DATA1", /* GPIO_72 */
  336                 "NC", /* GPIO_73 */
  337                 "NC", /* GPIO_74 */
  338                 "NC", /* GPIO_75 */
  339                 "NC", /* GPIO_76 */
  340                 "TP94", /* GPIO_77 */
  341                 "NC", /* GPIO_78 */
  342                 "TP95", /* GPIO_79 */
  343                 "GPIO-A", /* GPIO_80, MEMS_RESET_N, LSEC pin 23 */
  344                 "TP88", /* GPIO_81 */
  345                 "TP89", /* GPIO_82 */
  346                 "TP90", /* GPIO_83 */
  347                 "TP91", /* GPIO_84 */
  348                 "[SD_DAT0]", /* GPIO_85, BLSP12_SPI_MOSI, P HSEC pin 1 */
  349                 "[SD_CMD]", /* GPIO_86, BLSP12_SPI_MISO, P HSEC pin 11 */
  350                 "[SD_DAT3]", /* GPIO_87, BLSP12_SPI_CS_N, P HSEC pin 7 */
  351                 "[SD_SCLK]", /* GPIO_88, BLSP12_SPI_CLK, P HSEC pin 9 */
  352                 "TSIF1_CLK", /* GPIO_89, S HSEC pin 42 */
  353                 "TSIF1_EN", /* GPIO_90, S HSEC pin 46 */
  354                 "TSIF1_DATA", /* GPIO_91, S HSEC pin 44 */
  355                 "NC", /* GPIO_92 */
  356                 "TSIF2_CLK", /* GPIO_93, S HSEC pin 52 */
  357                 "TSIF2_EN", /* GPIO_94, S HSEC pin 56 */
  358                 "TSIF2_DATA", /* GPIO_95, S HSEC pin 54 */
  359                 "TSIF2_SYNC", /* GPIO_96, S HSEC pin 58 */
  360                 "NC", /* GPIO_97 */
  361                 "CAM1_STANDBY_N", /* GPIO_98 */
  362                 "NC", /* GPIO_99 */
  363                 "NC", /* GPIO_100 */
  364                 "[LCD1_RESET_N]", /* GPIO_101, S HSEC pin 51 */
  365                 "BOOT_CONFIG1", /* GPIO_102 */
  366                 "USB_HUB_RESET", /* GPIO_103 */
  367                 "CAM1_RST_N", /* GPIO_104 */
  368                 "NC", /* GPIO_105 */
  369                 "NC", /* GPIO_106 */
  370                 "NC", /* GPIO_107 */
  371                 "NC", /* GPIO_108 */
  372                 "NC", /* GPIO_109 */
  373                 "NC", /* GPIO_110 */
  374                 "NC", /* GPIO_111 */
  375                 "NC", /* GPIO_112 */
  376                 "PMI8994_BUA", /* GPIO_113 */
  377                 "PCIE2_RST_N", /* GPIO_114 */
  378                 "PCIE2_CLKREQ_N", /* GPIO_115 */
  379                 "PCIE2_WAKE", /* GPIO_116 */
  380                 "SSC_IRQ_0", /* GPIO_117 */
  381                 "SSC_IRQ_1", /* GPIO_118 */
  382                 "SSC_IRQ_2", /* GPIO_119 */
  383                 "NC", /* GPIO_120 */
  384                 "GPIO121", /* GPIO_121, S HSEC pin 2 */
  385                 "NC", /* GPIO_122 */
  386                 "SSC_IRQ_6", /* GPIO_123 */
  387                 "SSC_IRQ_7", /* GPIO_124 */
  388                 "GPIO-C", /* GPIO_125, TS_INT0, LSEC pin 25 */
  389                 "BOOT_CONFIG5", /* GPIO_126 */
  390                 "NC", /* GPIO_127 */
  391                 "NC", /* GPIO_128 */
  392                 "BOOT_CONFIG7", /* GPIO_129 */
  393                 "PCIE1_RST_N", /* GPIO_130 */
  394                 "PCIE1_CLKREQ_N", /* GPIO_131 */
  395                 "PCIE1_WAKE", /* GPIO_132 */
  396                 "GPIO-L", /* GPIO_133, CAM2_STANDBY_N, LSEC pin 34 */
  397                 "NC", /* GPIO_134 */
  398                 "NC", /* GPIO_135 */
  399                 "BOOT_CONFIG8", /* GPIO_136 */
  400                 "NC", /* GPIO_137 */
  401                 "NC", /* GPIO_138 */
  402                 "GPS_SSBI2", /* GPIO_139 */
  403                 "GPS_SSBI1", /* GPIO_140 */
  404                 "NC", /* GPIO_141 */
  405                 "NC", /* GPIO_142 */
  406                 "NC", /* GPIO_143 */
  407                 "BOOT_CONFIG6", /* GPIO_144 */
  408                 "NC", /* GPIO_145 */
  409                 "NC", /* GPIO_146 */
  410                 "NC", /* GPIO_147 */
  411                 "NC", /* GPIO_148 */
  412                 "NC"; /* GPIO_149 */
  413 
  414         sdc2_cd_on: sdc2_cd_on {
  415                 mux {
  416                         pins = "gpio38";
  417                         function = "gpio";
  418                 };
  419 
  420                 config {
  421                         pins = "gpio38";
  422                         bias-pull-up;           /* pull up */
  423                         drive-strength = <16>;  /* 16 MA */
  424                 };
  425         };
  426 
  427         sdc2_cd_off: sdc2_cd_off {
  428                 mux {
  429                         pins = "gpio38";
  430                         function = "gpio";
  431                 };
  432 
  433                 config {
  434                         pins = "gpio38";
  435                         bias-pull-up;           /* pull up */
  436                         drive-strength = <2>;   /* 2 MA */
  437                 };
  438         };
  439 
  440         blsp1_uart2_default: blsp1_uart2_default {
  441                 mux {
  442                         pins = "gpio41", "gpio42", "gpio43", "gpio44";
  443                         function = "blsp_uart2";
  444                 };
  445 
  446                 config {
  447                         pins = "gpio41", "gpio42", "gpio43", "gpio44";
  448                         drive-strength = <16>;
  449                         bias-disable;
  450                 };
  451         };
  452 
  453         blsp1_uart2_sleep: blsp1_uart2_sleep {
  454                 mux {
  455                         pins = "gpio41", "gpio42", "gpio43", "gpio44";
  456                         function = "gpio";
  457                 };
  458 
  459                 config {
  460                         pins = "gpio41", "gpio42", "gpio43", "gpio44";
  461                         drive-strength = <2>;
  462                         bias-disable;
  463                 };
  464         };
  465 
  466         hdmi_hpd_active: hdmi_hpd_active {
  467                 mux {
  468                         pins = "gpio34";
  469                         function = "hdmi_hot";
  470                 };
  471 
  472                 config {
  473                         pins = "gpio34";
  474                         bias-pull-down;
  475                         drive-strength = <16>;
  476                 };
  477         };
  478 
  479         hdmi_hpd_suspend: hdmi_hpd_suspend {
  480                 mux {
  481                         pins = "gpio34";
  482                         function = "hdmi_hot";
  483                 };
  484 
  485                 config {
  486                         pins = "gpio34";
  487                         bias-pull-down;
  488                         drive-strength = <2>;
  489                 };
  490         };
  491 
  492         hdmi_ddc_active: hdmi_ddc_active {
  493                 mux {
  494                         pins = "gpio32", "gpio33";
  495                         function = "hdmi_ddc";
  496                 };
  497 
  498                 config {
  499                         pins = "gpio32", "gpio33";
  500                         drive-strength = <2>;
  501                         bias-pull-up;
  502                 };
  503         };
  504 
  505         hdmi_ddc_suspend: hdmi_ddc_suspend {
  506                 mux {
  507                         pins = "gpio32", "gpio33";
  508                         function = "hdmi_ddc";
  509                 };
  510 
  511                 config {
  512                         pins = "gpio32", "gpio33";
  513                         drive-strength = <2>;
  514                         bias-pull-down;
  515                 };
  516         };
  517 };
  518 
  519 &pcie0 {
  520         status = "okay";
  521         perst-gpio = <&tlmm 35 GPIO_ACTIVE_LOW>;
  522         vddpe-3v3-supply = <&wlan_en>;
  523         vdda-supply = <&vreg_l28a_0p925>;
  524 };
  525 
  526 &pcie1 {
  527         status = "okay";
  528         perst-gpio = <&tlmm 130 GPIO_ACTIVE_LOW>;
  529         vdda-supply = <&vreg_l28a_0p925>;
  530 };
  531 
  532 &pcie2 {
  533         status = "okay";
  534         perst-gpio = <&tlmm 114 GPIO_ACTIVE_LOW>;
  535         vdda-supply = <&vreg_l28a_0p925>;
  536 };
  537 
  538 &pcie_phy {
  539         status = "okay";
  540 
  541         vdda-phy-supply = <&vreg_l28a_0p925>;
  542         vdda-pll-supply = <&vreg_l12a_1p8>;
  543 };
  544 
  545 &pm8994_gpios {
  546         gpio-line-names =
  547                 "NC",
  548                 "KEY_VOLP_N",
  549                 "NC",
  550                 "BL1_PWM",
  551                 "GPIO-F", /* BL0_PWM, LSEC pin 28 */
  552                 "BL1_EN",
  553                 "NC",
  554                 "WLAN_EN",
  555                 "NC",
  556                 "NC",
  557                 "NC",
  558                 "NC",
  559                 "NC",
  560                 "NC",
  561                 "DIVCLK1",
  562                 "DIVCLK2",
  563                 "DIVCLK3",
  564                 "DIVCLK4",
  565                 "BT_EN",
  566                 "PMIC_SLB",
  567                 "PMIC_BUA",
  568                 "USB_VBUS_DET";
  569 
  570         pinctrl-names = "default";
  571         pinctrl-0 = <&ls_exp_gpio_f &bt_en_gpios>;
  572 
  573         ls_exp_gpio_f: pm8994_gpio5 {
  574                 pinconf {
  575                         pins = "gpio5";
  576                         output-low;
  577                         power-source = <2>; // PM8994_GPIO_S4, 1.8V
  578                 };
  579         };
  580 
  581         bt_en_gpios: bt_en_gpios {
  582                 pinconf {
  583                         pins = "gpio19";
  584                         function = PMIC_GPIO_FUNC_NORMAL;
  585                         output-low;
  586                         power-source = <PM8994_GPIO_S4>; // 1.8V
  587                         qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
  588                         bias-pull-down;
  589                 };
  590         };
  591 
  592         wlan_en_gpios: wlan_en_gpios {
  593                 pinconf {
  594                         pins = "gpio8";
  595                         function = PMIC_GPIO_FUNC_NORMAL;
  596                         output-low;
  597                         power-source = <PM8994_GPIO_S4>; // 1.8V
  598                         qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
  599                         bias-pull-down;
  600                 };
  601         };
  602 
  603         audio_mclk: clk_div1 {
  604                 pinconf {
  605                         pins = "gpio15";
  606                         function = "func1";
  607                         power-source = <PM8994_GPIO_S4>; // 1.8V
  608                 };
  609         };
  610 
  611         volume_up_gpio: pm8996_gpio2 {
  612                 pinconf {
  613                         pins = "gpio2";
  614                         function = "normal";
  615                         input-enable;
  616                         drive-push-pull;
  617                         bias-pull-up;
  618                         qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
  619                         power-source = <PM8994_GPIO_S4>; // 1.8V
  620                 };
  621         };
  622 
  623         divclk4_pin_a: divclk4 {
  624                 pinconf {
  625                         pins = "gpio18";
  626                         function = PMIC_GPIO_FUNC_FUNC2;
  627 
  628                         bias-disable;
  629                         power-source = <PM8994_GPIO_S4>;
  630                 };
  631         };
  632 
  633         usb3_vbus_det_gpio: pm8996_gpio22 {
  634                 pinconf {
  635                         pins = "gpio22";
  636                         function = PMIC_GPIO_FUNC_NORMAL;
  637                         input-enable;
  638                         bias-pull-down;
  639                         qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
  640                         power-source = <PM8994_GPIO_S4>; // 1.8V
  641                 };
  642         };
  643 };
  644 
  645 &pm8994_mpps {
  646         gpio-line-names =
  647                 "VDDPX_BIAS",
  648                 "WIFI_LED",
  649                 "NC",
  650                 "BT_LED",
  651                 "PM_MPP05",
  652                 "PM_MPP06",
  653                 "PM_MPP07",
  654                 "NC";
  655 };
  656 
  657 &pm8994_spmi_regulators {
  658         qcom,saw-reg = <&saw3>;
  659         s9 {
  660                 qcom,saw-slave;
  661         };
  662         s10 {
  663                 qcom,saw-slave;
  664         };
  665         s11 {
  666                 qcom,saw-leader;
  667                 regulator-always-on;
  668                 regulator-min-microvolt = <980000>;
  669                 regulator-max-microvolt = <980000>;
  670         };
  671 };
  672 
  673 &pmi8994_gpios {
  674         gpio-line-names =
  675                 "NC",
  676                 "SPKR_AMP_EN1",
  677                 "SPKR_AMP_EN2",
  678                 "TP61",
  679                 "NC",
  680                 "USB2_VBUS_DET",
  681                 "NC",
  682                 "NC",
  683                 "NC",
  684                 "NC";
  685 
  686         usb2_vbus_det_gpio: pmi8996_gpio6 {
  687                 pinconf {
  688                         pins = "gpio6";
  689                         function = PMIC_GPIO_FUNC_NORMAL;
  690                         input-enable;
  691                         bias-pull-down;
  692                         qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
  693                         power-source = <PM8994_GPIO_S4>; // 1.8V
  694                 };
  695         };
  696 };
  697 
  698 &pmi8994_spmi_regulators {
  699         vdd_gfx: s2@1700 {
  700                 reg = <0x1700 0x100>;
  701                 regulator-name = "VDD_GFX";
  702                 regulator-min-microvolt = <980000>;
  703                 regulator-max-microvolt = <980000>;
  704         };
  705 };
  706 
  707 &rpm_requests {
  708         pm8994-regulators {
  709                 compatible = "qcom,rpm-pm8994-regulators";
  710 
  711                 vdd_s1-supply = <&vph_pwr>;
  712                 vdd_s2-supply = <&vph_pwr>;
  713                 vdd_s3-supply = <&vph_pwr>;
  714                 vdd_s4-supply = <&vph_pwr>;
  715                 vdd_s5-supply = <&vph_pwr>;
  716                 vdd_s6-supply = <&vph_pwr>;
  717                 vdd_s7-supply = <&vph_pwr>;
  718                 vdd_s8-supply = <&vph_pwr>;
  719                 vdd_s9-supply = <&vph_pwr>;
  720                 vdd_s10-supply = <&vph_pwr>;
  721                 vdd_s11-supply = <&vph_pwr>;
  722                 vdd_s12-supply = <&vph_pwr>;
  723                 vdd_l1-supply = <&vreg_s1b_1p025>;
  724                 vdd_l2_l26_l28-supply = <&vreg_s3a_1p3>;
  725                 vdd_l3_l11-supply = <&vreg_s3a_1p3>;
  726                 vdd_l4_l27_l31-supply = <&vreg_s3a_1p3>;
  727                 vdd_l5_l7-supply = <&vreg_s5a_2p15>;
  728                 vdd_l6_l12_l32-supply = <&vreg_s5a_2p15>;
  729                 vdd_l8_l16_l30-supply = <&vph_pwr>;
  730                 vdd_l9_l10_l18_l22-supply = <&vph_pwr_bbyp>;
  731                 vdd_l13_l19_l23_l24-supply = <&vph_pwr_bbyp>;
  732                 vdd_l14_l15-supply = <&vreg_s5a_2p15>;
  733                 vdd_l17_l29-supply = <&vph_pwr_bbyp>;
  734                 vdd_l20_l21-supply = <&vph_pwr_bbyp>;
  735                 vdd_l25-supply = <&vreg_s3a_1p3>;
  736                 vdd_lvs1_lvs2-supply = <&vreg_s4a_1p8>;
  737 
  738                 vreg_s3a_1p3: s3 {
  739                         regulator-name = "vreg_s3a_1p3";
  740                         regulator-min-microvolt = <1300000>;
  741                         regulator-max-microvolt = <1300000>;
  742                 };
  743 
  744                 /**
  745                  * 1.8v required on LS expansion
  746                  * for mezzanine boards
  747                  */
  748                 vreg_s4a_1p8: s4 {
  749                         regulator-name = "vreg_s4a_1p8";
  750                         regulator-min-microvolt = <1800000>;
  751                         regulator-max-microvolt = <1800000>;
  752                         regulator-always-on;
  753                 };
  754                 vreg_s5a_2p15: s5 {
  755                         regulator-name = "vreg_s5a_2p15";
  756                         regulator-min-microvolt = <2150000>;
  757                         regulator-max-microvolt = <2150000>;
  758                 };
  759                 vreg_s7a_1p0: s7 {
  760                         regulator-name = "vreg_s7a_1p0";
  761                         regulator-min-microvolt = <800000>;
  762                         regulator-max-microvolt = <800000>;
  763                 };
  764 
  765                 vreg_l1a_1p0: l1 {
  766                         regulator-name = "vreg_l1a_1p0";
  767                         regulator-min-microvolt = <1000000>;
  768                         regulator-max-microvolt = <1000000>;
  769                 };
  770                 vreg_l2a_1p25: l2 {
  771                         regulator-name = "vreg_l2a_1p25";
  772                         regulator-min-microvolt = <1250000>;
  773                         regulator-max-microvolt = <1250000>;
  774                 };
  775                 vreg_l3a_0p875: l3 {
  776                         regulator-name = "vreg_l3a_0p875";
  777                         regulator-min-microvolt = <850000>;
  778                         regulator-max-microvolt = <850000>;
  779                 };
  780                 vreg_l4a_1p225: l4 {
  781                         regulator-name = "vreg_l4a_1p225";
  782                         regulator-min-microvolt = <1225000>;
  783                         regulator-max-microvolt = <1225000>;
  784                 };
  785                 vreg_l6a_1p2: l6 {
  786                         regulator-name = "vreg_l6a_1p2";
  787                         regulator-min-microvolt = <1200000>;
  788                         regulator-max-microvolt = <1200000>;
  789                 };
  790                 vreg_l8a_1p8: l8 {
  791                         regulator-name = "vreg_l8a_1p8";
  792                         regulator-min-microvolt = <1800000>;
  793                         regulator-max-microvolt = <1800000>;
  794                 };
  795                 vreg_l9a_1p8: l9 {
  796                         regulator-name = "vreg_l9a_1p8";
  797                         regulator-min-microvolt = <1800000>;
  798                         regulator-max-microvolt = <1800000>;
  799                 };
  800                 vreg_l10a_1p8: l10 {
  801                         regulator-name = "vreg_l10a_1p8";
  802                         regulator-min-microvolt = <1800000>;
  803                         regulator-max-microvolt = <1800000>;
  804                 };
  805                 vreg_l11a_1p15: l11 {
  806                         regulator-name = "vreg_l11a_1p15";
  807                         regulator-min-microvolt = <1150000>;
  808                         regulator-max-microvolt = <1150000>;
  809                 };
  810                 vreg_l12a_1p8: l12 {
  811                         regulator-name = "vreg_l12a_1p8";
  812                         regulator-min-microvolt = <1800000>;
  813                         regulator-max-microvolt = <1800000>;
  814                 };
  815                 vreg_l13a_2p95: l13 {
  816                         regulator-name = "vreg_l13a_2p95";
  817                         regulator-min-microvolt = <1800000>;
  818                         regulator-max-microvolt = <2950000>;
  819                 };
  820                 vreg_l14a_1p8: l14 {
  821                         regulator-name = "vreg_l14a_1p8";
  822                         regulator-min-microvolt = <1800000>;
  823                         regulator-max-microvolt = <1800000>;
  824                 };
  825                 vreg_l15a_1p8: l15 {
  826                         regulator-name = "vreg_l15a_1p8";
  827                         regulator-min-microvolt = <1800000>;
  828                         regulator-max-microvolt = <1800000>;
  829                 };
  830                 vreg_l16a_2p7: l16 {
  831                         regulator-name = "vreg_l16a_2p7";
  832                         regulator-min-microvolt = <2700000>;
  833                         regulator-max-microvolt = <2700000>;
  834                 };
  835                 vreg_l17a_2p8: l17 {
  836                         regulator-name = "vreg_l17a_2p8";
  837                         regulator-min-microvolt = <2500000>;
  838                         regulator-max-microvolt = <2500000>;
  839                 };
  840                 vreg_l18a_2p85: l18 {
  841                         regulator-name = "vreg_l18a_2p85";
  842                         regulator-min-microvolt = <2700000>;
  843                         regulator-max-microvolt = <2900000>;
  844                 };
  845                 vreg_l19a_2p8: l19 {
  846                         regulator-name = "vreg_l19a_2p8";
  847                         regulator-min-microvolt = <3000000>;
  848                         regulator-max-microvolt = <3000000>;
  849                 };
  850                 vreg_l20a_2p95: l20 {
  851                         regulator-name = "vreg_l20a_2p95";
  852                         regulator-min-microvolt = <2950000>;
  853                         regulator-max-microvolt = <2950000>;
  854                         regulator-allow-set-load;
  855                 };
  856                 vreg_l21a_2p95: l21 {
  857                         regulator-name = "vreg_l21a_2p95";
  858                         regulator-min-microvolt = <2950000>;
  859                         regulator-max-microvolt = <2950000>;
  860                         regulator-allow-set-load;
  861                         regulator-system-load = <200000>;
  862                 };
  863                 vreg_l22a_3p0: l22 {
  864                         regulator-name = "vreg_l22a_3p0";
  865                         regulator-min-microvolt = <3300000>;
  866                         regulator-max-microvolt = <3300000>;
  867                 };
  868                 vreg_l23a_2p8: l23 {
  869                         regulator-name = "vreg_l23a_2p8";
  870                         regulator-min-microvolt = <2800000>;
  871                         regulator-max-microvolt = <2800000>;
  872                 };
  873                 vreg_l24a_3p075: l24 {
  874                         regulator-name = "vreg_l24a_3p075";
  875                         regulator-min-microvolt = <3075000>;
  876                         regulator-max-microvolt = <3075000>;
  877                 };
  878                 vreg_l25a_1p2: l25 {
  879                         regulator-name = "vreg_l25a_1p2";
  880                         regulator-min-microvolt = <1200000>;
  881                         regulator-max-microvolt = <1200000>;
  882                         regulator-allow-set-load;
  883                 };
  884                 vreg_l26a_0p8: l27 {
  885                         regulator-name = "vreg_l26a_0p8";
  886                         regulator-min-microvolt = <1000000>;
  887                         regulator-max-microvolt = <1000000>;
  888                 };
  889                 vreg_l28a_0p925: l28 {
  890                         regulator-name = "vreg_l28a_0p925";
  891                         regulator-min-microvolt = <925000>;
  892                         regulator-max-microvolt = <925000>;
  893                         regulator-allow-set-load;
  894                 };
  895                 vreg_l29a_2p8: l29 {
  896                         regulator-name = "vreg_l29a_2p8";
  897                         regulator-min-microvolt = <2800000>;
  898                         regulator-max-microvolt = <2800000>;
  899                 };
  900                 vreg_l30a_1p8: l30 {
  901                         regulator-name = "vreg_l30a_1p8";
  902                         regulator-min-microvolt = <1800000>;
  903                         regulator-max-microvolt = <1800000>;
  904                 };
  905                 vreg_l32a_1p8: l32 {
  906                         regulator-name = "vreg_l32a_1p8";
  907                         regulator-min-microvolt = <1800000>;
  908                         regulator-max-microvolt = <1800000>;
  909                 };
  910 
  911                 vreg_lvs1a_1p8: lvs1 {
  912                         regulator-name = "vreg_lvs1a_1p8";
  913                 };
  914 
  915                 vreg_lvs2a_1p8: lvs2 {
  916                         regulator-name = "vreg_lvs2a_1p8";
  917                 };
  918         };
  919 
  920         pmi8994-regulators {
  921                 compatible = "qcom,rpm-pmi8994-regulators";
  922 
  923                 vdd_s1-supply = <&vph_pwr>;
  924                 vdd_s2-supply = <&vph_pwr>;
  925                 vdd_s3-supply = <&vph_pwr>;
  926                 vdd_bst_byp-supply = <&vph_pwr>;
  927 
  928                 vph_pwr_bbyp: boost-bypass {
  929                         regulator-name = "vph_pwr_bbyp";
  930                         regulator-min-microvolt = <3300000>;
  931                         regulator-max-microvolt = <3300000>;
  932                 };
  933 
  934                 vreg_s1b_1p025: s1 {
  935                         regulator-name = "vreg_s1b_1p025";
  936                         regulator-min-microvolt = <1025000>;
  937                         regulator-max-microvolt = <1025000>;
  938                 };
  939         };
  940 };
  941 
  942 &sdhc2 {
  943         /* External SD card */
  944         pinctrl-names = "default", "sleep";
  945         pinctrl-0 = <&sdc2_state_on &sdc2_cd_on>;
  946         pinctrl-1 = <&sdc2_state_off &sdc2_cd_off>;
  947         cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>;
  948         vmmc-supply = <&vreg_l21a_2p95>;
  949         vqmmc-supply = <&vreg_l13a_2p95>;
  950         status = "okay";
  951 };
  952 
  953 &q6asmdai {
  954         dai@0 {
  955                 reg = <0>;
  956         };
  957 
  958         dai@1 {
  959                 reg = <1>;
  960         };
  961 
  962         dai@2 {
  963                 reg = <2>;
  964         };
  965 };
  966 
  967 &sound {
  968         compatible = "qcom,apq8096-sndcard";
  969         model = "DB820c";
  970         audio-routing = "RX_BIAS", "MCLK",
  971                 "MM_DL1",  "MultiMedia1 Playback",
  972                 "MM_DL2",  "MultiMedia2 Playback",
  973                 "MultiMedia3 Capture", "MM_UL3";
  974 
  975         mm1-dai-link {
  976                 link-name = "MultiMedia1";
  977                 cpu {
  978                         sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA1>;
  979                 };
  980         };
  981 
  982         mm2-dai-link {
  983                 link-name = "MultiMedia2";
  984                 cpu {
  985                         sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA2>;
  986                 };
  987         };
  988 
  989         mm3-dai-link {
  990                 link-name = "MultiMedia3";
  991                 cpu {
  992                         sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA3>;
  993                 };
  994         };
  995 
  996         hdmi-dai-link {
  997                 link-name = "HDMI";
  998                 cpu {
  999                         sound-dai = <&q6afedai HDMI_RX>;
 1000                 };
 1001 
 1002                 platform {
 1003                         sound-dai = <&q6routing>;
 1004                 };
 1005 
 1006                 codec {
 1007                         sound-dai = <&hdmi 0>;
 1008                 };
 1009         };
 1010 
 1011         slim-dai-link {
 1012                 link-name = "SLIM Playback";
 1013                 cpu {
 1014                         sound-dai = <&q6afedai SLIMBUS_6_RX>;
 1015                 };
 1016 
 1017                 platform {
 1018                         sound-dai = <&q6routing>;
 1019         };
 1020 
 1021                 codec {
 1022                         sound-dai = <&wcd9335 6>;
 1023                 };
 1024         };
 1025 
 1026         slimcap-dai-link {
 1027                 link-name = "SLIM Capture";
 1028                 cpu {
 1029                         sound-dai = <&q6afedai SLIMBUS_0_TX>;
 1030                 };
 1031 
 1032                 platform {
 1033                         sound-dai = <&q6routing>;
 1034                 };
 1035 
 1036                 codec {
 1037                         sound-dai = <&wcd9335 1>;
 1038                 };
 1039         };
 1040 };
 1041 
 1042 &ufsphy {
 1043         status = "okay";
 1044 
 1045         vdda-phy-supply = <&vreg_l28a_0p925>;
 1046         vdda-pll-supply = <&vreg_l12a_1p8>;
 1047         vddp-ref-clk-supply = <&vreg_l25a_1p2>;
 1048 };
 1049 
 1050 &ufshc {
 1051         status = "okay";
 1052 
 1053         vcc-supply = <&vreg_l20a_2p95>;
 1054         vccq-supply = <&vreg_l25a_1p2>;
 1055         vccq2-supply = <&vreg_s4a_1p8>;
 1056 
 1057         vcc-max-microamp = <600000>;
 1058         vccq-max-microamp = <450000>;
 1059         vccq2-max-microamp = <450000>;
 1060 };
 1061 
 1062 &usb2 {
 1063         status = "okay";
 1064         extcon = <&usb2_id>;
 1065 
 1066         dwc3@7600000 {
 1067                 extcon = <&usb2_id>;
 1068                 dr_mode = "otg";
 1069                 maximum-speed = "high-speed";
 1070         };
 1071 };
 1072 
 1073 &usb3 {
 1074         status = "okay";
 1075         extcon = <&usb3_id>;
 1076 
 1077         dwc3@6a00000 {
 1078                 extcon = <&usb3_id>;
 1079                 dr_mode = "otg";
 1080         };
 1081 };
 1082 
 1083 &usb3phy {
 1084         status = "okay";
 1085 
 1086         vdda-phy-supply = <&vreg_l28a_0p925>;
 1087         vdda-pll-supply = <&vreg_l12a_1p8>;
 1088 
 1089 };
 1090 
 1091 &venus {
 1092         status = "okay";
 1093 };
 1094 
 1095 &wcd9335 {
 1096         clock-names = "mclk", "slimbus";
 1097         clocks = <&div1_mclk>,
 1098                  <&rpmcc RPM_SMD_BB_CLK1>;
 1099 
 1100         vdd-buck-supply = <&vreg_s4a_1p8>;
 1101         vdd-buck-sido-supply = <&vreg_s4a_1p8>;
 1102         vdd-tx-supply = <&vreg_s4a_1p8>;
 1103         vdd-rx-supply = <&vreg_s4a_1p8>;
 1104         vdd-io-supply = <&vreg_s4a_1p8>;
 1105 };

Cache object: b122591f316791f97fa750e139248716


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