Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  imx6dl-victgo.dts   Sprache: unbekannt

 
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/*
 * Copyright (c) 2016 Protonic Holland
 * Copyright (c) 2020 Oleksij Rempel <kernel@pengutronix.de>, Pengutronix
 */

/dts-v1/;
#include "imx6dl.dtsi"
#include "imx6qdl-vicut1.dtsi"

/ {
 model = "Kverneland TGO";
 compatible = "kvg,victgo", "fsl,imx6dl";

 gpio-keys {
  compatible = "gpio-keys";
  pinctrl-names = "default";
  pinctrl-0 = <&pinctrl_gpiokeys>;
  autorepeat;

  key-power {
   label = "Power Button";
   gpios = <&gpio2 23 GPIO_ACTIVE_LOW>;
   linux,code = <KEY_POWER>;
   wakeup-source;
  };

  key-enter {
   label = "Rotary Key";
   gpios = <&gpio2 05 GPIO_ACTIVE_LOW>;
   linux,code = <KEY_ENTER>;
   wakeup-source;
  };
 };

 iio-hwmon {
  compatible = "iio-hwmon";
  io-channels = <&vdiv_vaccu>, <&vdiv_hitch_pos>;
 };

 panel {
  compatible = "lg,lb070wv8";
  backlight = <&backlight_lcd>;
  power-supply = <®_3v3>;

  port {
   panel_in: endpoint {
    remote-endpoint = <&lvds0_out>;
   };
  };
 };

 clk50m_phy: phy-clock {
  compatible = "fixed-clock";
  #clock-cells = <0>;
  clock-frequency = <50000000>;
  clock-output-names = "enet_ref_pad";
 };

 rotary-encoder {
  compatible = "rotary-encoder";
  pinctrl-0 = <&pinctrl_rotary_ch>;
  gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>,
   <&gpio2 4 GPIO_ACTIVE_HIGH>;
  linux,axis = <REL_WHEEL>;
  rotary-encoder,steps-per-period = <4>;
  rotary-encoder,relative-axis;
  rotary-encoder,rollover;
  wakeup-source;
 };

 thermal-zones {
  chassis-thermal {
   polling-delay = <20000>;
   polling-delay-passive = <0>;
   thermal-sensors = <&tsens0>;

   trips {
    alert {
     temperature = <105000>; /* millicelsius */
     hysteresis = <2000>; /* millicelsius */
     type = "passive";
    };
   };
  };

  touch-thermal0 {
   polling-delay = <20000>;
   polling-delay-passive = <0>;
   thermal-sensors = <&touch_temp0>;

   trips {
    alert {
     temperature = <105000>; /* millicelsius */
     hysteresis = <2000>; /* millicelsius */
     type = "passive";
    };
   };
  };

  touch-thermal1 {
   polling-delay = <20000>;
   polling-delay-passive = <0>;
   thermal-sensors = <&touch_temp1>;

   trips {
    alert {
     temperature = <105000>; /* millicelsius */
     hysteresis = <2000>; /* millicelsius */
     type = "passive";
    };
   };
  };
 };

 touchscreen {
  compatible = "resistive-adc-touch";
  io-channels = <&adc_ts 1>, <&adc_ts 3>, <&adc_ts 4>,
                              <&adc_ts 5>;
  io-channel-names = "y", "z1", "z2", "x";
  touchscreen-min-pressure = <64687>;
  touchscreen-inverted-y;
  touchscreen-x-plate-ohms = <300>;
  touchscreen-y-plate-ohms = <800>;
 };

 touch_temp0: touch-temperature-sensor0 {
  compatible = "generic-adc-thermal";
  #thermal-sensor-cells = <0>;
  io-channels = <&adc_ts 0>;
  io-channel-names = "sensor-channel";
  temperature-lookup-table = <    (-40000) 736
      85000 474>;
 };

 touch_temp1: touch-temperature-sensor1 {
  compatible = "generic-adc-thermal";
  #thermal-sensor-cells = <0>;
  io-channels = <&adc_ts 7>;
  io-channel-names = "sensor-channel";
  temperature-lookup-table = <    (-40000) 826
      85000 609>;
 };

 vdiv_vaccu: voltage-divider-vaccu {
  compatible = "voltage-divider";
  io-channels = <&adc_ts 2>;
  output-ohms = <2500>;
  full-ohms = <64000>;
  #io-channel-cells = <0>;
 };

 vdiv_hitch_pos: voltage-divider-hitch-pos {
  compatible = "voltage-divider";
  io-channels = <&adc_ts 6>;
  output-ohms = <3300>;
  full-ohms = <13300>;
  #io-channel-cells = <0>;
 };
};

&clks {
 clocks = <&clk50m_phy>;
 clock-names = "enet_ref_pad";
 assigned-clocks = <&clks IMX6QDL_CLK_ENET_REF_SEL>;
 assigned-clock-parents = <&clk50m_phy>;
};

&ecspi2 {
 cs-gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_ecspi2>;
 status = "okay";

 adc_ts: adc@0 {
  compatible = "ti,tsc2046e-adc";
  reg = <0>;
  pinctrl-0 = <&pinctrl_touchscreen>;
  pinctrl-names = "default";
  spi-max-frequency = <1000000>;
  interrupts-extended = <&gpio5 8 IRQ_TYPE_LEVEL_LOW>;
  #io-channel-cells = <1>;

  #address-cells = <1>;
  #size-cells = <0>;

  channel@1 {
   reg = <1>;
   settling-time-us = <700>;
   oversampling-ratio = <5>;
  };

  channel@3 {
   reg = <3>;
   settling-time-us = <700>;
   oversampling-ratio = <5>;
  };

  channel@4 {
   reg = <4>;
   settling-time-us = <700>;
   oversampling-ratio = <5>;
  };

  channel@5 {
   reg = <5>;
   settling-time-us = <700>;
   oversampling-ratio = <5>;
  };
 };
};

&fec {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_enet>;
 phy-mode = "rmii";
 phy-handle = <&rmii_phy>;
 status = "okay";

 mdio {
  #address-cells = <1>;
  #size-cells = <0>;

  /* Microchip KSZ8081RNA PHY */
  rmii_phy: ethernet-phy@0 {
   reg = <0>;
   interrupts-extended = <&gpio4 30 IRQ_TYPE_LEVEL_LOW>;
   reset-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
   reset-assert-us = <10000>;
   reset-deassert-us = <300>;
  };
 };
};

&gpio1 {
 gpio-line-names =
  "CAN1_TERM", "SD1_CD", "ITU656_RESET", "CAM1_MIRROR",
   "CAM2_MIRROR", "", "", "SMBALERT",
  "DEBUG_0", "DEBUG_1", "", "", "", "", "", "",
  "SD1_DATA0", "SD1_DATA1", "SD1_CMD", "SD1_DATA2", "SD1_CLK",
   "SD1_DATA3", "ETH_MDIO", "",
  "", "", "", "", "", "", "", "ETH_MDC";
};

&gpio4 {
 gpio-line-names =
  "", "", "", "", "", "", "UART4_TXD", "UART4_RXD",
  "UART5_TXD", "UART5_RXD", "CAN1_TX", "CAN1_RX", "CAN1_SR",
   "CAN2_SR", "CAN2_TX", "CAN2_RX",
  "", "", "DIP1_FB", "", "VCAM_EN", "ON1_CTRL", "ON2_CTRL",
   "HITCH_IN_OUT",
  "LIGHT_ON", "", "ETH_RESET", "CONTACT_IN", "BL_EN",
   "BL_PWM", "ETH_INT", "ISB_LED";
};

&gpio5 {
 gpio-line-names =
  "", "", "", "", "", "", "", "",
  "TSC_PENIRQ", "TSC_BUSY", "ECSPI2_MOSI", "ECSPI2_MISO",
   "ECSPI2_SS0", "ECSPI2_SCLK", "", "",
  "", "", "ITU656_CLK", "I2S_MCLK", "ITU656_PDN", "AUDIO_RESET",
   "I2S_BITCLK", "I2S_DOUT",
  "I2S_LRCLK", "I2S_DIN", "I2C1_SDA", "I2C1_SCL", "YACO_AUX_RX",
   "YACO_AUX_TX", "ITU656_D0", "ITU656_D1";
};

&gpio6 {
 gpio-line-names =
  "ITU656_D2", "ITU656_D3", "ITU656_D4", "ITU656_D5",
   "ITU656_D6", "ITU656_D7", "", "",
  "", "", "", "", "", "", "", "",
  "", "", "", "", "", "", "", "",
  "", "", "", "", "", "", "", "";
};

&i2c1 {
 keypad@70 {
  compatible = "holtek,ht16k33";
  pinctrl-names = "default";
  pinctrl-0 = <&pinctrl_keypad>;
  reg = <0x70>;
  refresh-rate-hz = <20>;
  debounce-delay-ms = <50>;
  interrupts-extended = <&gpio4 5 (IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_EDGE_RISING)>;
  keypad,num-rows = <12>;
  keypad,num-columns = <3>;
  linux,keymap = <
   MATRIX_KEY(2, 0, KEY_F6)
   MATRIX_KEY(3, 0, KEY_F8)
   MATRIX_KEY(4, 0, KEY_F10)
   MATRIX_KEY(5, 0, KEY_F4)
   MATRIX_KEY(6, 0, KEY_F2)
   MATRIX_KEY(2, 1, KEY_F5)
   MATRIX_KEY(3, 1, KEY_F7)
   MATRIX_KEY(4, 1, KEY_F9)
   MATRIX_KEY(5, 1, KEY_F3)
   MATRIX_KEY(6, 1, KEY_F1)
        >;
 };
};

&iomuxc {
 pinctrl_ecspi2: ecspi2grp {
  fsl,pins = <
   MX6QDL_PAD_DISP0_DAT16__ECSPI2_MOSI  0x100b1
   MX6QDL_PAD_DISP0_DAT17__ECSPI2_MISO  0x100b1
   MX6QDL_PAD_DISP0_DAT18__GPIO5_IO12  0x100b1
   MX6QDL_PAD_DISP0_DAT19__ECSPI2_SCLK  0x100b1
  >;
 };

 pinctrl_enet: enetgrp {
  fsl,pins = <
   /* MX6QDL_ENET_PINGRP4 */
   MX6QDL_PAD_ENET_MDC__ENET_MDC   0x1b0b0
   MX6QDL_PAD_ENET_MDIO__ENET_MDIO   0x1b0b0
   MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0  0x1b0b0
   MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1  0x1b0b0
   MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER  0x1b0b0
   MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN  0x1b0b0
   MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0  0x1b0b0
   MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1  0x1b0b0
   MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN  0x1b0b0
   MX6QDL_PAD_GPIO_16__ENET_REF_CLK  0x1b0b0
   /* Phy reset */
   MX6QDL_PAD_DISP0_DAT5__GPIO4_IO26  0x1b0b0
   /* nINTRP */
   MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30  0x1b0b0
  >;
 };

 pinctrl_gpiokeys: gpiokeygrp {
  fsl,pins = <
   /* ROTARY_BTN */
   MX6QDL_PAD_NANDF_D5__GPIO2_IO05   0x1b0b0
   /* nON_SWITCH */
   MX6QDL_PAD_EIM_CS0__GPIO2_IO23   0x1b0b0
  >;
 };

 pinctrl_keypad: keypadgrp {
  fsl,pins = <
   MX6QDL_PAD_GPIO_19__GPIO4_IO05   0x1b0b0
  >;
 };

 pinctrl_rotary_ch: rotarychgrp {
  fsl,pins = <
   MX6QDL_PAD_NANDF_D3__GPIO2_IO03   0x1b0b0
   MX6QDL_PAD_NANDF_D4__GPIO2_IO04   0x1b0b0
  >;
 };

 pinctrl_touchscreen: touchscreengrp {
  fsl,pins = <
   MX6QDL_PAD_DISP0_DAT14__GPIO5_IO08  0x1b0b0
   MX6QDL_PAD_DISP0_DAT15__GPIO5_IO09  0x1b0b0
  >;
 };
};

[ Dauer der Verarbeitung: 0.2 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge