Eine aufbereitete Darstellung der Quelle

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

Benutzer

Quelle  sm8250-sony-xperia-edo.dtsi   Sprache: unbekannt

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

// SPDX-License-Identifier: BSD-3-Clause
/*
 * Copyright (c) 2021, Konrad Dybcio <konrad.dybcio@somainline.org>
 */

#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include "sm8250.dtsi"
#include "pm8150.dtsi"
#include "pm8150b.dtsi"
#include "pm8150l.dtsi"
#include "pm8009.dtsi"

/delete-node/ &adsp_mem;
/delete-node/ &spss_mem;
/delete-node/ &cdsp_secure_heap;

/ {
 qcom,msm-id = <356 0x20001>; /* SM8250 v2.1 */
 qcom,board-id = <0x10008 0>;

 aliases {
  serial0 = &uart12;
 };

 chosen {
  stdout-path = "serial0:115200n8";
  #address-cells = <2>;
  #size-cells = <2>;
  ranges;

  framebuffer: framebuffer@9c000000 {
   compatible = "simple-framebuffer";
   reg = <0 0x9c000000 0 0x2300000>;
   /* pdx203 BL initializes in 2.5k mode, not 4k */
   width = <1096>;
   height = <2560>;
   stride = <(1096 * 4)>;
   format = "a8r8g8b8";
   /*
    * That's a lot of clocks, but it's necessary due
    * to unused clk cleanup & no panel driver yet..
    */
   clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
     <&gcc GCC_DISP_HF_AXI_CLK>,
     <&gcc GCC_DISP_SF_AXI_CLK>,
     <&dispcc DISP_CC_MDSS_VSYNC_CLK>,
     <&dispcc DISP_CC_MDSS_MDP_CLK>,
     <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
     <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
     <&dispcc DISP_CC_MDSS_PCLK0_CLK>,
     <&dispcc DISP_CC_MDSS_ESC0_CLK>;
   power-domains = <&dispcc MDSS_GDSC>;
  };
 };

 gpio_keys: gpio-keys {
  compatible = "gpio-keys";

  pinctrl-0 = <&focus_n &snapshot_n &vol_down_n>;
  pinctrl-names = "default";

  key-camera-focus {
   label = "Camera Focus";
   linux,code = <KEY_CAMERA_FOCUS>;
   gpios = <&pm8150b_gpios 2 GPIO_ACTIVE_LOW>;
   debounce-interval = <15>;
   linux,can-disable;
   wakeup-source;
  };

  key-camera-snapshot {
   label = "Camera Snapshot";
   linux,code = <KEY_CAMERA>;
   gpios = <&pm8150b_gpios 1 GPIO_ACTIVE_LOW>;
   debounce-interval = <15>;
   linux,can-disable;
   wakeup-source;
  };

  key-vol-down {
   label = "Volume Down";
   linux,code = <KEY_VOLUMEDOWN>;
   gpios = <&pm8150_gpios 1 GPIO_ACTIVE_LOW>;
   debounce-interval = <15>;
   linux,can-disable;
   wakeup-source;
  };
 };

 vph_pwr: vph-pwr-regulator {
  compatible = "regulator-fixed";
  regulator-name = "vph_pwr";
  regulator-min-microvolt = <3700000>;
  regulator-max-microvolt = <3700000>;
 };

 /* S6c is really ebi.lvl but it's there for supply map completeness sake. */
 vreg_s6c_0p88: smpc6-regulator {
  compatible = "regulator-fixed";
  regulator-name = "vreg_s6c_0p88";

  regulator-min-microvolt = <880000>;
  regulator-max-microvolt = <880000>;
  regulator-always-on;
  vin-supply = <&vph_pwr>;
 };

 reserved-memory {
  adsp_mem: memory@8a100000 {
   reg = <0x0 0x8a100000 0x0 0x2500000>;
   no-map;
  };

  spss_mem: memory@8c600000 {
   reg = <0x0 0x8c600000 0x0 0x100000>;
   no-map;
  };

  cdsp_secure_heap: memory@8c700000 {
   reg = <0x0 0x8c700000 0x0 0x4600000>;
   no-map;
  };

  cont_splash_mem: memory@9c000000 {
   reg = <0x0 0x9c000000 0x0 0x2300000>;
   no-map;
  };

  ramoops@ffc00000 {
   compatible = "ramoops";
   reg = <0x0 0xffc00000 0x0 0x100000>;
   record-size = <0x1000>;
   console-size = <0x40000>;
   pmsg-size = <0x20000>;
   ecc-size = <16>;
   no-map;
  };
 };
};

&adsp {
 status = "okay";
};

&apps_rsc {
 regulators-0 {
  compatible = "qcom,pm8150-rpmh-regulators";
  qcom,pmic-id = "a";

  vdd-s1-supply = <&vph_pwr>;
  vdd-s2-supply = <&vph_pwr>;
  vdd-s3-supply = <&vph_pwr>;
  vdd-s4-supply = <&vph_pwr>;
  vdd-s5-supply = <&vph_pwr>;
  vdd-s6-supply = <&vph_pwr>;
  vdd-s7-supply = <&vph_pwr>;
  vdd-s8-supply = <&vph_pwr>;
  vdd-s9-supply = <&vph_pwr>;
  vdd-s10-supply = <&vph_pwr>;
  vdd-l1-l8-l11-supply = <&vreg_s6c_0p88>;
  vdd-l2-l10-supply = <&vreg_bob>;
  vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p6>;
  vdd-l6-l9-supply = <&vreg_s8c_1p2>;
  vdd-l7-l12-l14-l15-supply = <&vreg_s5a_1p9>;
  vdd-l13-l16-l17-supply = <&vreg_bob>;

  /* (S1+S2+S3) - cx.lvl (ARC) */

  vreg_s4a_1p8: smps4 {
   regulator-name = "vreg_s4a_1p8";
   regulator-min-microvolt = <1800000>;
   regulator-max-microvolt = <1920000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_s5a_1p9: smps5 {
   regulator-name = "vreg_s5a_1p9";
   regulator-min-microvolt = <1824000>;
   regulator-max-microvolt = <2040000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_s6a_0p6: smps6 {
   regulator-name = "vreg_s6a_0p6";
   regulator-min-microvolt = <600000>;
   regulator-max-microvolt = <1128000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l2a_3p1: ldo2 {
   regulator-name = "vreg_l2a_3p1";
   regulator-min-microvolt = <3072000>;
   regulator-max-microvolt = <3072000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l3a_0p9: ldo3 {
   regulator-name = "vreg_l3a_0p9";
   regulator-min-microvolt = <928000>;
   regulator-max-microvolt = <932000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  /* L4 - lmx.lvl (ARC) */

  vreg_l5a_0p88: ldo5 {
   regulator-name = "vreg_l5a_0p88";
   regulator-min-microvolt = <880000>;
   regulator-max-microvolt = <880000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l6a_1p2: ldo6 {
   regulator-name = "vreg_l6a_1p2";
   regulator-min-microvolt = <1200000>;
   regulator-max-microvolt = <1200000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  /* L7 is unused. */

  vreg_l9a_1p2: ldo9 {
   regulator-name = "vreg_l9a_1p2";
   regulator-min-microvolt = <1200000>;
   regulator-max-microvolt = <1200000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  /* L10 is unused, L11 - lcx.lvl (ARC) */

  vreg_l12a_1p8: ldo12 {
   regulator-name = "vreg_l12a_1p8";
   regulator-min-microvolt = <1800000>;
   regulator-max-microvolt = <1800000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  /* L13 is unused. */

  vreg_l14a_1p8: ldo14 {
   regulator-name = "vreg_l14a_1p8";
   regulator-min-microvolt = <1800000>;
   regulator-max-microvolt = <1880000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  /* L15 & L16 are unused. */

  vreg_l17a_3p0: ldo17 {
   regulator-name = "vreg_l17a_3p0";
   regulator-min-microvolt = <2496000>;
   regulator-max-microvolt = <3008000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l18a_0p9: ldo18 {
   regulator-name = "vreg_l18a_0p9";
   regulator-min-microvolt = <800000>;
   regulator-max-microvolt = <920000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };
 };

 /*
  * Remaining regulators that are not yet supported:
  * OLEDB: 4925000-8100000
  * ab: 4600000-6100000
  * ibb: 800000-5400000
  */
 regulators-1 {
  compatible = "qcom,pm8150l-rpmh-regulators";
  qcom,pmic-id = "c";

  vdd-s1-supply = <&vph_pwr>;
  vdd-s2-supply = <&vph_pwr>;
  vdd-s3-supply = <&vph_pwr>;
  vdd-s4-supply = <&vph_pwr>;
  vdd-s5-supply = <&vph_pwr>;
  vdd-s6-supply = <&vph_pwr>;
  vdd-s7-supply = <&vph_pwr>;
  vdd-s8-supply = <&vph_pwr>;
  vdd-l1-l8-supply = <&vreg_s4a_1p8>;
  vdd-l2-l3-supply = <&vreg_s8c_1p2>;
  vdd-l4-l5-l6-supply = <&vreg_bob>;
  vdd-l7-l11-supply = <&vreg_bob>;
  vdd-l9-l10-supply = <&vreg_bob>;
  vdd-bob-supply = <&vph_pwr>;

  vreg_bob: bob {
   regulator-name = "vreg_bob";
   regulator-min-microvolt = <3350000>;
   regulator-max-microvolt = <3960000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
  };

  /*
   * S1-S6 are ARCs:
   * (S1+S2) - gfx.lvl,
   * S3 - mx.lvl,
   * (S4+S5) - mmcx.lvl,
   * S6 - ebi.lvl
   */

  vreg_s7c_0p35: smps7 {
   regulator-name = "vreg_s7c_0p35";
   regulator-min-microvolt = <348000>;
   regulator-max-microvolt = <1000000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_s8c_1p2: smps8 {
   regulator-name = "vreg_s8c_1p2";
   regulator-min-microvolt = <1200000>;
   regulator-max-microvolt = <1400000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l1c_1p8: ldo1 {
   regulator-name = "vreg_l1c_1p8";
   regulator-min-microvolt = <1800000>;
   regulator-max-microvolt = <1800000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  /* L2-4 are unused. */

  vreg_l5c_1p8: ldo5 {
   regulator-name = "vreg_l5c_1p8";
   regulator-min-microvolt = <1800000>;
   regulator-max-microvolt = <2800000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l6c_2p9: ldo6 {
   regulator-name = "vreg_l6c_2p9";
   regulator-min-microvolt = <1800000>;
   regulator-max-microvolt = <2960000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
   regulator-allow-set-load;
   regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
         RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l7c_2p85: ldo7 {
   regulator-name = "vreg_l7c_2p85";
   regulator-min-microvolt = <2856000>;
   regulator-max-microvolt = <3104000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l8c_1p8: ldo8 {
   regulator-name = "vreg_l8c_1p8";
   regulator-min-microvolt = <1800000>;
   regulator-max-microvolt = <1800000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l9c_2p9: ldo9 {
   regulator-name = "vreg_l9c_2p9";
   regulator-min-microvolt = <2704000>;
   regulator-max-microvolt = <2960000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
   regulator-allow-set-load;
   regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
         RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l10c_3p3: ldo10 {
   regulator-name = "vreg_l10c_3p3";
   regulator-min-microvolt = <3296000>;
   regulator-max-microvolt = <3296000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l11c_3p0: ldo11 {
   regulator-name = "vreg_l11c_3p0";
   regulator-min-microvolt = <3000000>;
   regulator-max-microvolt = <3000000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };
 };

 regulators-2 {
  compatible = "qcom,pm8009-rpmh-regulators";
  qcom,pmic-id = "f";

  vdd-s1-supply = <&vph_pwr>;
  vdd-s2-supply = <&vreg_bob>;
  vdd-l2-supply = <&vreg_s8c_1p2>;
  vdd-l5-l6-supply = <&vreg_bob>;
  vdd-l7-supply = <&vreg_s4a_1p8>;

  vreg_s1f_1p2: smps1 {
   regulator-name = "vreg_s1f_1p2";
   regulator-min-microvolt = <1200000>;
   regulator-max-microvolt = <1200000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_s2f_0p5: smps2 {
   regulator-name = "vreg_s2f_0p5";
   regulator-min-microvolt = <512000>;
   regulator-max-microvolt = <1100000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  /* L1 is unused. */

  vreg_l2f_1p3: ldo2 {
   regulator-name = "vreg_l2f_1p3";
   regulator-min-microvolt = <1304000>;
   regulator-max-microvolt = <1304000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  /* L3 & L4 are unused. */

  vreg_l5f_2p8: ldo5 {
   regulator-name = "vreg_l5f_2p85";
   regulator-min-microvolt = <2800000>;
   regulator-max-microvolt = <2800000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l6f_2p8: ldo6 {
   regulator-name = "vreg_l6f_2p8";
   regulator-min-microvolt = <2800000>;
   regulator-max-microvolt = <2800000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };

  vreg_l7f_1p8: ldo7 {
   regulator-name = "vreg_l7f_1p8";
   regulator-min-microvolt = <1800000>;
   regulator-max-microvolt = <1800000>;
   regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  };
 };
};

&cdsp {
 status = "okay";
};

&gpi_dma0 {
 status = "okay";
};

&gpi_dma1 {
 status = "okay";
};

&gpi_dma2 {
 status = "okay";
};

&i2c1 {
 status = "okay";
 clock-frequency = <400000>;

 nfc@28 {
  compatible = "nxp,nxp-nci-i2c";
  reg = <0x28>;

  interrupt-parent = <&tlmm>;
  interrupts = <111 IRQ_TYPE_EDGE_RISING>;

  enable-gpios = <&tlmm 6 GPIO_ACTIVE_HIGH>;
  firmware-gpios = <&tlmm 110 GPIO_ACTIVE_HIGH>;
 };
};

&i2c2 {
 status = "okay";
 clock-frequency = <1000000>;

 cs35l41_l: speaker-amp@40 {
  compatible = "cirrus,cs35l41";
  reg = <0x40>;
  interrupt-parent = <&tlmm>;
  interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
  reset-gpios = <&tlmm 10 GPIO_ACTIVE_HIGH>;
  cirrus,boost-peak-milliamp = <4000>;
  cirrus,boost-ind-nanohenry = <1000>;
  cirrus,boost-cap-microfarad = <15>;
  cirrus,asp-sdout-hiz = <3>;
  cirrus,gpio2-src-select = <2>;
  cirrus,gpio2-output-enable;
  #sound-dai-cells = <1>;
 };

 cs35l41_r: speaker-amp@41 {
  compatible = "cirrus,cs35l41";
  reg = <0x41>;
  interrupt-parent = <&tlmm>;
  interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
  reset-gpios = <&tlmm 10 GPIO_ACTIVE_HIGH>;
  cirrus,boost-peak-milliamp = <4000>;
  cirrus,boost-ind-nanohenry = <1000>;
  cirrus,boost-cap-microfarad = <15>;
  cirrus,asp-sdout-hiz = <3>;
  cirrus,gpio2-src-select = <2>;
  cirrus,gpio2-output-enable;
  #sound-dai-cells = <1>;
 };
};

&i2c9 {
 status = "okay";
 clock-frequency = <400000>;

 /* AMS TCS3490 RGB+IR color sensor @ 72 */
};

&i2c13 {
 status = "okay";
 clock-frequency = <400000>;

 touchscreen@48 {
  compatible = "samsung,s6sy761";
  reg = <0x48>;
  interrupt-parent = <&tlmm>;
  interrupts = <39 IRQ_TYPE_LEVEL_LOW>;
  /* It's "vddio" downstream but it works anyway! */
  vdd-supply = <&vreg_l1c_1p8>;
  avdd-supply = <&vreg_l10c_3p3>;

  pinctrl-names = "default";
  pinctrl-0 = <&ts_int_default>;
 };
};

&i2c15 {
 status = "okay";
 clock-frequency = <400000>;

 /* Qcom SMB1390 @ 10 */
 /* Qcom SMB1390_slave @ 18 */
 /* HALO HL6111R Qi charger @ 25 */
};

&pcie0 {
 status = "okay";
};

&pcie0_phy {
 status = "okay";

 vdda-phy-supply = <&vreg_l5a_0p88>;
 vdda-pll-supply = <&vreg_l9a_1p2>;
};

&pcie2 {
 status = "okay";

 pinctrl-0 = <&pcie2_default_state &mdm2ap_default &ap2mdm_default>;
};

&pcie2_phy {
 status = "okay";

 vdda-phy-supply = <&vreg_l5a_0p88>;
 vdda-pll-supply = <&vreg_l9a_1p2>;
};

&pm8150_gpios {
 vol_down_n: vol-down-n-state {
  pins = "gpio1";
  function = "normal";
  power-source = <0>;
  bias-pull-up;
  input-enable;
 };
};

&pm8150b_gpios {
 snapshot_n: snapshot-n-state {
  pins = "gpio1";
  function = "normal";
  power-source = <0>;
  bias-pull-up;
  input-enable;
 };

 focus_n: focus-n-state {
  pins = "gpio2";
  function = "normal";
  power-source = <0>;
  bias-pull-up;
  input-enable;
 };
};

&pon {
 mode-bootloader = <0x2>;
 mode-recovery = <0x1>;
};

&pon_pwrkey {
 status = "okay";
};

&pon_resin {
 status = "okay";

 linux,code = <KEY_VOLUMEUP>;
};

&qupv3_id_0 {
 status = "okay";
};

&qupv3_id_1 {
 status = "okay";
};

&qupv3_id_2 {
 status = "okay";
};

&sdhc_2 {
 status = "okay";

 cd-gpios = <&tlmm 77 GPIO_ACTIVE_HIGH>;
 pinctrl-names = "default", "sleep";
 pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>;
 pinctrl-1 = <&sdc2_sleep_state &sdc2_card_det_n>;
 vmmc-supply = <&vreg_l9c_2p9>;
 vqmmc-supply = <&vreg_l6c_2p9>;
 bus-width = <4>;
 no-sdio;
 no-mmc;
};

&slpi {
 status = "okay";
};

&tlmm {
 gpio-reserved-ranges = <40 4>, <52 4>;

 sdc2_default_state: sdc2-default-state {
  clk-pins {
   pins = "sdc2_clk";
   drive-strength = <16>;
   bias-disable;
  };

  cmd-pins {
   pins = "sdc2_cmd";
   drive-strength = <16>;
   bias-pull-up;
  };

  data-pins {
   pins = "sdc2_data";
   drive-strength = <16>;
   bias-pull-up;
  };
 };

 mdm2ap_default: mdm2ap-default-state {
  pins = "gpio1", "gpio3";
  function = "gpio";
  drive-strength = <8>;
  bias-disable;
 };

 ts_int_default: ts-int-default-state {
  pins = "gpio39";
  function = "gpio";
  drive-strength = <2>;
  bias-disable;
 };

 ap2mdm_default: ap2mdm-default-state {
  pins = "gpio56", "gpio57";
  function = "gpio";
  drive-strength = <16>;
  bias-disable;
 };

 sdc2_card_det_n: sd-card-det-n-state {
  pins = "gpio77";
  function = "gpio";
  bias-pull-up;
  drive-strength = <2>;
 };
};

&uart12 {
 status = "okay";
};

/* BIG WARNING! DO NOT TOUCH UFS, YOUR DEVICE WILL DIE! */
&ufs_mem_hc { status = "disabled"; };
&ufs_mem_phy { status = "disabled"; };

&usb_1 {
 status = "okay";
};

&usb_1_dwc3 {
 dr_mode = "peripheral";
};

&usb_1_hsphy {
 status = "okay";

 vdda-pll-supply = <&vreg_l5a_0p88>;
 vdda18-supply = <&vreg_l12a_1p8>;
 vdda33-supply = <&vreg_l2a_3p1>;
};

&usb_1_qmpphy {
 status = "okay";

 vdda-phy-supply = <&vreg_l9a_1p2>;
 vdda-pll-supply = <&vreg_l18a_0p9>;
};

&venus {
 firmware-name = "qcom/sm8250/Sony/edo/venus.mbn";
 status = "okay";
};

[Dauer der Verarbeitung: 0.16 Sekunden, vorverarbeitet 2026-06-07]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik