Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/arch/arm/boot/dts/st/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 9 kB image not shown  

Quelle  ste-hrefv60plus.dtsi   Sprache: unbekannt

 
Spracherkennung für: .dtsi vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Copyright 2012 ST-Ericsson AB
 */

#include "ste-href.dtsi"

/ {
 model = "ST-Ericsson HREF (v60+) platform with Device Tree";
 compatible = "st-ericsson,hrefv60+", "st-ericsson,u8500";

 thermal-zones {
  chassis-thermal {
   /* Poll every 20 seconds */
   polling-delay = <20000>;
   /* Poll every 2nd second when cooling */
   polling-delay-passive = <2000>;

   thermal-sensors = <&therm1>, <&therm2>;

   /* Tripping points made from rough guess about operating conditions */
   trips {
    chassis_alert: chassis-alert {
     /* At 50 degrees take down the CPU frequency */
     temperature = <50000>;
     hysteresis = <3000>;
     type = "active";
    };
    chassis_crit: chassis-crit {
     /* Just shut down at 70 degrees */
     temperature = <70000>;
     hysteresis = <2000>;
     type = "critical";
    };
   };

   /* Push down the operating frequency of the SoC when it gets hot */
   cooling-maps {
    map0 {
     trip = <&chassis_alert>;
     cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
     contribution = <100>;
    };
   };
  };
 };

 /*
  * Thermistors on the board, formally to monitor battery temperatures
  * but what they measure is the board temperature.
  */
 therm1: thermistor@0 {
  compatible = "murata,ncp18wb473";
  io-channels = <&gpadc 0x06>; /* AUX1 */
  pullup-uv = <1800000>;
  pullup-ohm = <220000>;
  pulldown-ohm = <0>;
  #thermal-sensor-cells = <0>;
 };

 therm2: thermistor@1 {
  compatible = "murata,ncp18wb473";
  io-channels = <&gpadc 0x07>; /* AUX2 */
  pullup-uv = <1800000>;
  pullup-ohm = <220000>;
  pulldown-ohm = <0>;
  #thermal-sensor-cells = <0>;
 };

 soc {
  /* Name the GPIO muxed rails on the HREF boards */
  gpio@8012e000 {
   /* GPIOs 0 - 31 */
   gpio-line-names =
         /* GPIO0,1 used for UART0 BT RX/TX */
         "", "",
         "UART_WAKE",
         "BT_WAKE",
         "",
         "SDMMC_1V8_3V_SEL",
         "FLASH_LED_SYNC (FLASH_CTRL_0)",
         "XENON_READY (FLASH_CTRL_1)",
         "", "", "", "", "", "", "", "",
         "", "", "", "",
         "",
         "FLASH_LED_EN (FLASH_CTRL_3)",
         "", "",
         "", "", "", "", "",
         /* Used by UART2 (console) */
         "", "",
         "MAGNETOMETER_INT";
  };

  gpio@8012e080 {
   /* GPIOs 32 - 63 */
   gpio-line-names =
         "MAGNETOMETER_DRDY",
         "", "", "", "", "", "", "",
         "", "", "", "", "", "", "", "",
         "", "", "", "", "", "", "", "",
         "", "", "", "", "", "", "", "";
  };

  gpio@8000e000 {
   /* GPIOs 64 - 95 */
   gpio-line-names = "XENON_EN2 (FLASH_CTRL_4)",
         "DISP1_RST",
         "DISP2_RST",
         "TOUCH_INT2",
         "LCD_VSI0_A",
         "LCD_VSI1_A",
         /* GPIO 70-77 used for ETM */
         "", "", "", "", "", "", "", "",
         /* GPIO 78-81 used for YCBCR */
         "", "", "", "",
         "ACCELEROMETER_INT1_RDY",
         "ACCELEROMETER_INT2",
         "TOUCH_INT",
         "WLAN_ENA",
         "", "", "", "", "",
         "FORCE_SENSING_INT",
         "FORCE_SENSING_RESET",
         "", "",
         "SDMMC_CD";
  };

  gpio@8000e080 {
   /* GPIOs 96 - 127 */
   gpio-line-names = "",
         "FORCE_SENSING_WU",
         "", "", "", "", "", "",
         "", "", "", "", "", "", "", "",
         "", "", "", "", "", "", "", "",
         "", "", "", "", "", "", "", "";
  };

  gpio@8000e100 {
   /* GPIOs 128 - 159 */
   gpio-line-names = "", "", "", "", "", "", "", "",
         "", "", "",
         "DIPRO_INT", /* GPIO139 */
         "XSHUTDOWN_SECONDARY_SENSOR",
         "XSHUTDOWN_PRIMARY_SENSOR",
         "NFC_RST (NFC_CTRL_",
         "TOUCH_RST",
         "NFC_IRQ (NFC_CTRL_1)",
         "HAL_SW",
         "TOUCH_RST2",
         "", "",
         "VAUDIO_HF_EN", /* GPIO149 */
         "", "", "", "", "", "", "", "", "", "";
  };

  gpio@8000e180 {
   /* GPIOs 160 - 191 */
   gpio-line-names = "", "", "", "", "", "", "", "",
         "",
         "SDMMC_EN",
         "XENON_CHARGE (FLASH_CONTROL_5)",
         "GBF_ENA_RESET",
         "", "", "", "",
         "", "", "", "", "", "", "", "",
         "", "", "", "", "", "", "", "";
  };

  gpio@8011e000 {
   /* GPIOs 192 - 223 */
   gpio-line-names = "HDTV_INTN",
         "", "", "",
         "HDTV_RSTN",
         "", "", "",
         "", /* GPIO200 */
         "", "", "", "", "", "", "",
         /* GPIO208-216 used for WGBF_MC1 */
         "", "", "", "", "", "", "", "", "",
         "SW_FRONT_PROXIMITY", /* GPIO217 */
         "KPD_CTRL_INT", /* Keypad controller */
         "", "", "", "", "";
  };

  gpio@8011e080 {
   /* GPIOs 224 - 255 */
   gpio-line-names = "", "",
         "HSIT_ACWAKE0",
         "", "", "", "", "",
         "", "", "", "", "", "", "", "",
         "", "", "", "", "", "", "", "",
         "", "", "", "", "", "", "", "";
  };

  // External Micro SD slot
  mmc@80126000 {
   cd-gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>; // 95
  };

  pinctrl {
   /*
    * Set this up using hogs, as time goes by and as seems fit, these
    * can be moved over to being controlled by respective device.
    */
   pinctrl-names = "default";
   pinctrl-0 = <&ipgpio_hrefv60_mode>,
      <&etm_hrefv60_mode>,
      <&nahj_hrefv60_mode>,
      <&nfc_hrefv60_mode>,
      <&force_hrefv60_mode>,
      <&dipro_hrefv60_mode>,
      <&vaudio_hf_hrefv60_mode>,
      <&gbf_hrefv60_mode>,
      <&hdtv_hrefv60_mode>,
      <&gpios_hrefv60_mode>;

   sdi0 {
    sdi0_default_mode: sdi0_default {
     /* SD card detect GPIO pin, extend default state */
     default_hrefv60_cfg1 {
      pins = "GPIO95_E8";
      ste,config = <&gpio_in_pu>;
     };
    };
   };
   ipgpio {
    /*
     * XENON Flashgun on image processor GPIO (controlled from image
     * processor firmware), mux in these image processor GPIO lines 0
     * (XENON_FLASH_ID), 1 (XENON_READY) and there is an assistant
     * LED on IP GPIO 4 (XENON_EN2) on altfunction C, that need bias
     * from GPIO21 so pull up 0, 1 and drive 4 and GPIO21 low as output.
     */
    ipgpio_hrefv60_mode: ipgpio_hrefv60 {
     hrefv60_mux {
      function = "ipgpio";
      groups = "ipgpio0_c_1", "ipgpio1_c_1", "ipgpio4_c_1";
     };
     hrefv60_cfg1 {
      pins = "GPIO6_AF6", "GPIO7_AG5";
      ste,config = <&in_pu>;
     };
     hrefv60_cfg2 {
      pins = "GPIO21_AB3";
      ste,config = <&gpio_out_lo>;
     };
     hrefv60_cfg3 {
      pins = "GPIO64_F3";
      ste,config = <&out_lo>;
     };
    };
   };
   etm {
    /*
     * Drive D19-D23 for the ETM PTM trace interface low,
     * (presumably pins are unconnected therefore grounded here,
     * the "other alt C1" setting enables these pins)
     */
    etm_hrefv60_mode: etm_hrefv60 {
     hrefv60_cfg1 {
      pins =
      "GPIO70_G5",
      "GPIO71_G4",
      "GPIO72_H4",
      "GPIO73_H3",
      "GPIO74_J3";
      ste,config = <&gpio_out_lo>;
     };
     };
   };
   nahj {
    nahj_hrefv60_mode: nahj_hrefv60 {
     /* NAHJ CTRL on GPIO76 to low, CTRL_INV on GPIO216 to high */
     hrefv60_cfg1 {
      pins = "GPIO76_J2";
      ste,config = <&gpio_out_lo>;
     };
     hrefv60_cfg2 {
      pins = "GPIO216_AG12";
      ste,config = <&gpio_out_hi>;
     };
     };
   };
   nfc {
    nfc_hrefv60_mode: nfc_hrefv60 {
     /* NFC ENA and RESET to low, pulldown IRQ line */
     hrefv60_cfg1 {
      pins =
      "GPIO77_H1", /* NFC_ENA */
      "GPIO142_C11"; /* NFC_RESET */
      ste,config = <&gpio_out_lo>;
     };
     hrefv60_cfg2 {
      pins = "GPIO144_B13"; /* NFC_IRQ */
      ste,config = <&gpio_in_pd>;
     };
     };
   };
   force {
    force_hrefv60_mode: force_hrefv60 {
     hrefv60_cfg1 {
      pins = "GPIO91_B6"; /* FORCE_SENSING_INT */
      ste,config = <&gpio_in_pu>;
     };
     hrefv60_cfg2 {
      pins =
      "GPIO92_D6", /* FORCE_SENSING_RST */
      "GPIO97_D9"; /* FORCE_SENSING_WU */
      ste,config = <&gpio_out_lo>;
     };
     };
   };
   dipro {
    dipro_hrefv60_mode: dipro_hrefv60 {
     hrefv60_cfg1 {
      pins = "GPIO139_C9"; /* DIPRO_INT */
      ste,config = <&gpio_in_pu>;
     };
     };
   };
   vaudio_hf {
    vaudio_hf_hrefv60_mode: vaudio_hf_hrefv60 {
     /* Audio Amplifier HF enable GPIO */
     hrefv60_cfg1 {
      pins = "GPIO149_B14"; /* VAUDIO_HF_EN, enable MAX8968 */
      ste,config = <&gpio_out_hi>;
     };
     };
   };
   gbf {
    gbf_hrefv60_mode: gbf_hrefv60 {
     /*
      * GBF (GPS, Bluetooth, FM-radio) interface,
      * pull low to reset state
      */
     hrefv60_cfg1 {
      pins = "GPIO171_D23"; /* GBF_ENA_RESET */
      ste,config = <&gpio_out_lo>;
     };
     };
   };
   hdtv {
    hdtv_hrefv60_mode: hdtv_hrefv60 {
     /* MSP : HDTV INTERFACE GPIO line */
     hrefv60_cfg1 {
      pins = "GPIO192_AJ27";
      ste,config = <&gpio_in_pd>;
     };
     };
   };
   mcde {
    lcd_hrefv60_mode: lcd_hrefv60 {
     /*
      * Display Interface 1 uses GPIO 65 for RST (reset).
      * Display Interface 2 uses GPIO 66 for RST (reset).
      * Drive DISP1 reset high (not reset), driver DISP2 reset low (reset)
      */
     hrefv60_cfg1 {
      pins = "GPIO65_F1";
      ste,config = <&gpio_out_hi>;
     };
     hrefv60_cfg2 {
      pins = "GPIO66_G3";
      ste,config = <&gpio_out_lo>;
     };
    };
   };
   gpios {
    /* Dangling GPIO pins */
    gpios_hrefv60_mode: gpios_hrefv60 {
     default_cfg1 {
      /* Normally UART1 RXD, now dangling */
      pins = "GPIO4_AH6";
      ste,config = <&in_pu>;
     };
    };
   };
  };
 };
};

[ Dauer der Verarbeitung: 0.33 Sekunden  ]