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/am57xx-beagle-x15-common.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 Texas Instruments Incorporated - https://www.ti.com/
    4  */
    5 /dts-v1/;
    6 
    7 #include "am5728.dtsi"
    8 #include "am57xx-commercial-grade.dtsi"
    9 #include "dra74x-mmc-iodelay.dtsi"
   10 #include "dra74-ipu-dsp-common.dtsi"
   11 #include <dt-bindings/gpio/gpio.h>
   12 #include <dt-bindings/interrupt-controller/irq.h>
   13 
   14 / {
   15         compatible = "ti,am572x-beagle-x15", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7";
   16 
   17         aliases {
   18                 rtc0 = &mcp_rtc;
   19                 rtc1 = &tps659038_rtc;
   20                 rtc2 = &rtc;
   21                 display0 = &hdmi0;
   22         };
   23 
   24         chosen {
   25                 stdout-path = &uart3;
   26         };
   27 
   28         memory@0 {
   29                 device_type = "memory";
   30                 reg = <0x0 0x80000000 0x0 0x80000000>;
   31         };
   32 
   33         main_12v0: fixedregulator-main_12v0 {
   34                 /* main supply */
   35                 compatible = "regulator-fixed";
   36                 regulator-name = "main_12v0";
   37                 regulator-min-microvolt = <12000000>;
   38                 regulator-max-microvolt = <12000000>;
   39                 regulator-always-on;
   40                 regulator-boot-on;
   41         };
   42 
   43         evm_5v0: fixedregulator-evm_5v0 {
   44                 /* Output of TPS54531D */
   45                 compatible = "regulator-fixed";
   46                 regulator-name = "evm_5v0";
   47                 regulator-min-microvolt = <5000000>;
   48                 regulator-max-microvolt = <5000000>;
   49                 vin-supply = <&main_12v0>;
   50                 regulator-always-on;
   51                 regulator-boot-on;
   52         };
   53 
   54         reserved-memory {
   55                 #address-cells = <2>;
   56                 #size-cells = <2>;
   57                 ranges;
   58 
   59                 ipu2_memory_region: ipu2-memory@95800000 {
   60                         compatible = "shared-dma-pool";
   61                         reg = <0x0 0x95800000 0x0 0x3800000>;
   62                         reusable;
   63                         status = "okay";
   64                 };
   65 
   66                 dsp1_memory_region: dsp1-memory@99000000 {
   67                         compatible = "shared-dma-pool";
   68                         reg = <0x0 0x99000000 0x0 0x4000000>;
   69                         reusable;
   70                         status = "okay";
   71                 };
   72 
   73                 ipu1_memory_region: ipu1-memory@9d000000 {
   74                         compatible = "shared-dma-pool";
   75                         reg = <0x0 0x9d000000 0x0 0x2000000>;
   76                         reusable;
   77                         status = "okay";
   78                 };
   79 
   80                 dsp2_memory_region: dsp2-memory@9f000000 {
   81                         compatible = "shared-dma-pool";
   82                         reg = <0x0 0x9f000000 0x0 0x800000>;
   83                         reusable;
   84                         status = "okay";
   85                 };
   86         };
   87 
   88         vdd_3v3: fixedregulator-vdd_3v3 {
   89                 compatible = "regulator-fixed";
   90                 regulator-name = "vdd_3v3";
   91                 vin-supply = <&regen1>;
   92                 regulator-min-microvolt = <3300000>;
   93                 regulator-max-microvolt = <3300000>;
   94         };
   95 
   96         aic_dvdd: fixedregulator-aic_dvdd {
   97                 compatible = "regulator-fixed";
   98                 regulator-name = "aic_dvdd_fixed";
   99                 vin-supply = <&vdd_3v3>;
  100                 regulator-min-microvolt = <1800000>;
  101                 regulator-max-microvolt = <1800000>;
  102         };
  103 
  104         vtt_fixed: fixedregulator-vtt {
  105                 /* TPS51200 */
  106                 compatible = "regulator-fixed";
  107                 regulator-name = "vtt_fixed";
  108                 vin-supply = <&smps3_reg>;
  109                 regulator-min-microvolt = <3300000>;
  110                 regulator-max-microvolt = <3300000>;
  111                 regulator-always-on;
  112                 regulator-boot-on;
  113                 enable-active-high;
  114                 gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
  115         };
  116 
  117         leds {
  118                 compatible = "gpio-leds";
  119 
  120                 led0 {
  121                         label = "beagle-x15:usr0";
  122                         gpios = <&gpio7 9 GPIO_ACTIVE_HIGH>;
  123                         linux,default-trigger = "heartbeat";
  124                         default-state = "off";
  125                 };
  126 
  127                 led1 {
  128                         label = "beagle-x15:usr1";
  129                         gpios = <&gpio7 8 GPIO_ACTIVE_HIGH>;
  130                         linux,default-trigger = "cpu0";
  131                         default-state = "off";
  132                 };
  133 
  134                 led2 {
  135                         label = "beagle-x15:usr2";
  136                         gpios = <&gpio7 14 GPIO_ACTIVE_HIGH>;
  137                         linux,default-trigger = "mmc0";
  138                         default-state = "off";
  139                 };
  140 
  141                 led3 {
  142                         label = "beagle-x15:usr3";
  143                         gpios = <&gpio7 15 GPIO_ACTIVE_HIGH>;
  144                         linux,default-trigger = "disk-activity";
  145                         default-state = "off";
  146                 };
  147         };
  148 
  149         gpio_fan: gpio_fan {
  150                 /* Based on 5v 500mA AFB02505HHB */
  151                 compatible = "gpio-fan";
  152                 gpios =  <&tps659038_gpio 2 GPIO_ACTIVE_HIGH>;
  153                 gpio-fan,speed-map = <0     0>,
  154                                      <13000 1>;
  155                 #cooling-cells = <2>;
  156         };
  157 
  158         hdmi0: connector {
  159                 compatible = "hdmi-connector";
  160                 label = "hdmi";
  161 
  162                 type = "a";
  163 
  164                 port {
  165                         hdmi_connector_in: endpoint {
  166                                 remote-endpoint = <&tpd12s015_out>;
  167                         };
  168                 };
  169         };
  170 
  171         tpd12s015: encoder {
  172                 compatible = "ti,tpd12s015";
  173 
  174                 ports {
  175                         #address-cells = <1>;
  176                         #size-cells = <0>;
  177 
  178                         port@0 {
  179                                 reg = <0>;
  180 
  181                                 tpd12s015_in: endpoint {
  182                                         remote-endpoint = <&hdmi_out>;
  183                                 };
  184                         };
  185 
  186                         port@1 {
  187                                 reg = <1>;
  188 
  189                                 tpd12s015_out: endpoint {
  190                                         remote-endpoint = <&hdmi_connector_in>;
  191                                 };
  192                         };
  193                 };
  194         };
  195 
  196         sound0: sound0 {
  197                 compatible = "simple-audio-card";
  198                 simple-audio-card,name = "BeagleBoard-X15";
  199                 simple-audio-card,widgets =
  200                         "Line", "Line Out",
  201                         "Line", "Line In";
  202                 simple-audio-card,routing =
  203                         "Line Out",     "LLOUT",
  204                         "Line Out",     "RLOUT",
  205                         "MIC2L",        "Line In",
  206                         "MIC2R",        "Line In";
  207                 simple-audio-card,format = "dsp_b";
  208                 simple-audio-card,bitclock-master = <&sound0_master>;
  209                 simple-audio-card,frame-master = <&sound0_master>;
  210                 simple-audio-card,bitclock-inversion;
  211 
  212                 simple-audio-card,cpu {
  213                         sound-dai = <&mcasp3>;
  214                 };
  215 
  216                 sound0_master: simple-audio-card,codec {
  217                         sound-dai = <&tlv320aic3104>;
  218                         clocks = <&clkout2_clk>;
  219                 };
  220         };
  221 };
  222 
  223 &i2c1 {
  224         status = "okay";
  225         clock-frequency = <400000>;
  226 
  227         tps659038: tps659038@58 {
  228                 compatible = "ti,tps659038";
  229                 reg = <0x58>;
  230                 interrupt-parent = <&gpio1>;
  231                 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
  232 
  233                 #interrupt-cells = <2>;
  234                 interrupt-controller;
  235 
  236                 ti,system-power-controller;
  237                 ti,palmas-override-powerhold;
  238 
  239                 tps659038_pmic {
  240                         compatible = "ti,tps659038-pmic";
  241 
  242                         regulators {
  243                                 smps12_reg: smps12 {
  244                                         /* VDD_MPU */
  245                                         regulator-name = "smps12";
  246                                         regulator-min-microvolt = < 850000>;
  247                                         regulator-max-microvolt = <1250000>;
  248                                         regulator-always-on;
  249                                         regulator-boot-on;
  250                                 };
  251 
  252                                 smps3_reg: smps3 {
  253                                         /* VDD_DDR */
  254                                         regulator-name = "smps3";
  255                                         regulator-min-microvolt = <1350000>;
  256                                         regulator-max-microvolt = <1350000>;
  257                                         regulator-always-on;
  258                                         regulator-boot-on;
  259                                 };
  260 
  261                                 smps45_reg: smps45 {
  262                                         /* VDD_DSPEVE, VDD_IVA, VDD_GPU */
  263                                         regulator-name = "smps45";
  264                                         regulator-min-microvolt = < 850000>;
  265                                         regulator-max-microvolt = <1250000>;
  266                                         regulator-always-on;
  267                                         regulator-boot-on;
  268                                 };
  269 
  270                                 smps6_reg: smps6 {
  271                                         /* VDD_CORE */
  272                                         regulator-name = "smps6";
  273                                         regulator-min-microvolt = <850000>;
  274                                         regulator-max-microvolt = <1150000>;
  275                                         regulator-always-on;
  276                                         regulator-boot-on;
  277                                 };
  278 
  279                                 /* SMPS7 unused */
  280 
  281                                 smps8_reg: smps8 {
  282                                         /* VDD_1V8 */
  283                                         regulator-name = "smps8";
  284                                         regulator-min-microvolt = <1800000>;
  285                                         regulator-max-microvolt = <1800000>;
  286                                         regulator-always-on;
  287                                         regulator-boot-on;
  288                                 };
  289 
  290                                 /* SMPS9 unused */
  291 
  292                                 ldo1_reg: ldo1 {
  293                                         /* VDD_SD / VDDSHV8  */
  294                                         regulator-name = "ldo1";
  295                                         regulator-min-microvolt = <1800000>;
  296                                         regulator-max-microvolt = <3300000>;
  297                                         regulator-boot-on;
  298                                         regulator-always-on;
  299                                 };
  300 
  301                                 ldo2_reg: ldo2 {
  302                                         /* VDD_SHV5 */
  303                                         regulator-name = "ldo2";
  304                                         regulator-min-microvolt = <3300000>;
  305                                         regulator-max-microvolt = <3300000>;
  306                                         regulator-always-on;
  307                                         regulator-boot-on;
  308                                 };
  309 
  310                                 ldo3_reg: ldo3 {
  311                                         /* VDDA_1V8_PHYA */
  312                                         regulator-name = "ldo3";
  313                                         regulator-min-microvolt = <1800000>;
  314                                         regulator-max-microvolt = <1800000>;
  315                                         regulator-always-on;
  316                                         regulator-boot-on;
  317                                 };
  318 
  319                                 ldo4_reg: ldo4 {
  320                                         /* VDDA_1V8_PHYB */
  321                                         regulator-name = "ldo4";
  322                                         regulator-min-microvolt = <1800000>;
  323                                         regulator-max-microvolt = <1800000>;
  324                                         regulator-always-on;
  325                                         regulator-boot-on;
  326                                 };
  327 
  328                                 ldo9_reg: ldo9 {
  329                                         /* VDD_RTC */
  330                                         regulator-name = "ldo9";
  331                                         regulator-min-microvolt = <1050000>;
  332                                         regulator-max-microvolt = <1050000>;
  333                                         regulator-always-on;
  334                                         regulator-boot-on;
  335                                 };
  336 
  337                                 ldoln_reg: ldoln {
  338                                         /* VDDA_1V8_PLL */
  339                                         regulator-name = "ldoln";
  340                                         regulator-min-microvolt = <1800000>;
  341                                         regulator-max-microvolt = <1800000>;
  342                                         regulator-always-on;
  343                                         regulator-boot-on;
  344                                 };
  345 
  346                                 ldousb_reg: ldousb {
  347                                         /* VDDA_3V_USB: VDDA_USBHS33 */
  348                                         regulator-name = "ldousb";
  349                                         regulator-min-microvolt = <3300000>;
  350                                         regulator-max-microvolt = <3300000>;
  351                                         regulator-boot-on;
  352                                 };
  353 
  354                                 regen1: regen1 {
  355                                         /* VDD_3V3_ON */
  356                                         regulator-name = "regen1";
  357                                         regulator-boot-on;
  358                                         regulator-always-on;
  359                                 };
  360                         };
  361                 };
  362 
  363                 tps659038_rtc: tps659038_rtc {
  364                         compatible = "ti,palmas-rtc";
  365                         interrupt-parent = <&tps659038>;
  366                         interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
  367                         wakeup-source;
  368                 };
  369 
  370                 tps659038_pwr_button: tps659038_pwr_button {
  371                         compatible = "ti,palmas-pwrbutton";
  372                         interrupt-parent = <&tps659038>;
  373                         interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
  374                         wakeup-source;
  375                         ti,palmas-long-press-seconds = <12>;
  376                 };
  377 
  378                 tps659038_gpio: tps659038_gpio {
  379                         compatible = "ti,palmas-gpio";
  380                         gpio-controller;
  381                         #gpio-cells = <2>;
  382                 };
  383 
  384                 extcon_usb2: tps659038_usb {
  385                         compatible = "ti,palmas-usb-vid";
  386                         ti,enable-vbus-detection;
  387                         vbus-gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
  388                 };
  389 
  390         };
  391 
  392         tmp102: tmp102@48 {
  393                 compatible = "ti,tmp102";
  394                 reg = <0x48>;
  395                 interrupt-parent = <&gpio7>;
  396                 interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
  397                 #thermal-sensor-cells = <1>;
  398         };
  399 
  400         tlv320aic3104: tlv320aic3104@18 {
  401                 #sound-dai-cells = <0>;
  402                 compatible = "ti,tlv320aic3104";
  403                 reg = <0x18>;
  404                 assigned-clocks = <&clkoutmux2_clk_mux>;
  405                 assigned-clock-parents = <&sys_clk2_dclk_div>;
  406 
  407                 status = "okay";
  408                 adc-settle-ms = <40>;
  409 
  410                 AVDD-supply = <&vdd_3v3>;
  411                 IOVDD-supply = <&vdd_3v3>;
  412                 DRVDD-supply = <&vdd_3v3>;
  413                 DVDD-supply = <&aic_dvdd>;
  414         };
  415 
  416         eeprom: eeprom@50 {
  417                 compatible = "atmel,24c32";
  418                 reg = <0x50>;
  419         };
  420 };
  421 
  422 &i2c3 {
  423         status = "okay";
  424         clock-frequency = <400000>;
  425 
  426         mcp_rtc: rtc@6f {
  427                 compatible = "microchip,mcp7941x";
  428                 reg = <0x6f>;
  429                 interrupts-extended = <&crossbar_mpu GIC_SPI 2 IRQ_TYPE_EDGE_RISING>,
  430                                       <&dra7_pmx_core 0x424>;
  431                 interrupt-names = "irq", "wakeup";
  432 
  433                 vcc-supply = <&vdd_3v3>;
  434                 wakeup-source;
  435         };
  436 };
  437 
  438 &gpio7_target {
  439         ti,no-reset-on-init;
  440         ti,no-idle-on-init;
  441 };
  442 
  443 &cpu0 {
  444         vdd-supply = <&smps12_reg>;
  445         voltage-tolerance = <1>;
  446 };
  447 
  448 &uart3 {
  449         status = "okay";
  450         interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
  451                               <&dra7_pmx_core 0x3f8>;
  452 };
  453 
  454 &davinci_mdio_sw {
  455         phy0: ethernet-phy@1 {
  456                 reg = <1>;
  457         };
  458 
  459         phy1: ethernet-phy@2 {
  460                 reg = <2>;
  461         };
  462 };
  463 
  464 &mac_sw {
  465         status = "okay";
  466 };
  467 
  468 &cpsw_port1 {
  469         phy-handle = <&phy0>;
  470         phy-mode = "rgmii-rxid";
  471         ti,dual-emac-pvid = <1>;
  472 };
  473 
  474 &cpsw_port2 {
  475         phy-handle = <&phy1>;
  476         phy-mode = "rgmii-rxid";
  477         ti,dual-emac-pvid = <2>;
  478 };
  479 
  480 &mmc1 {
  481         status = "okay";
  482 
  483         pinctrl-names = "default";
  484         pinctrl-0 = <&mmc1_pins_default>;
  485 
  486         bus-width = <4>;
  487         cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */
  488         no-1-8-v;
  489 };
  490 
  491 &mmc2 {
  492         status = "okay";
  493 
  494         pinctrl-names = "default";
  495         pinctrl-0 = <&mmc2_pins_default>;
  496 
  497         vmmc-supply = <&vdd_3v3>;
  498         vqmmc-supply = <&vdd_3v3>;
  499         bus-width = <8>;
  500         non-removable;
  501         no-1-8-v;
  502 };
  503 
  504 &sata {
  505         status = "okay";
  506 };
  507 
  508 &usb2_phy1 {
  509         phy-supply = <&ldousb_reg>;
  510 };
  511 
  512 &usb2_phy2 {
  513         phy-supply = <&ldousb_reg>;
  514 };
  515 
  516 &usb1 {
  517         dr_mode = "host";
  518 };
  519 
  520 &omap_dwc3_2 {
  521         extcon = <&extcon_usb2>;
  522 };
  523 
  524 &usb2 {
  525         /*
  526          * Stand alone usage is peripheral only.
  527          * However, with some resistor modifications
  528          * this port can be used via expansion connectors
  529          * as "host" or "dual-role". If so, provide
  530          * the necessary dr_mode override in the expansion
  531          * board's DT.
  532          */
  533         dr_mode = "peripheral";
  534 };
  535 
  536 &cpu_trips {
  537         cpu_alert1: cpu_alert1 {
  538                 temperature = <50000>; /* millicelsius */
  539                 hysteresis = <2000>; /* millicelsius */
  540                 type = "active";
  541         };
  542 };
  543 
  544 &cpu_cooling_maps {
  545         map1 {
  546                 trip = <&cpu_alert1>;
  547                 cooling-device = <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  548         };
  549 };
  550 
  551 &thermal_zones {
  552         board_thermal: board_thermal {
  553                 polling-delay-passive = <1250>; /* milliseconds */
  554                 polling-delay = <1500>; /* milliseconds */
  555 
  556                                 /* sensor       ID */
  557                 thermal-sensors = <&tmp102     0>;
  558 
  559                 board_trips: trips {
  560                         board_alert0: board_alert {
  561                                 temperature = <40000>; /* millicelsius */
  562                                 hysteresis = <2000>; /* millicelsius */
  563                                 type = "active";
  564                         };
  565 
  566                         board_crit: board_crit {
  567                                 temperature = <105000>; /* millicelsius */
  568                                 hysteresis = <0>; /* millicelsius */
  569                                 type = "critical";
  570                         };
  571                 };
  572 
  573                 board_cooling_maps: cooling-maps {
  574                         map0 {
  575                                 trip = <&board_alert0>;
  576                                 cooling-device =
  577                                   <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  578                         };
  579                 };
  580        };
  581 };
  582 
  583 &dss {
  584         status = "okay";
  585 
  586         vdda_video-supply = <&ldoln_reg>;
  587 };
  588 
  589 &hdmi {
  590         status = "okay";
  591         vdda-supply = <&ldo4_reg>;
  592 
  593         port {
  594                 hdmi_out: endpoint {
  595                         remote-endpoint = <&tpd12s015_in>;
  596                 };
  597         };
  598 };
  599 
  600 &pcie1_rc {
  601         status = "okay";
  602         gpios = <&gpio2 8 GPIO_ACTIVE_LOW>;
  603 };
  604 
  605 &mcasp3 {
  606         #sound-dai-cells = <0>;
  607         assigned-clocks = <&l4per2_clkctrl DRA7_L4PER2_MCASP3_CLKCTRL 24>;
  608         assigned-clock-parents = <&sys_clkin2>;
  609         status = "okay";
  610 
  611         op-mode = <0>;  /* MCASP_IIS_MODE */
  612         tdm-slots = <2>;
  613         /* 4 serializers */
  614         serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
  615                 1 2 0 0
  616         >;
  617         tx-num-evt = <32>;
  618         rx-num-evt = <32>;
  619 };
  620 
  621 &ipu2 {
  622         status = "okay";
  623         memory-region = <&ipu2_memory_region>;
  624 };
  625 
  626 &ipu1 {
  627         status = "okay";
  628         memory-region = <&ipu1_memory_region>;
  629 };
  630 
  631 &dsp1 {
  632         status = "okay";
  633         memory-region = <&dsp1_memory_region>;
  634 };
  635 
  636 &dsp2 {
  637         status = "okay";
  638         memory-region = <&dsp2_memory_region>;
  639 };
  640 
  641 &pruss1_mdio {
  642         status = "disabled";
  643 };
  644 
  645 &pruss2_mdio {
  646         status = "disabled";
  647 };

Cache object: 99149d1b0c324e5a9bd933f5bd8daf5a


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