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/exynos5422-odroidxu3-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
    2 /*
    3  * Hardkernel Odroid XU3/XU3-Lite/XU4 boards common device tree source
    4  *
    5  * Copyright (c) 2013 Samsung Electronics Co., Ltd.
    6  *              http://www.samsung.com
    7  * Copyright (c) 2014 Collabora Ltd.
    8  * Copyright (c) 2015 Lukasz Majewski <l.majewski@samsung.com>
    9  *                    Anand Moon <linux.amoon@gmail.com>
   10  */
   11 
   12 #include <dt-bindings/input/input.h>
   13 #include "exynos5422-odroid-core.dtsi"
   14 
   15 / {
   16         gpio-keys {
   17                 compatible = "gpio-keys";
   18                 pinctrl-names = "default";
   19                 pinctrl-0 = <&power_key>;
   20 
   21                 power-key {
   22                         /*
   23                          * The power button (SW2) is connected to the PWRON
   24                          * pin (active high) of the S2MPS11 PMIC, which acts
   25                          * as a 16ms debouce filter and signal inverter with
   26                          * output on ONOB pin (active low). ONOB PMIC pin is
   27                          * then connected to XEINT3 SoC pin.
   28                          */
   29                         gpios = <&gpx0 3 GPIO_ACTIVE_LOW>;
   30                         linux,code = <KEY_POWER>;
   31                         label = "power key";
   32                         debounce-interval = <0>;
   33                         wakeup-source;
   34                 };
   35         };
   36 
   37         emmc_pwrseq: pwrseq {
   38                 pinctrl-0 = <&emmc_nrst_pin>;
   39                 pinctrl-names = "default";
   40                 compatible = "mmc-pwrseq-emmc";
   41                 reset-gpios = <&gpd1 0 GPIO_ACTIVE_LOW>;
   42         };
   43 
   44         fan0: pwm-fan {
   45                 compatible = "pwm-fan";
   46                 pwms = <&pwm 0 20972 0>;
   47                 #cooling-cells = <2>;
   48                 cooling-levels = <0 130 170 230>;
   49         };
   50 
   51         thermal-zones {
   52                 cpu0_thermal: cpu0-thermal {
   53                         thermal-sensors = <&tmu_cpu0 0>;
   54                         polling-delay-passive = <250>;
   55                         polling-delay = <0>;
   56                         trips {
   57                                 cpu0_alert0: cpu-alert-0 {
   58                                         temperature = <50000>; /* millicelsius */
   59                                         hysteresis = <5000>; /* millicelsius */
   60                                         type = "active";
   61                                 };
   62                                 cpu0_alert1: cpu-alert-1 {
   63                                         temperature = <60000>; /* millicelsius */
   64                                         hysteresis = <5000>; /* millicelsius */
   65                                         type = "active";
   66                                 };
   67                                 cpu0_alert2: cpu-alert-2 {
   68                                         temperature = <70000>; /* millicelsius */
   69                                         hysteresis = <5000>; /* millicelsius */
   70                                         type = "active";
   71                                 };
   72                                 cpu0_crit0: cpu-crit-0 {
   73                                         temperature = <120000>; /* millicelsius */
   74                                         hysteresis = <0>; /* millicelsius */
   75                                         type = "critical";
   76                                 };
   77                                 /*
   78                                  * Exynos542x supports only 4 trip-points
   79                                  * so for these polling mode is required.
   80                                  * Start polling at temperature level of last
   81                                  * interrupt-driven trip: cpu0_alert2
   82                                  */
   83                                 cpu0_alert3: cpu-alert-3 {
   84                                         temperature = <70000>; /* millicelsius */
   85                                         hysteresis = <10000>; /* millicelsius */
   86                                         type = "passive";
   87                                 };
   88                                 cpu0_alert4: cpu-alert-4 {
   89                                         temperature = <85000>; /* millicelsius */
   90                                         hysteresis = <10000>; /* millicelsius */
   91                                         type = "passive";
   92                                 };
   93                         };
   94                         cooling-maps {
   95                                 map0 {
   96                                         trip = <&cpu0_alert0>;
   97                                         cooling-device = <&fan0 0 1>;
   98                                 };
   99                                 map1 {
  100                                         trip = <&cpu0_alert1>;
  101                                         cooling-device = <&fan0 1 2>;
  102                                 };
  103                                 map2 {
  104                                         trip = <&cpu0_alert2>;
  105                                         cooling-device = <&fan0 2 3>;
  106                                 };
  107                                 /*
  108                                  * When reaching cpu0_alert3, reduce CPU
  109                                  * by 2 steps. On Exynos5422/5800 that would
  110                                  * (usually) be: 1800 MHz and 1200 MHz.
  111                                  */
  112                                 map3 {
  113                                         trip = <&cpu0_alert3>;
  114                                         cooling-device = <&cpu0 0 2>,
  115                                                          <&cpu1 0 2>,
  116                                                          <&cpu2 0 2>,
  117                                                          <&cpu3 0 2>,
  118                                                          <&cpu4 0 2>,
  119                                                          <&cpu5 0 2>,
  120                                                          <&cpu6 0 2>,
  121                                                          <&cpu7 0 2>;
  122                                 };
  123                                 /*
  124                                  * When reaching cpu0_alert4, reduce CPU
  125                                  * further, down to 600 MHz (14 steps for big,
  126                                  * 8 steps for LITTLE).
  127                                  */
  128                                 cpu0_cooling_map4: map4 {
  129                                         trip = <&cpu0_alert4>;
  130                                         cooling-device = <&cpu0 3 8>,
  131                                                          <&cpu1 3 8>,
  132                                                          <&cpu2 3 8>,
  133                                                          <&cpu3 3 8>,
  134                                                          <&cpu4 3 14>,
  135                                                          <&cpu5 3 14>,
  136                                                          <&cpu6 3 14>,
  137                                                          <&cpu7 3 14>;
  138                                 };
  139                         };
  140                 };
  141                 cpu1_thermal: cpu1-thermal {
  142                         thermal-sensors = <&tmu_cpu1 0>;
  143                         polling-delay-passive = <250>;
  144                         polling-delay = <0>;
  145                         trips {
  146                                 cpu1_alert0: cpu-alert-0 {
  147                                         temperature = <50000>;
  148                                         hysteresis = <5000>;
  149                                         type = "active";
  150                                 };
  151                                 cpu1_alert1: cpu-alert-1 {
  152                                         temperature = <60000>;
  153                                         hysteresis = <5000>;
  154                                         type = "active";
  155                                 };
  156                                 cpu1_alert2: cpu-alert-2 {
  157                                         temperature = <70000>;
  158                                         hysteresis = <5000>;
  159                                         type = "active";
  160                                 };
  161                                 cpu1_crit0: cpu-crit-0 {
  162                                         temperature = <120000>;
  163                                         hysteresis = <0>;
  164                                         type = "critical";
  165                                 };
  166                                 cpu1_alert3: cpu-alert-3 {
  167                                         temperature = <70000>;
  168                                         hysteresis = <10000>;
  169                                         type = "passive";
  170                                 };
  171                                 cpu1_alert4: cpu-alert-4 {
  172                                         temperature = <85000>;
  173                                         hysteresis = <10000>;
  174                                         type = "passive";
  175                                 };
  176                         };
  177                         cooling-maps {
  178                                 map0 {
  179                                         trip = <&cpu1_alert0>;
  180                                         cooling-device = <&fan0 0 1>;
  181                                 };
  182                                 map1 {
  183                                         trip = <&cpu1_alert1>;
  184                                         cooling-device = <&fan0 1 2>;
  185                                 };
  186                                 map2 {
  187                                         trip = <&cpu1_alert2>;
  188                                         cooling-device = <&fan0 2 3>;
  189                                 };
  190                                 map3 {
  191                                         trip = <&cpu1_alert3>;
  192                                         cooling-device = <&cpu0 0 2>,
  193                                                          <&cpu1 0 2>,
  194                                                          <&cpu2 0 2>,
  195                                                          <&cpu3 0 2>,
  196                                                          <&cpu4 0 2>,
  197                                                          <&cpu5 0 2>,
  198                                                          <&cpu6 0 2>,
  199                                                          <&cpu7 0 2>;
  200                                 };
  201                                 cpu1_cooling_map4: map4 {
  202                                         trip = <&cpu1_alert4>;
  203                                         cooling-device = <&cpu0 3 8>,
  204                                                          <&cpu1 3 8>,
  205                                                          <&cpu2 3 8>,
  206                                                          <&cpu3 3 8>,
  207                                                          <&cpu4 3 14>,
  208                                                          <&cpu5 3 14>,
  209                                                          <&cpu6 3 14>,
  210                                                          <&cpu7 3 14>;
  211                                 };
  212                         };
  213                 };
  214                 cpu2_thermal: cpu2-thermal {
  215                         thermal-sensors = <&tmu_cpu2 0>;
  216                         polling-delay-passive = <250>;
  217                         polling-delay = <0>;
  218                         trips {
  219                                 cpu2_alert0: cpu-alert-0 {
  220                                         temperature = <50000>;
  221                                         hysteresis = <5000>;
  222                                         type = "active";
  223                                 };
  224                                 cpu2_alert1: cpu-alert-1 {
  225                                         temperature = <60000>;
  226                                         hysteresis = <5000>;
  227                                         type = "active";
  228                                 };
  229                                 cpu2_alert2: cpu-alert-2 {
  230                                         temperature = <70000>;
  231                                         hysteresis = <5000>;
  232                                         type = "active";
  233                                 };
  234                                 cpu2_crit0: cpu-crit-0 {
  235                                         temperature = <120000>;
  236                                         hysteresis = <0>;
  237                                         type = "critical";
  238                                 };
  239                                 cpu2_alert3: cpu-alert-3 {
  240                                         temperature = <70000>;
  241                                         hysteresis = <10000>;
  242                                         type = "passive";
  243                                 };
  244                                 cpu2_alert4: cpu-alert-4 {
  245                                         temperature = <85000>;
  246                                         hysteresis = <10000>;
  247                                         type = "passive";
  248                                 };
  249                         };
  250                         cooling-maps {
  251                                 map0 {
  252                                         trip = <&cpu2_alert0>;
  253                                         cooling-device = <&fan0 0 1>;
  254                                 };
  255                                 map1 {
  256                                         trip = <&cpu2_alert1>;
  257                                         cooling-device = <&fan0 1 2>;
  258                                 };
  259                                 map2 {
  260                                         trip = <&cpu2_alert2>;
  261                                         cooling-device = <&fan0 2 3>;
  262                                 };
  263                                 map3 {
  264                                         trip = <&cpu2_alert3>;
  265                                         cooling-device = <&cpu0 0 2>,
  266                                                          <&cpu1 0 2>,
  267                                                          <&cpu2 0 2>,
  268                                                          <&cpu3 0 2>,
  269                                                          <&cpu4 0 2>,
  270                                                          <&cpu5 0 2>,
  271                                                          <&cpu6 0 2>,
  272                                                          <&cpu7 0 2>;
  273                                 };
  274                                 cpu2_cooling_map4: map4 {
  275                                         trip = <&cpu2_alert4>;
  276                                         cooling-device = <&cpu0 3 8>,
  277                                                          <&cpu1 3 8>,
  278                                                          <&cpu2 3 8>,
  279                                                          <&cpu3 3 8>,
  280                                                          <&cpu4 3 14>,
  281                                                          <&cpu5 3 14>,
  282                                                          <&cpu6 3 14>,
  283                                                          <&cpu7 3 14>;
  284                                 };
  285                         };
  286                 };
  287                 cpu3_thermal: cpu3-thermal {
  288                         thermal-sensors = <&tmu_cpu3 0>;
  289                         polling-delay-passive = <250>;
  290                         polling-delay = <0>;
  291                         trips {
  292                                 cpu3_alert0: cpu-alert-0 {
  293                                         temperature = <50000>;
  294                                         hysteresis = <5000>;
  295                                         type = "active";
  296                                 };
  297                                 cpu3_alert1: cpu-alert-1 {
  298                                         temperature = <60000>;
  299                                         hysteresis = <5000>;
  300                                         type = "active";
  301                                 };
  302                                 cpu3_alert2: cpu-alert-2 {
  303                                         temperature = <70000>;
  304                                         hysteresis = <5000>;
  305                                         type = "active";
  306                                 };
  307                                 cpu3_crit0: cpu-crit-0 {
  308                                         temperature = <120000>;
  309                                         hysteresis = <0>;
  310                                         type = "critical";
  311                                 };
  312                                 cpu3_alert3: cpu-alert-3 {
  313                                         temperature = <70000>;
  314                                         hysteresis = <10000>;
  315                                         type = "passive";
  316                                 };
  317                                 cpu3_alert4: cpu-alert-4 {
  318                                         temperature = <85000>;
  319                                         hysteresis = <10000>;
  320                                         type = "passive";
  321                                 };
  322                         };
  323                         cooling-maps {
  324                                 map0 {
  325                                         trip = <&cpu3_alert0>;
  326                                         cooling-device = <&fan0 0 1>;
  327                                 };
  328                                 map1 {
  329                                         trip = <&cpu3_alert1>;
  330                                         cooling-device = <&fan0 1 2>;
  331                                 };
  332                                 map2 {
  333                                         trip = <&cpu3_alert2>;
  334                                         cooling-device = <&fan0 2 3>;
  335                                 };
  336                                 map3 {
  337                                         trip = <&cpu3_alert3>;
  338                                         cooling-device = <&cpu0 0 2>,
  339                                                          <&cpu1 0 2>,
  340                                                          <&cpu2 0 2>,
  341                                                          <&cpu3 0 2>,
  342                                                          <&cpu4 0 2>,
  343                                                          <&cpu5 0 2>,
  344                                                          <&cpu6 0 2>,
  345                                                          <&cpu7 0 2>;
  346                                 };
  347                                 cpu3_cooling_map4: map4 {
  348                                         trip = <&cpu3_alert4>;
  349                                         cooling-device = <&cpu0 3 8>,
  350                                                          <&cpu1 3 8>,
  351                                                          <&cpu2 3 8>,
  352                                                          <&cpu3 3 8>,
  353                                                          <&cpu4 3 14>,
  354                                                          <&cpu5 3 14>,
  355                                                          <&cpu6 3 14>,
  356                                                          <&cpu7 3 14>;
  357                                 };
  358                         };
  359                 };
  360                 gpu_thermal: gpu-thermal {
  361                         thermal-sensors = <&tmu_gpu 0>;
  362                         polling-delay-passive = <250>;
  363                         polling-delay = <0>;
  364                         trips {
  365                                 gpu_alert0: gpu-alert-0 {
  366                                         temperature = <50000>;
  367                                         hysteresis = <5000>;
  368                                         type = "active";
  369                                 };
  370                                 gpu_alert1: gpu-alert-1 {
  371                                         temperature = <60000>;
  372                                         hysteresis = <5000>;
  373                                         type = "active";
  374                                 };
  375                                 gpu_alert2: gpu-alert-2 {
  376                                         temperature = <70000>;
  377                                         hysteresis = <5000>;
  378                                         type = "active";
  379                                 };
  380                                 gpu_crit0: gpu-crit-0 {
  381                                         temperature = <120000>;
  382                                         hysteresis = <0>;
  383                                         type = "critical";
  384                                 };
  385                                 gpu_alert3: gpu-alert-3 {
  386                                         temperature = <70000>;
  387                                         hysteresis = <10000>;
  388                                         type = "passive";
  389                                 };
  390                                 gpu_alert4: gpu-alert-4 {
  391                                         temperature = <85000>;
  392                                         hysteresis = <10000>;
  393                                         type = "passive";
  394                                 };
  395                         };
  396                         cooling-maps {
  397                                 map0 {
  398                                         trip = <&gpu_alert0>;
  399                                         cooling-device = <&fan0 0 1>;
  400                                 };
  401                                 map1 {
  402                                         trip = <&gpu_alert1>;
  403                                         cooling-device = <&fan0 1 2>;
  404                                 };
  405                                 map2 {
  406                                         trip = <&gpu_alert2>;
  407                                         cooling-device = <&fan0 2 3>;
  408                                 };
  409                                 map3 {
  410                                         trip = <&gpu_alert3>;
  411                                         cooling-device = <&gpu 0 2>;
  412                                 };
  413                                 map4 {
  414                                         trip = <&gpu_alert4>;
  415                                         cooling-device = <&gpu 3 6>;
  416                                 };
  417                         };
  418                 };
  419         };
  420 };
  421 
  422 &buck10_reg {
  423         /* Supplies vmmc-supply of mmc_0 */
  424         regulator-always-on;
  425         regulator-boot-on;
  426 };
  427 
  428 &hdmi {
  429         status = "okay";
  430         ddc = <&i2c_2>;
  431         hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>;
  432         pinctrl-names = "default";
  433         pinctrl-0 = <&hdmi_hpd_irq>;
  434 
  435         vdd_osc-supply = <&ldo7_reg>;
  436         vdd_pll-supply = <&ldo6_reg>;
  437         vdd-supply = <&ldo6_reg>;
  438 };
  439 
  440 &hdmicec {
  441         status = "okay";
  442         needs-hpd;
  443 };
  444 
  445 &i2c_2 {
  446         samsung,i2c-sda-delay = <100>;
  447         samsung,i2c-max-bus-freq = <66000>;
  448         /* used by HDMI DDC */
  449         status = "okay";
  450 };
  451 
  452 &ldo26_reg {
  453         regulator-min-microvolt = <3000000>;
  454         regulator-max-microvolt = <3000000>;
  455         regulator-always-on;
  456 };
  457 
  458 &mixer {
  459         status = "okay";
  460 };
  461 
  462 &mmc_0 {
  463         status = "okay";
  464         mmc-pwrseq = <&emmc_pwrseq>;
  465         card-detect-delay = <200>;
  466         samsung,dw-mshc-ciu-div = <3>;
  467         samsung,dw-mshc-sdr-timing = <0 4>;
  468         samsung,dw-mshc-ddr-timing = <0 2>;
  469         samsung,dw-mshc-hs400-timing = <0 2>;
  470         samsung,read-strobe-delay = <90>;
  471         pinctrl-names = "default";
  472         pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8 &sd0_cd &sd0_rclk>;
  473         bus-width = <8>;
  474         cap-mmc-highspeed;
  475         mmc-hs200-1_8v;
  476         mmc-hs400-1_8v;
  477         max-frequency = <200000000>;
  478         vmmc-supply = <&ldo18_reg>;
  479         vqmmc-supply = <&ldo3_reg>;
  480 };
  481 
  482 &pinctrl_0 {
  483         power_key: power-key-pins {
  484                 samsung,pins = "gpx0-3";
  485                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
  486                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  487                 samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
  488         };
  489 
  490         hdmi_hpd_irq: hdmi-hpd-irq-pins {
  491                 samsung,pins = "gpx3-7";
  492                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
  493                 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
  494                 samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
  495         };
  496 };
  497 
  498 &pinctrl_1 {
  499         emmc_nrst_pin: emmc-nrst-pins {
  500                 samsung,pins = "gpd1-0";
  501                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
  502                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  503                 samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
  504         };
  505 };

Cache object: 2cbd361c01335b52f18e98144a0883ae


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