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/imx6dl-victgo.dts

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
    2 /*
    3  * Copyright (c) 2016 Protonic Holland
    4  * Copyright (c) 2020 Oleksij Rempel <kernel@pengutronix.de>, Pengutronix
    5  */
    6 
    7 /dts-v1/;
    8 #include "imx6dl.dtsi"
    9 #include "imx6qdl-vicut1.dtsi"
   10 
   11 / {
   12         model = "Kverneland TGO";
   13         compatible = "kvg,victgo", "fsl,imx6dl";
   14 
   15         gpio-keys {
   16                 compatible = "gpio-keys";
   17                 pinctrl-names = "default";
   18                 pinctrl-0 = <&pinctrl_gpiokeys>;
   19                 autorepeat;
   20 
   21                 power {
   22                         label = "Power Button";
   23                         gpios = <&gpio2 23 GPIO_ACTIVE_LOW>;
   24                         linux,code = <KEY_POWER>;
   25                         wakeup-source;
   26                 };
   27 
   28                 enter {
   29                         label = "Rotary Key";
   30                         gpios = <&gpio2 05 GPIO_ACTIVE_LOW>;
   31                         linux,code = <KEY_ENTER>;
   32                         wakeup-source;
   33                 };
   34         };
   35 
   36         iio-hwmon {
   37                 compatible = "iio-hwmon";
   38                 io-channels = <&vdiv_vaccu>, <&vdiv_hitch_pos>;
   39         };
   40 
   41         panel {
   42                 compatible = "lg,lb070wv8";
   43                 backlight = <&backlight_lcd>;
   44                 power-supply = <&reg_3v3>;
   45 
   46                 port {
   47                         panel_in: endpoint {
   48                                 remote-endpoint = <&lvds0_out>;
   49                         };
   50                 };
   51         };
   52 
   53         clk50m_phy: phy-clock {
   54                 compatible = "fixed-clock";
   55                 #clock-cells = <0>;
   56                 clock-frequency = <50000000>;
   57         };
   58 
   59         rotary-encoder {
   60                 compatible = "rotary-encoder";
   61                 pinctrl-0 = <&pinctrl_rotary_ch>;
   62                 gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>,
   63                         <&gpio2 4 GPIO_ACTIVE_HIGH>;
   64                 linux,axis = <REL_WHEEL>;
   65                 rotary-encoder,steps-per-period = <4>;
   66                 rotary-encoder,relative-axis;
   67                 rotary-encoder,rollover;
   68                 wakeup-source;
   69         };
   70 
   71         thermal-zones {
   72                 chassis-thermal {
   73                         polling-delay = <20000>;
   74                         polling-delay-passive = <0>;
   75                         thermal-sensors = <&tsens0>;
   76                 };
   77 
   78                 touch-thermal0 {
   79                         polling-delay = <20000>;
   80                         polling-delay-passive = <0>;
   81                         thermal-sensors = <&touch_temp0>;
   82                 };
   83 
   84                 touch-thermal1 {
   85                         polling-delay = <20000>;
   86                         polling-delay-passive = <0>;
   87                         thermal-sensors = <&touch_temp1>;
   88                 };
   89         };
   90 
   91         touchscreen {
   92                 compatible = "resistive-adc-touch";
   93                 io-channels = <&adc_ts 1>, <&adc_ts 3>, <&adc_ts 4>,
   94                               <&adc_ts 5>;
   95                 io-channel-names = "y", "z1", "z2", "x";
   96                 touchscreen-min-pressure = <64687>;
   97                 touchscreen-inverted-y;
   98                 touchscreen-x-plate-ohms = <300>;
   99                 touchscreen-y-plate-ohms = <800>;
  100         };
  101 
  102         touch_temp0: touch-temperature-sensor0 {
  103                 compatible = "generic-adc-thermal";
  104                 #thermal-sensor-cells = <0>;
  105                 io-channels = <&adc_ts 0>;
  106                 io-channel-names = "sensor-channel";
  107                 temperature-lookup-table = <    (-40000) 736
  108                                                 85000 474>;
  109         };
  110 
  111         touch_temp1: touch-temperature-sensor1 {
  112                 compatible = "generic-adc-thermal";
  113                 #thermal-sensor-cells = <0>;
  114                 io-channels = <&adc_ts 7>;
  115                 io-channel-names = "sensor-channel";
  116                 temperature-lookup-table = <    (-40000) 826
  117                                                 85000 609>;
  118         };
  119 
  120         vdiv_vaccu: voltage-divider-vaccu {
  121                 compatible = "voltage-divider";
  122                 io-channels = <&adc_ts 2>;
  123                 output-ohms = <2500>;
  124                 full-ohms = <64000>;
  125                 #io-channel-cells = <0>;
  126         };
  127 
  128         vdiv_hitch_pos: voltage-divider-hitch-pos {
  129                 compatible = "voltage-divider";
  130                 io-channels = <&adc_ts 6>;
  131                 output-ohms = <3300>;
  132                 full-ohms = <13300>;
  133                 #io-channel-cells = <0>;
  134         };
  135 };
  136 
  137 &ecspi2 {
  138         cs-gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
  139         pinctrl-names = "default";
  140         pinctrl-0 = <&pinctrl_ecspi2>;
  141         status = "okay";
  142 
  143         adc_ts: adc@0 {
  144                 compatible = "ti,tsc2046e-adc";
  145                 reg = <0>;
  146                 pinctrl-0 = <&pinctrl_touchscreen>;
  147                 pinctrl-names = "default";
  148                 spi-max-frequency = <1000000>;
  149                 interrupts-extended = <&gpio5 8 IRQ_TYPE_LEVEL_LOW>;
  150                 #io-channel-cells = <1>;
  151 
  152                 #address-cells = <1>;
  153                 #size-cells = <0>;
  154 
  155                 channel@1 {
  156                         reg = <1>;
  157                         settling-time-us = <700>;
  158                         oversampling-ratio = <5>;
  159                 };
  160 
  161                 channel@3 {
  162                         reg = <3>;
  163                         settling-time-us = <700>;
  164                         oversampling-ratio = <5>;
  165                 };
  166 
  167                 channel@4 {
  168                         reg = <4>;
  169                         settling-time-us = <700>;
  170                         oversampling-ratio = <5>;
  171                 };
  172 
  173                 channel@5 {
  174                         reg = <5>;
  175                         settling-time-us = <700>;
  176                         oversampling-ratio = <5>;
  177                 };
  178         };
  179 };
  180 
  181 &fec {
  182         pinctrl-names = "default";
  183         pinctrl-0 = <&pinctrl_enet>;
  184         phy-mode = "rmii";
  185         clocks = <&clks IMX6QDL_CLK_ENET>,
  186                  <&clks IMX6QDL_CLK_ENET>,
  187                  <&clk50m_phy>;
  188         clock-names = "ipg", "ahb", "ptp";
  189         phy-handle = <&rmii_phy>;
  190         status = "okay";
  191 
  192         mdio {
  193                 #address-cells = <1>;
  194                 #size-cells = <0>;
  195 
  196                 /* Microchip KSZ8081RNA PHY */
  197                 rmii_phy: ethernet-phy@0 {
  198                         reg = <0>;
  199                         interrupts-extended = <&gpio4 30 IRQ_TYPE_LEVEL_LOW>;
  200                         reset-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
  201                         reset-assert-us = <10000>;
  202                         reset-deassert-us = <300>;
  203                 };
  204         };
  205 };
  206 
  207 &gpio1 {
  208         gpio-line-names =
  209                 "CAN1_TERM", "SD1_CD", "ITU656_RESET", "CAM1_MIRROR",
  210                         "CAM2_MIRROR", "", "", "SMBALERT",
  211                 "DEBUG_0", "DEBUG_1", "", "", "", "", "", "",
  212                 "SD1_DATA0", "SD1_DATA1", "SD1_CMD", "SD1_DATA2", "SD1_CLK",
  213                         "SD1_DATA3", "ETH_MDIO", "",
  214                 "", "", "", "", "", "", "", "ETH_MDC";
  215 };
  216 
  217 &gpio4 {
  218         gpio-line-names =
  219                 "", "", "", "", "", "", "UART4_TXD", "UART4_RXD",
  220                 "UART5_TXD", "UART5_RXD", "CAN1_TX", "CAN1_RX", "CAN1_SR",
  221                         "CAN2_SR", "CAN2_TX", "CAN2_RX",
  222                 "", "", "DIP1_FB", "", "VCAM_EN", "ON1_CTRL", "ON2_CTRL",
  223                         "HITCH_IN_OUT",
  224                 "LIGHT_ON", "", "ETH_RESET", "CONTACT_IN", "BL_EN",
  225                         "BL_PWM", "ETH_INT", "ISB_LED";
  226 };
  227 
  228 &gpio5 {
  229         gpio-line-names =
  230                 "", "", "", "", "", "", "", "",
  231                 "TSC_PENIRQ", "TSC_BUSY", "ECSPI2_MOSI", "ECSPI2_MISO",
  232                         "ECSPI2_SS0", "ECSPI2_SCLK", "", "",
  233                 "", "", "ITU656_CLK", "I2S_MCLK", "ITU656_PDN", "AUDIO_RESET",
  234                         "I2S_BITCLK", "I2S_DOUT",
  235                 "I2S_LRCLK", "I2S_DIN", "I2C1_SDA", "I2C1_SCL", "YACO_AUX_RX",
  236                         "YACO_AUX_TX", "ITU656_D0", "ITU656_D1";
  237 };
  238 
  239 &gpio6 {
  240         gpio-line-names =
  241                 "ITU656_D2", "ITU656_D3", "ITU656_D4", "ITU656_D5",
  242                         "ITU656_D6", "ITU656_D7", "", "",
  243                 "", "", "", "", "", "", "", "",
  244                 "", "", "", "", "", "", "", "",
  245                 "", "", "", "", "", "", "", "";
  246 };
  247 
  248 &i2c1 {
  249         keypad@70 {
  250                 compatible = "holtek,ht16k33";
  251                 pinctrl-names = "default";
  252                 pinctrl-0 = <&pinctrl_keypad>;
  253                 reg = <0x70>;
  254                 refresh-rate-hz = <20>;
  255                 debounce-delay-ms = <50>;
  256                 interrupts-extended = <&gpio4 5 (IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_EDGE_RISING)>;
  257                 keypad,num-rows = <12>;
  258                 keypad,num-columns = <3>;
  259                 linux,keymap = <
  260                         MATRIX_KEY(2, 0, KEY_F6)
  261                         MATRIX_KEY(3, 0, KEY_F8)
  262                         MATRIX_KEY(4, 0, KEY_F10)
  263                         MATRIX_KEY(5, 0, KEY_F4)
  264                         MATRIX_KEY(6, 0, KEY_F2)
  265                         MATRIX_KEY(2, 1, KEY_F5)
  266                         MATRIX_KEY(3, 1, KEY_F7)
  267                         MATRIX_KEY(4, 1, KEY_F9)
  268                         MATRIX_KEY(5, 1, KEY_F3)
  269                         MATRIX_KEY(6, 1, KEY_F1)
  270                       >;
  271         };
  272 };
  273 
  274 &iomuxc {
  275         pinctrl_ecspi2: ecspi2grp {
  276                 fsl,pins = <
  277                         MX6QDL_PAD_DISP0_DAT16__ECSPI2_MOSI             0x100b1
  278                         MX6QDL_PAD_DISP0_DAT17__ECSPI2_MISO             0x100b1
  279                         MX6QDL_PAD_DISP0_DAT18__GPIO5_IO12              0x100b1
  280                         MX6QDL_PAD_DISP0_DAT19__ECSPI2_SCLK             0x100b1
  281                 >;
  282         };
  283 
  284         pinctrl_enet: enetgrp {
  285                 fsl,pins = <
  286                         /* MX6QDL_ENET_PINGRP4 */
  287                         MX6QDL_PAD_ENET_MDC__ENET_MDC                   0x1b0b0
  288                         MX6QDL_PAD_ENET_MDIO__ENET_MDIO                 0x1b0b0
  289                         MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0             0x1b0b0
  290                         MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1             0x1b0b0
  291                         MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER               0x1b0b0
  292                         MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN               0x1b0b0
  293                         MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0             0x1b0b0
  294                         MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1             0x1b0b0
  295                         MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN              0x1b0b0
  296                         MX6QDL_PAD_GPIO_16__ENET_REF_CLK                0x1b0b0
  297                         /* Phy reset */
  298                         MX6QDL_PAD_DISP0_DAT5__GPIO4_IO26               0x1b0b0
  299                         /* nINTRP */
  300                         MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30               0x1b0b0
  301                 >;
  302         };
  303 
  304         pinctrl_gpiokeys: gpiokeygrp {
  305                 fsl,pins = <
  306                         /* ROTARY_BTN */
  307                         MX6QDL_PAD_NANDF_D5__GPIO2_IO05                 0x1b0b0
  308                         /* nON_SWITCH */
  309                         MX6QDL_PAD_EIM_CS0__GPIO2_IO23                  0x1b0b0
  310                 >;
  311         };
  312 
  313         pinctrl_keypad: keypadgrp {
  314                 fsl,pins = <
  315                         MX6QDL_PAD_GPIO_19__GPIO4_IO05                  0x1b0b0
  316                 >;
  317         };
  318 
  319         pinctrl_rotary_ch: rotarychgrp {
  320                 fsl,pins = <
  321                         MX6QDL_PAD_NANDF_D3__GPIO2_IO03                 0x1b0b0
  322                         MX6QDL_PAD_NANDF_D4__GPIO2_IO04                 0x1b0b0
  323                 >;
  324         };
  325 
  326         pinctrl_touchscreen: touchscreengrp {
  327                 fsl,pins = <
  328                         MX6QDL_PAD_DISP0_DAT14__GPIO5_IO08              0x1b0b0
  329                         MX6QDL_PAD_DISP0_DAT15__GPIO5_IO09              0x1b0b0
  330                 >;
  331         };
  332 };

Cache object: 4184c7c42242f798fa0d80f501965fec


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