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


Quelle  mba8mx.dtsi   Sprache: unbekannt

 
// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
/*
 * Copyright 2020-2021 TQ-Systems GmbH
 */

#include <dt-bindings/net/ti-dp83867.h>

/* TQ-Systems GmbH MBa8Mx baseboard */

/ {
 backlight_lvds: backlight {
  compatible = "pwm-backlight";
  pwms = <&pwm3 0 5000000 0>;
  brightness-levels = <0 4 8 16 32 64 128 255>;
  default-brightness-level = <7>;
  power-supply = <®_12v>;
  enable-gpios = <&expander2 2 GPIO_ACTIVE_HIGH>;
  status = "disabled";
 };

 beeper {
  compatible = "pwm-beeper";
  pwms = <&pwm4 0 250000 0>;
  beeper-hz = <4000>;
  amp-supply = <®_vcc_3v3>;
 };

 chosen {
  stdout-path = &uart3;
 };

 clk_xtal25: clk-xtal25 {
  compatible = "fixed-clock";
  #clock-cells = <0>;
  clock-frequency = <25000000>;
 };

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

  switch-1 {
   label = "switch1";
   linux,code = <BTN_0>;
   gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
   wakeup-source;
  };

  btn2: switch-2 {
   label = "switch2";
   linux,code = <BTN_1>;
   gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
   wakeup-source;
  };

  switch-3 {
   label = "switch3";
   linux,code = <BTN_2>;
   gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
   wakeup-source;
  };
 };

 gpio_leds: gpio-leds {
  compatible = "gpio-leds";
  pinctrl-names = "default";
  pinctrl-0 = <&pinctrl_gpioled>;

  led1 {
   label = "led1";
   gpios = <&gpio1 0 GPIO_ACTIVE_HIGH>;
   linux,default-trigger = "default-on";
  };

  led2: led2 {
   label = "led2";
   gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
   linux,default-trigger = "heartbeat";
  };
 };

 gpio_delays: gpio-delays {
  compatible = "gpio-delay";
  #gpio-cells = <3>;
  gpio-controller;
  gpios = <&expander0 6 GPIO_ACTIVE_HIGH>;
  gpio-line-names = "LVDS_BRIDGE_EN_1V8";
 };

 panel: panel-lvds {
  /*
   * Display is not fixed, so compatible has to be added from
   * DT overlay
   */
  backlight = <&backlight_lvds>;
  power-supply = <®_vcc_3v3>;
  status = "disabled";

  port {
   panel_in_lvds: endpoint {
    remote-endpoint = <&lvds_bridge_out>;
   };
  };
 };

 reg_12v: regulator-12v {
  compatible = "regulator-fixed";
  regulator-name = "MBA8MX_12V";
  regulator-min-microvolt = <12000000>;
  regulator-max-microvolt = <12000000>;
  regulator-always-on;
 };

 reg_hub_vbus: regulator-hub-vbus {
  compatible = "regulator-fixed";
  regulator-name = "MBA8MX_HUB_VBUS";
  regulator-min-microvolt = <5000000>;
  regulator-max-microvolt = <5000000>;
 };

 reg_sn65dsi83_1v8: regulator-sn65dsi83-1v8 {
  compatible = "regulator-fixed";
  regulator-name = "SN65DSI83_1V8";
  regulator-min-microvolt = <1800000>;
  regulator-max-microvolt = <1800000>;
  gpio = <&expander0 5 GPIO_ACTIVE_HIGH>;
  enable-active-high;
 };

 reg_vcc_3v3: regulator-3v3 {
  compatible = "regulator-fixed";
  regulator-name = "MBA8MX_3V3";
  regulator-min-microvolt = <3300000>;
  regulator-max-microvolt = <3300000>;
 };

 sound: sound {
  compatible = "fsl,imx-audio-tlv320aic32x4";
  model = "tqm-tlv320aic32";
  ssi-controller = <&sai3>;
  audio-codec = <&tlv320aic3x04>;
 };
};

&ecspi1 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_ecspi1>;
 cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
 status = "okay";
};

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

&fec1 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_fec1>;
 phy-mode = "rgmii-id";
 phy-handle = <ðphy0>;
 phy-supply = <®_vcc_3v3>;
 fsl,magic-packet;
 mac-address = [ 00 00 00 00 00 00 ];
 status = "okay";

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

  ethphy0: ethernet-phy@e {
   compatible = "ethernet-phy-ieee802.3-c22";
   reg = <0xe>;
   ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>;
   ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>;
   ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
   ti,dp83867-rxctrl-strap-quirk;
   ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
   enet-phy-lane-no-swap;
   reset-gpios = <&expander2 7 GPIO_ACTIVE_LOW>;
   reset-assert-us = <500000>;
   reset-deassert-us = <500>;
   interrupt-parent = <&expander2>;
   interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
  };
 };
};

&i2c1 {
 expander0: gpio@23 {
  compatible = "nxp,pca9555";
  reg = <0x23>;
  gpio-controller;
  #gpio-cells = <2>;
  vcc-supply = <®_vcc_3v3>;
  interrupt-parent = <&gpio1>;
  interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
  interrupt-controller;
  #interrupt-cells = <2>;
  gpio-line-names = "", "", "", "",
      "", "", "LVDS_BRIDGE_EN", "",
      "", "", "", "",
      "", "", "", "";

  sd-mux-oe-hog {
   gpio-hog;
   gpios = <8 0>;
   output-low;
   line-name = "SD_MUX_EN#";
  };

  boot-cfg-oe-hog {
   gpio-hog;
   gpios = <12 0>;
   output-high;
   line-name = "BOOT_CFG_OE#";
  };

  rst_usb_hub_hog: rst-usb-hub-hog {
   gpio-hog;
   gpios = <13 0>;
   output-high;
   line-name = "RST_USB_HUB#";
  };
 };

 expander1: gpio@24 {
  compatible = "nxp,pca9555";
  reg = <0x24>;
  gpio-controller;
  #gpio-cells = <2>;
  vcc-supply = <®_vcc_3v3>;
 };
};

&i2c2 {
 pinctrl-names = "default", "gpio";
 pinctrl-0 = <&pinctrl_i2c2>;
 pinctrl-1 = <&pinctrl_i2c2_gpio>;
 scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
 sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
 status = "okay";

 tlv320aic3x04: audio-codec@18 {
  compatible = "ti,tlv320aic32x4";
  reg = <0x18>;
  reset-gpios = <&expander2 0 GPIO_ACTIVE_LOW>;
  iov-supply = <®_vcc_3v3>;
  ldoin-supply = <®_vcc_3v3>;
 };

 sensor1: temperator-sensor@1f {
  compatible = "nxp,se97b", "jedec,jc-42.4-temp";
  reg = <0x1f>;
 };

 /*
  * TUSB8041 is at 0x41, but not connected by default
  * Note: TUSB8041 only supports 100 kHz!
  */

 eeprom3: eeprom@57 {
  compatible = "nxp,se97b", "atmel,24c02";
  reg = <0x57>;
  pagesize = <16>;
  vcc-supply = <®_vcc_3v3>;
 };

 pcieclk: clk@68 {
  compatible = "renesas,9fgv0441";
  reg = <0x68>;
  clocks = <&clk_xtal25>;
  #clock-cells = <1>;
 };
};

&i2c3 {
 pinctrl-names = "default", "gpio";
 pinctrl-0 = <&pinctrl_i2c3>;
 pinctrl-1 = <&pinctrl_i2c3_gpio>;
 scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
 sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
 status = "okay";

 dsi_lvds_bridge: bridge@2d {
  compatible = "ti,sn65dsi84";
  reg = <0x2d>;
  enable-gpios = <&gpio_delays 0 130000 0>;
  vcc-supply = <®_sn65dsi83_1v8>;
  status = "disabled";

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

   port@0 {
    reg = <0>;

    lvds_bridge_in: endpoint {
     data-lanes = <1 2 3 4>;
     remote-endpoint = <&mipi_dsi_out>;
    };
   };

   port@2 {
    reg = <2>;

    lvds_bridge_out: endpoint {
     remote-endpoint = <&panel_in_lvds>;
    };
   };
  };
 };
};

&mipi_dsi_out {
 data-lanes = <1 2 3 4>;
 remote-endpoint = <&lvds_bridge_in>;
};

&pwm3 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_pwm3>;
 status = "okay";
};

&pwm4 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_pwm4>;
 status = "okay";
};

&sai3 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_sai3>;
 #sound-dai-cells = <0>;
 assigned-clock-rates = <49152000>;
 status = "okay";
};

&snvs_pwrkey {
 status = "okay";
};

&uart1 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_uart1>;
 status = "okay";
};

&uart2 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_uart2>;
 status = "okay";
};

/* console */
&uart3 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_uart3>;
 status = "okay";
};

&usdhc2 {
 pinctrl-names = "default", "state_100mhz", "state_200mhz";
 pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
 pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
 pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
 bus-width = <4>;
 cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
 disable-wp;
 no-mmc;
 no-sdio;
 vmmc-supply = <®_usdhc2_vmmc>;
 status = "okay";
};

[ Dauer der Verarbeitung: 0.3 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