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


Quelle  meson-g12b-odroid-n2.dtsi   Sprache: unbekannt

 
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (c) 2019 BayLibre, SAS
 * Author: Neil Armstrong <narmstrong@baylibre.com>
 */

#include "meson-g12b-odroid.dtsi"

/ {
 aliases {
  rtc0 = &rtc;
 };

 dio2133: audio-amplifier-0 {
  compatible = "simple-audio-amplifier";
  enable-gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
  VCC-supply = <&vcc_5v>;
  sound-name-prefix = "U19";
  status = "okay";
 };

 hub_5v: regulator-hub-5v {
  compatible = "regulator-fixed";
  regulator-name = "HUB_5V";
  regulator-min-microvolt = <5000000>;
  regulator-max-microvolt = <5000000>;
  vin-supply = <&vcc_5v>;

  /* Connected to the Hub CHIPENABLE, LOW sets low power state */
  gpio = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
  enable-active-high;
 };

 /* USB hub supports both USB 2.0 and USB 3.0 root hub */
 usb-hub {
  dr_mode = "host";
  #address-cells = <1>;
  #size-cells = <0>;

  /* 2.0 hub on port 1 */
  hub_2_0: hub@1 {
   compatible = "usb5e3,610";
   reg = <1>;
   peer-hub = <&hub_3_0>;
   vdd-supply = <&usb_pwr_en>;
  };

  /* 3.0 hub on port 4 */
  hub_3_0: hub@2 {
   compatible = "usb5e3,620";
   reg = <2>;
   peer-hub = <&hub_2_0>;
   reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
   vdd-supply = <&vcc_5v>;
  };
 };

 sound {
  compatible = "amlogic,axg-sound-card";
  model = "ODROID-N2";
  audio-widgets = "Line", "Lineout";
  audio-aux-devs = <&tdmout_b>, <&tdmout_c>, <&tdmin_a>,
     <&tdmin_b>, <&tdmin_c>, <&tdmin_lb>,
     <&dio2133>;
  audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
    "TDMOUT_B IN 1", "FRDDR_B OUT 1",
    "TDMOUT_B IN 2", "FRDDR_C OUT 1",
    "TDM_B Playback", "TDMOUT_B OUT",
    "TDMOUT_C IN 0", "FRDDR_A OUT 2",
    "TDMOUT_C IN 1", "FRDDR_B OUT 2",
    "TDMOUT_C IN 2", "FRDDR_C OUT 2",
    "TDM_C Playback", "TDMOUT_C OUT",
    "TDMIN_A IN 4", "TDM_B Loopback",
    "TDMIN_B IN 4", "TDM_B Loopback",
    "TDMIN_C IN 4", "TDM_B Loopback",
    "TDMIN_LB IN 1", "TDM_B Loopback",
    "TDMIN_A IN 5", "TDM_C Loopback",
    "TDMIN_B IN 5", "TDM_C Loopback",
    "TDMIN_C IN 5", "TDM_C Loopback",
    "TDMIN_LB IN 2", "TDM_C Loopback",
    "TODDR_A IN 0", "TDMIN_A OUT",
    "TODDR_B IN 0", "TDMIN_A OUT",
    "TODDR_C IN 0", "TDMIN_A OUT",
    "TODDR_A IN 1", "TDMIN_B OUT",
    "TODDR_B IN 1", "TDMIN_B OUT",
    "TODDR_C IN 1", "TDMIN_B OUT",
    "TODDR_A IN 2", "TDMIN_C OUT",
    "TODDR_B IN 2", "TDMIN_C OUT",
    "TODDR_C IN 2", "TDMIN_C OUT",
    "TODDR_A IN 6", "TDMIN_LB OUT",
    "TODDR_B IN 6", "TDMIN_LB OUT",
    "TODDR_C IN 6", "TDMIN_LB OUT",
    "U19 INL", "ACODEC LOLP",
    "U19 INR", "ACODEC LORP",
    "Lineout", "U19 OUTL",
    "Lineout", "U19 OUTR";

  clocks = <&clkc CLKID_MPLL2>,
    <&clkc CLKID_MPLL0>,
    <&clkc CLKID_MPLL1>;

  assigned-clocks = <&clkc CLKID_MPLL2>,
      <&clkc CLKID_MPLL0>,
      <&clkc CLKID_MPLL1>;
  assigned-clock-parents = <0>, <0>, <0>;
  assigned-clock-rates = <294912000>,
           <270950400>,
           <393216000>;

  dai-link-0 {
   sound-dai = <&frddr_a>;
  };

  dai-link-1 {
   sound-dai = <&frddr_b>;
  };

  dai-link-2 {
   sound-dai = <&frddr_c>;
  };

  dai-link-3 {
   sound-dai = <&toddr_a>;
  };

  dai-link-4 {
   sound-dai = <&toddr_b>;
  };

  dai-link-5 {
   sound-dai = <&toddr_c>;
  };

  /* 8ch hdmi interface */
  dai-link-6 {
   sound-dai = <&tdmif_b>;
   dai-format = "i2s";
   dai-tdm-slot-tx-mask-0 = <1 1>;
   dai-tdm-slot-tx-mask-1 = <1 1>;
   dai-tdm-slot-tx-mask-2 = <1 1>;
   dai-tdm-slot-tx-mask-3 = <1 1>;
   mclk-fs = <256>;

   codec-0 {
    sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
   };

   codec-1 {
    sound-dai = <&toacodec TOACODEC_IN_B>;
   };
  };

  /* i2s jack output interface */
  dai-link-7 {
   sound-dai = <&tdmif_c>;
   dai-format = "i2s";
   dai-tdm-slot-tx-mask-0 = <1 1>;
   mclk-fs = <256>;

   codec-0 {
    sound-dai = <&tohdmitx TOHDMITX_I2S_IN_C>;
   };

   codec-1 {
    sound-dai = <&toacodec TOACODEC_IN_C>;
   };
  };

  /* hdmi glue */
  dai-link-8 {
   sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;

   codec {
    sound-dai = <&hdmi_tx>;
   };
  };

  /* acodec glue */
  dai-link-9 {
   sound-dai = <&toacodec TOACODEC_OUT>;

   codec {
    sound-dai = <&acodec>;
   };
  };
 };
};

&acodec {
 AVDD-supply = <&vddao_1v8>;
 status = "okay";
};

ðmac {
 pinctrl-0 = <ð_pins>, <ð_rgmii_pins>;
 pinctrl-names = "default";
 status = "okay";
 phy-mode = "rgmii";
 phy-handle = <&external_phy>;
 amlogic,tx-delay-ns = <2>;
};

&ext_mdio {
 external_phy: ethernet-phy@0 {
  /* Realtek RTL8211F (0x001cc916) */
  reg = <0>;
  max-speed = <1000>;

  reset-assert-us = <10000>;
  reset-deassert-us = <80000>;
  reset-gpios = <&gpio GPIOZ_15 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>;

  interrupt-parent = <&gpio_intc>;
  /* MAC_INTR on GPIOZ_14 */
  interrupts = <IRQID_GPIOZ_14 IRQ_TYPE_LEVEL_LOW>;
 };
};

&gpio {
 gpio-line-names =
  /* GPIOZ */
  "", "", "", "", "", "", "", "",
  "", "", "", "", "", "", "", "",
  /* GPIOH */
  "", "", "", "", "", "", "", "",
  "",
  /* BOOT */
  "", "", "", "", "", "", "", "",
  "", "", "", "", "", "", "", "",
  /* GPIOC */
  "", "", "", "", "", "", "", "",
  /* GPIOA */
  "PIN_44", /* GPIOA_0 */
  "PIN_46", /* GPIOA_1 */
  "PIN_45", /* GPIOA_2 */
  "PIN_47", /* GPIOA_3 */
  "PIN_26", /* GPIOA_4 */
  "", "", "", "", "", "",
  "PIN_42", /* GPIOA_11 */
  "PIN_32", /* GPIOA_12 */
  "PIN_7",  /* GPIOA_13 */
  "PIN_27", /* GPIOA_14 */
  "PIN_28", /* GPIOA_15 */
  /* GPIOX */
  "PIN_16", /* GPIOX_0 */
  "PIN_18", /* GPIOX_1 */
  "PIN_22", /* GPIOX_2 */
  "PIN_11", /* GPIOX_3 */
  "PIN_13", /* GPIOX_4 */
  "PIN_33", /* GPIOX_5 */
  "PIN_35", /* GPIOX_6 */
  "PIN_15", /* GPIOX_7 */
  "PIN_19", /* GPIOX_8 */
  "PIN_21", /* GPIOX_9 */
  "PIN_24", /* GPIOX_10 */
  "PIN_23", /* GPIOX_11 */
  "PIN_8",  /* GPIOX_12 */
  "PIN_10", /* GPIOX_13 */
  "PIN_29", /* GPIOX_14 */
  "PIN_31", /* GPIOX_15 */
  "PIN_12", /* GPIOX_16 */
  "PIN_3",  /* GPIOX_17 */
  "PIN_5",  /* GPIOX_18 */
  "PIN_36"; /* GPIOX_19 */
};

&i2c3 {
 status = "okay";
 pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>;
 pinctrl-names = "default";

 rtc: rtc@51 {
  compatible = "nxp,pcf8563";
  reg = <0x51>;
  wakeup-source;
 };
};

&ir {
 status = "okay";
 pinctrl-0 = <&remote_input_ao_pins>;
 pinctrl-names = "default";
 linux,rc-map-name = "rc-odroid";
};

/*
 * EMMC_D4, EMMC_D5, EMMC_D6 and EMMC_D7 pins are shared between SPI NOR pins
 * and eMMC Data 4 to 7 pins.
 * Replace emmc_data_8b_pins to emmc_data_4b_pins from sd_emmc_c pinctrl-0,
 * and change bus-width to 4 then spifc can be enabled.
 * The SW1 slide should also be set to the correct position.
 */
&spifc {
 status = "disabled";
 pinctrl-0 = <&nor_pins>;
 pinctrl-names = "default";

 mx25u64: flash@0 {
  #address-cells = <1>;
  #size-cells = <1>;
  compatible = "mxicy,mx25u6435f", "jedec,spi-nor";
  reg = <0>;
  spi-max-frequency = <104000000>;
 };
};

&toacodec {
 status = "okay";
};

&usb {
 vbus-supply = <&usb_pwr_en>;
};

&usb2_phy1 {
 /* Enable the hub which is connected to this port */
 phy-supply = <&hub_5v>;
};

[ 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