arm64: dts: Import taoyao device tree

Change-Id: I119ebd3cd9574f7f40af7181dd297b57ef00fa4b
This commit is contained in:
Giovanni Ricca 2022-10-13 20:20:04 +02:00
parent 112cce7399
commit e6403eb51a
No known key found for this signature in database
6 changed files with 1282 additions and 0 deletions

View File

@ -239,6 +239,7 @@ ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)
dtbo-$(CONFIG_ARCH_YUPIK) += \
lisa-sm7325-overlay.dtbo \
mona-sm7325-overlay.dtbo \
taoyao-sm7325-overlay.dtbo \
yupik-rumi-overlay.dtbo \
yupik-idp-overlay.dtbo \
yupik-atp-overlay.dtbo \
@ -274,6 +275,7 @@ dtbo-$(CONFIG_ARCH_YUPIK) += \
lisa-sm7325-overlay.dtbo-base := yupik.dtb
mona-sm7325-overlay.dtbo-base := yupik.dtb
taoyao-sm7325-overlay.dtbo-base := yupik.dtb
yupik-rumi-overlay.dtbo-base := yupik.dtb
yupik-idp-overlay.dtbo-base := yupik.dtb
yupik-atp-overlay.dtbo-base := yupik.dtb

View File

@ -0,0 +1,734 @@
#include <dt-bindings/clock/qcom,camcc-yupik.h>
&PM8008I {
vdd_l6-supply = <&S1B>;
};
// L2I 1.2v
&L2I {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
qcom,min-dropout-voltage = <24000>;
};
// L6I 1.8v
&L6I {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,min-dropout-voltage = <24000>;
};
&cci0_active {
config {
pins = "gpio69","gpio70";
bias-pull-up; /* PULL UP*/
drive-strength = <4>; /* 4 MA */
};
};
&cci1_active {
config {
pins = "gpio71","gpio72";
bias-pull-up; /* PULL UP*/
drive-strength = <4>; /* 4 MA */
};
};
&cci2_active {
config {
pins = "gpio73","gpio74";
bias-pull-up; /* PULL UP*/
drive-strength = <4>; /* 4 MA */
};
};
&cci3_active {
config {
pins = "gpio75","gpio76";
bias-pull-up;
drive-strength = <4>;
};
};
&pm8350c_flash0 {
qcom,ires-ua = <5000>;
qcom,max-current-ma = <720>;
};
&pm8350c_flash1 {
qcom,ires-ua = <5000>;
qcom,max-current-ma = <300>;
};
&pm8350c_flash2 {
qcom,ires-ua = <5000>;
qcom,max-current-ma = <300>;
};
&pm8350c_flash3 {
qcom,ires-ua = <5000>;
qcom,max-current-ma = <720>;
};
&pm8350c_torch0 {
qcom,ires-ua = <5000>;
};
&pm8350c_torch1 {
qcom,ires-ua = <5000>;
qcom,max-current-ma = <300>;
};
&pm8350c_torch2 {
qcom,ires-ua = <5000>;
qcom,max-current-ma = <300>;
};
&pm8350c_torch3 {
qcom,ires-ua = <5000>;
};
&pm8350c_switch0 {
qcom,led-mask = <9>; /* Channels 1&4*/
};
&pm8350c_switch1 {
qcom,led-mask = <6>; /* Channels 2&3*/
};
&pm8350c_switch2 {
qcom,led-mask = <2>; /* Channels 2 */
qcom,symmetry-en;
};
&pm8350c_flash {
pm8350c_switch3: qcom,led_switch_3 {
label = "switch";
qcom,led-name = "led:switch_3";
qcom,default-led-trigger = "switch3_trigger";
qcom,led-mask = <4>; /* Channels 3 */
qcom,symmetry-en;
};
};
&soc {
led_flash_wide: qcom,camera-flash@0 {
cell-index = <0>;
compatible = "qcom,camera-flash";
flash-source = <&pm8350c_flash0 &pm8350c_flash3>;
torch-source = <&pm8350c_torch0 &pm8350c_torch3>;
switch-source = <&pm8350c_switch0>;
status = "ok";
};
led_flash_ultra: qcom,camera-flash@1 {
cell-index = <1>;
compatible = "qcom,camera-flash";
flash-source = <&pm8350c_flash0 &pm8350c_flash3>;
torch-source = <&pm8350c_torch0 &pm8350c_torch3>;
switch-source = <&pm8350c_switch0>;
status = "ok";
};
led_flash_macro: qcom,camera-flash@2 {
cell-index = <2>;
compatible = "qcom,camera-flash";
flash-source = <&pm8350c_flash0 &pm8350c_flash3>;
torch-source = <&pm8350c_torch0 &pm8350c_torch3>;
switch-source = <&pm8350c_switch0>;
status = "ok";
};
led_flash_front: qcom,camera-flash@3 {
cell-index = <3>;
compatible = "qcom,camera-flash";
flash-source = <&pm8350c_flash1 &pm8350c_flash2>;
torch-source = <&pm8350c_torch1 &pm8350c_torch2>;
switch-source = <&pm8350c_switch1>;
status = "ok";
};
camera_wide_vana_ldo: gpio-regulator@0 {
compatible = "regulator-fixed";
reg = <0x00 0x00>;
regulator-name = "camera_wide_vana_ldo";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-enable-ramp-delay = <135>;
enable-active-high;
gpio = <&tlmm 106 0>;
vin-supply = <&BOB>;
};
camera_wide_vdig_ldo: gpio-regulator@1 {
compatible = "regulator-fixed";
reg = <0x01 0x00>;
regulator-name = "camera_wide_vdig_ldo";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
regulator-enable-ramp-delay = <135>;
enable-active-high;
gpio = <&tlmm 108 0>;
vin-supply = <&S8B>;
};
qcom,cam-res-mgr {
compatible = "qcom,cam-res-mgr";
};
};
&cam_cci0 {
actuator_wide: qcom,actuator0 {
cell-index = <0>;
compatible = "qcom,actuator";
cci-master = <1>;
cam_vaf-supply = <&L9C>;
cam_vio-supply = <&L5I>;
regulator-names = "cam_vaf", "cam_vio";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1800000>;
rgltr-max-voltage = <2800000 1800000>;
rgltr-load-current = <300000 10000>;
status = "ok";
};
actuator_front: qcom,actuator1 {
cell-index = <1>;
compatible = "qcom,actuator";
cci-master = <0>;
cam_vaf-supply = <&L6C>;
cam_vio-supply = <&L5I>;
regulator-names = "cam_vaf", "cam_vio";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1800000>;
rgltr-max-voltage = <2800000 1800000>;
rgltr-load-current = <300000 10000>;
status = "ok";
};
eeprom_wide: qcom,eeprom0 {
cell-index = <0>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L5I>;
cam_vdig-supply = <&camera_wide_vdig_ldo>; //S8B+108
cam_vana-supply = <&camera_wide_vana_ldo>;//bob+106
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
cam_bob-supply = <&BOB>;
regulator-names = "cam_vio", "cam_vdig", "cam_vana",
"cam_clk", "cam_bob";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1100000 2800000 0 3200000>;
rgltr-max-voltage = <1800000 1100000 2800000 0 3960000>;
rgltr-load-current = <10000 120000 970000 0 2000000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_active_wide>;
pinctrl-1 = <&cam_sensor_suspend_wide>;
gpios = <&tlmm 65 0>,
<&tlmm 21 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
eeprom_front: qcom,eeprom1 {
cell-index = <1>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L5I>;
cam_vdig-supply = <&L1I>;
cam_vana-supply = <&L3I>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
cam_bob-supply = <&BOB>;
regulator-names = "cam_vio", "cam_vdig", "cam_vana",
"cam_clk", "cam_bob";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1024000 2800000 0 3200000>;
rgltr-max-voltage = <1800000 1024000 2800000 0 3960000>;
rgltr-load-current = <10000 140000 280000 0 2000000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_active_front
&cam_front_mclk_active>;
pinctrl-1 = <&cam_sensor_suspend_front
&cam_front_mclk_suspend>;
gpios = <&tlmm 64 0>,
<&tlmm 20 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET0";
cci-master = <0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
// wide s5khm2 (AVDD 2.8V ) (VIO 1.8) (DVDD 1.1 )
qcom,cam-sensor0 {
cell-index = <0>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <1>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_wide>;
actuator-src = <&actuator_wide>;
led-flash-src = <&led_flash_wide>;
cam_vio-supply = <&L5I>;
cam_vdig-supply = <&camera_wide_vdig_ldo>; //S8B+108
cam_vana-supply = <&camera_wide_vana_ldo>;
cam_vaf_supply = <&L9C>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
cam_bob-supply = <&BOB>;
regulator-names = "cam_vio", "cam_vdig", "cam_vana","cam_vaf", "cam_clk", "cam_bob";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1100000 2800000 2800000 0 3200000>;
rgltr-max-voltage = <1800000 1100000 2800000 2800000 0 3960000>;
rgltr-load-current = <10000 120000 970000 106000 0 2000000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_active_wide
&cam_wide_mclk_active>;
pinctrl-1 = <&cam_sensor_suspend_wide
&cam_wide_mclk_suspend>;
gpios = <&tlmm 65 0>,
<&tlmm 21 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
// Front s5kgd2 (AVDD 2.8V ) (VIO 1.8) (DVDD 1.02 )
qcom,cam-sensor1 {
cell-index = <1>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <0>;
sensor-position-roll = <270>;
sensor-position-pitch = <0>;
sensor-position-yaw = <0>;
eeprom-src = <&eeprom_front>;
actuator-src = <&actuator_front>;
led-flash-src = <&led_flash_front>;
cam_vio-supply = <&L5I>;
cam_vdig-supply = <&L1I>;
cam_vana-supply = <&L3I>;
cam_vaf_supply = <&L6C>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
cam_bob-supply = <&BOB>;
regulator-names = "cam_vio", "cam_vdig", "cam_vana","cam_vaf"
, "cam_clk", "cam_bob";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1024000 2800000 2800000 0 3200000>;
rgltr-max-voltage = <1800000 1024000 2800000 2800000 0 3960000>;
rgltr-load-current = <10000 140000 970000 106000 0 2000000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_active_front
&cam_front_mclk_active>;
pinctrl-1 = <&cam_sensor_suspend_front
&cam_front_mclk_suspend>;
gpios = <&tlmm 64 0>,
<&tlmm 20 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET0";
cci-master = <0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&cam_cci1 {
eeprom_macro: qcom,eeprom2 {
cell-index = <2>;
compatible = "qcom,eeprom";
cam_vdig-supply = <&L6I>;
cam_vana-supply = <&L7I>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
cam_bob-supply = <&BOB>;
regulator-names = "cam_vdig", "cam_vana"
, "cam_clk", "cam_bob";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 0 3200000>;
rgltr-max-voltage = <1800000 2800000 0 3960000>;
rgltr-load-current = <140000 180000 0 2000000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_active_macro
&cam_macro_mclk_active>;
pinctrl-1 = <&cam_sensor_suspend_macro
&cam_macro_mclk_suspend>;
gpios = <&tlmm 66 0>,
<&tlmm 77 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
// MACRO GC02M1 (AVDD 2.8V ) (VIO 1.8 )
qcom,cam-sensor2 {
cell-index = <2>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <2>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_macro>;
led-flash-src = <&led_flash_macro>;
cam_vdig-supply = <&L6I>;
cam_vana-supply = <&L7I>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
cam_bob-supply = <&BOB>;
regulator-names = "cam_vdig", "cam_vana", "cam_clk", "cam_bob";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 0 3200000>;
rgltr-max-voltage = <1800000 2800000 0 3960000>;
rgltr-load-current = <140000 180000 0 2000000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_active_macro
&cam_macro_mclk_active>;
pinctrl-1 = <&cam_sensor_suspend_macro
&cam_macro_mclk_suspend>;
gpios = <&tlmm 66 0>,
<&tlmm 77 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
eeprom_ultra: qcom,eeprom3 {
cell-index = <3>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L5I>;
cam_vdig-supply = <&L2I>;
cam_vana-supply = <&L4I>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
cam_bob-supply = <&BOB>;
regulator-names = "cam_vio", "cam_vdig", "cam_vana"
,"cam_clk", "cam_bob";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1200000 2800000 0 3200000>;
rgltr-max-voltage = <1800000 1200000 2800000 0 3960000>;
rgltr-load-current = <10000 140000 180000 0 2000000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_active_ultra
&cam_ultra_mclk_active>;
pinctrl-1 = <&cam_sensor_suspend_ultra
&cam_ultra_mclk_suspend>;
gpios = <&tlmm 67 0>,
<&tlmm 78 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK3",
"CAM_RESET3";
cci-master = <1>;
clocks = <&camcc CAM_CC_MCLK3_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
// Ultra IMX355 (AVDD 2.8V ) (VIO 1.8) (DVDD 1.2 )
qcom,cam-sensor3 {
cell-index = <3>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <3>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_ultra>;
led-flash-src = <&led_flash_ultra>;
cam_vio-supply = <&L5I>;
cam_vdig-supply = <&L2I>;
cam_vana-supply = <&L4I>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
cam_bob-supply = <&BOB>;
regulator-names = "cam_vio", "cam_vdig", "cam_vana"
,"cam_clk", "cam_bob";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1200000 2800000 0 3200000>;
rgltr-max-voltage = <1800000 1200000 2800000 0 3960000>;
rgltr-load-current = <10000 140000 180000 0 2000000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_active_ultra
&cam_ultra_mclk_active>;
pinctrl-1 = <&cam_sensor_suspend_ultra
&cam_ultra_mclk_suspend>;
gpios = <&tlmm 67 0>,
<&tlmm 78 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK3",
"CAM_RESET3";
cci-master = <1>;
clocks = <&camcc CAM_CC_MCLK3_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&tlmm {
cam_wide_mclk_active: cam_wide_mclk_active {
mux {
pins = "gpio65";
function = "cam_mclk";
};
config {
pins = "gpio65";
bias-disable; /* No PULL */
drive-strength = <4>; /* 4 MA */
};
};
cam_wide_mclk_suspend: cam_wide_mclk_suspend {
mux {
pins = "gpio65";
function = "cam_mclk";
};
config {
pins = "gpio65";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 4 MA */
};
};
cam_sensor_active_wide: cam_sensor_active_wide {
/*RESET*/
mux {
pins = "gpio21","gpio108","gpio106";
function = "gpio";
};
config {
pins = "gpio21","gpio108","gpio106";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
cam_sensor_suspend_wide: cam_sensor_suspend_wide {
mux {
pins = "gpio21","gpio108","gpio106";
function = "gpio";
};
config {
pins = "gpio21","gpio108","gpio106";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
};
};
cam_front_mclk_active: cam_front_mclk_active {
mux {
pins = "gpio64";
function = "cam_mclk";
};
config {
pins = "gpio64";
bias-disable; /* No PULL */
drive-strength = <4>; /* 4 MA */
};
};
cam_front_mclk_suspend: cam_front_mclk_suspend {
mux {
pins = "gpio64";
function = "cam_mclk";
};
config {
pins = "gpio64";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 4 MA */
};
};
cam_sensor_active_front: cam_sensor_active_front {
/*RESET */
mux {
pins = "gpio20";
function = "gpio";
};
config {
pins = "gpio20";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
cam_sensor_suspend_front: cam_sensor_suspend_front {
/*RESET */
mux {
pins = "gpio20";
function = "gpio";
};
config {
pins = "gpio20";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
};
};
cam_ultra_mclk_active: cam_ultra_mclk_active {
mux {
pins = "gpio67";
function = "cam_mclk";
};
config {
pins = "gpio67";
bias-disable; /* No PULL */
drive-strength = <4>; /* 4 MA */
};
};
cam_ultra_mclk_suspend: cam_ultra_mclk_suspend {
mux {
pins = "gpio67";
function = "cam_mclk";
};
config {
pins = "gpio67";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 4 MA */
};
};
cam_sensor_active_ultra: cam_sensor_active_ultra {
/*RESET */
mux {
pins = "gpio78";
function = "gpio";
};
config {
pins = "gpio78";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
cam_sensor_suspend_ultra: cam_sensor_suspend_ultra {
mux {
pins = "gpio78";
function = "gpio";
};
config {
pins = "gpio78";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
};
};
cam_macro_mclk_active: cam_macro_mclk_active {
mux {
pins = "gpio66";
function = "cam_mclk";
};
config {
pins = "gpio66";
bias-disable; /* No PULL */
drive-strength = <4>; /* 2 MA */
};
};
cam_macro_mclk_suspend: cam_macro_mclk_suspend {
mux {
pins = "gpio66";
function = "cam_mclk";
};
config {
pins = "gpio66";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_active_macro: cam_sensor_active_macro {
mux {
pins = "gpio77";
function = "gpio";
};
config {
pins = "gpio77";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
cam_sensor_suspend_macro: cam_sensor_suspend_macro {
mux {
pins = "gpio77";
function = "gpio";
};
config {
pins = "gpio77";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
};
};
};

View File

@ -0,0 +1,120 @@
#include "yupik-audio-overlay.dtsi"
&dai_mi2s0 {
qcom,msm-mi2s-rx-lines = <2>;
qcom,msm-mi2s-tx-lines = <1>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&pri_mi2s_sck_active &pri_mi2s_ws_active
&pri_mi2s_sd0_active &pri_mi2s_sd1_active>;
pinctrl-1 = <&pri_mi2s_sck_sleep &pri_mi2s_ws_sleep
&pri_mi2s_sd0_sleep &pri_mi2s_sd1_sleep>;
};
&yupik_snd {
qcom,model = "lahaina-yupikidp-snd-card";
qcom,msm-mi2s-master = <1>, <1>, <1>, <1>, <1>, <1>;
qcom,wcn-bt = <1>;
qcom,mi2s-audio-intf = <1>;
qcom,auxpcm-audio-intf = <1>;
qcom,ext-disp-audio-rx = <0>;
qcom,afe-rxtx-lb = <0>;
qcom,audio-routing =
"AMIC1", "Analog Mic1",
"Analog Mic1", "MIC BIAS1",
"AMIC2", "Analog Mic2",
"Analog Mic2", "MIC BIAS2",
"AMIC3", "Analog Mic3",
"Analog Mic3", "MIC BIAS3",
"AMIC4", "Analog Mic4",
"Analog Mic4", "MIC BIAS3",
"IN1_HPHL", "HPHL_OUT",
"IN2_HPHR", "HPHR_OUT",
"IN3_AUX", "AUX_OUT",
"RX_TX DEC0_INP", "TX DEC0 MUX",
"RX_TX DEC1_INP", "TX DEC1 MUX",
"RX_TX DEC2_INP", "TX DEC2 MUX",
"RX_TX DEC3_INP", "TX DEC3 MUX",
"TX SWR_INPUT", "WCD_TX_OUTPUT",
"VA SWR_INPUT", "VA_SWR_CLK",
"VA SWR_INPUT", "WCD_TX_OUTPUT",
"VA_AIF1 CAP", "VA_SWR_CLK",
"VA_AIF2 CAP", "VA_SWR_CLK",
"VA_AIF3 CAP", "VA_SWR_CLK";
qcom,msm-mbhc-hphl-swh = <0>;
qcom,msm-mbhc-gnd-swh = <0>;
qcom,wsa-max-devs = <0>;
qcom,swr-dmic-max-devs = <0>;
qcom,msm-mbhc-usbc-audio-supported = <1>;
qcom,uart-audio-sw-gpio = <&sbu_uart_en>;
asoc-codec = <&stub_codec>, <&bolero>,
<&wcd937x_codec>, <&swr_haptics>,
<&wsa883x_0222>,
<&ext_disp_audio_codec>;
asoc-codec-names = "msm-stub-codec.1", "bolero_codec",
"wcd937x_codec", "swr-haptics",
"wsa-codec2",
"msm-ext-disp-audio-codec-rx";
qcom,msm_audio_ssr_devs = <&audio_apr>, <&q6core>, <&lpi_tlmm>,
<&bolero>;
};
&wcd938x_rx_slave {
status = "disabled";
};
&wcd938x_tx_slave {
status = "disabled";
};
&wcd938x_codec {
status = "disabled";
};
&wcd937x_codec {
status = "okay";
qcom,cdc-micbias1-mv = <2750>;
qcom,cdc-micbias2-mv = <2750>;
qcom,cdc-micbias3-mv = <2750>;
qcom,cdc-micbias4-mv = <2750>;
};
&wcd937x_rx_slave {
status = "okay";
};
&wcd937x_tx_slave {
status = "okay";
};
&wsa_swr_gpios {
status = "disabled";
};
&wsa_spkr_en1 {
status = "disabled";
};
&wsa_spkr_en2 {
status = "disabled";
};
&bolero {
qcom,num-macros = <3>;
};
&wsa_macro {
compatible = "qcom,wsa-macro";
status = "disabled";
};
&soc {
sbu_uart_en: msm_cdc_pinctrl@91 {
compatible = "qcom,msm-cdc-pinctrl";
pinctrl-names = "aud_active", "aud_sleep";
pinctrl-0 = <&sbu_uart_en_active>;
pinctrl-1 = <&sbu_uart_en_idle>;
#gpio-cells = <0>;
};
};

View File

@ -0,0 +1,222 @@
/*for taoyao pinctrl */
&tlmm {
sbu_uart_en_ctrl {
sbu_uart_en_idle: uart_audio_en_idle {
mux {
pins = "gpio91";
function = "gpio";
};
config {
pins = "gpio91";
drive-strength = <2>;
bias-pull-down;
output-low;
};
};
sbu_uart_en_active: uart_audio_en_active {
mux {
pins = "gpio91";
function = "gpio";
};
config {
pins = "gpio91";
drive-strength = <2>;
bias-disable;
output-high;
};
};
};
smartpa_top_int_active: smartpa_top_int_active {
/* active state */
mux {
/* GPIO 113 Interrupt */
pins = "gpio102";
function = "gpio";
};
config {
pins = "gpio102";
drive-strength = <2>; /* 2 MA */
bias-pull-up;
input-enable;
};
};
smartpa_top_int_suspend: smartpa_top_int_suspend {
/* sleep state */
mux {
/* GPIO 113 Interrupt */
pins = "gpio102";
function = "gpio";
};
config {
pins = "gpio102";
drive-strength = <2>; /* 2 MA */
bias-pull-up;
input-enable;
};
};
smartpa_enable_top_active: smartpa_enable_top_active {
/* active state */
mux {
/* GPIO 114 rst pin */
pins = "gpio2";
function = "gpio";
};
config {
pins = "gpio2";
drive-strength = <2>;
bias-disable;
bias-pull-down;
output-low;
};
};
smartpa_enable_top_suspend: smartpa_enable_top_suspend {
/* sleep state */
mux {
/* GPIO 114 rst pin */
pins = "gpio2";
function = "gpio";
};
config {
pins = "gpio2";
drive-strength = <2>;
bias-disable;
bias-pull-down;
output-low;
};
};
/* speaker switch spk-sw-gpio = <&tlmm 24 0>;
spk_sw_active: spk_sw_active {
mux {
pins = "gpio101";
function = "gpio";
};
config {
pins = "gpio101";
drive-strength = <2>;
bias-disable;
bias-pull-down;
output-low;
};
};
spk_sw_inactive: spk_sw_inactive {
mux {
pins = "gpio101";
function = "gpio";
};
config {
pins = "gpio101";
drive-strength = <2>;
bias-disable;
bias-pull-down;
output-low;
};
};*/
smartpa_bot_int_active: smartpa_bot_int_active {
/* active state */
mux {
/* GPIO 112 Interrupt */
pins = "gpio45";
function = "gpio";
};
config {
pins = "gpio45";
drive-strength = <2>; /* 2 MA */
bias-pull-up;
input-enable;
};
};
smartpa_bot_int_suspend: smartpa_bot_int_suspend {
/* sleep state */
mux {
/* GPIO 112 Interrupt */
pins = "gpio45";
function = "gpio";
};
config {
pins = "gpio45";
drive-strength = <2>; /* 2 MA */
bias-pull-up;
input-enable;
};
};
smartpa_enable_bot_active: smartpa_enable_bot_active {
/* active state */
mux {
/* GPIO 140 rst pin */
pins = "gpio2";
function = "gpio";
};
config {
pins = "gpio2";
drive-strength = <2>;
bias-disable;
bias-pull-down;
output-low;
};
};
smartpa_enable_bot_suspend: smartpa_enable_bot_suspend {
/* sleep state */
mux {
/* GPIO 140 rst pin */
pins = "gpio2";
function = "gpio";
};
config {
pins = "gpio2";
drive-strength = <2>;
bias-disable;
bias-pull-down;
output-low;
};
};
md_mode_ctrl_irq {
ant5_ctrl_irq: ant5_ctrl_irq {
mux {
pins = "gpio129";
function = "gpio";
};
config {
pins = "gpio129";
drive-strength = <2>;
bias-disable;
input-enable;
};
};
ant10_ctrl_irq: ant10_ctrl_irq {
mux {
pins = "gpio123";
function = "gpio";
};
config {
pins = "gpio123";
drive-strength = <2>;
bias-disable;
input-enable;
};
};
};
};

View File

@ -0,0 +1,12 @@
/dts-v1/;
/plugin/;
#include "taoyao-sm7325-pm7250b.dtsi"
/ {
model = "taoyao based Qualcomm Technologies, Inc. Yupik IDP + PM7250B";
compatible = "qcom,yupik-idp", "qcom,yupik", "qcom,idp";
qcom,msm-id = <475 0x10000>, <515 0x10000>;
qcom,board-id = <0x1000B 0>;
xiaomi,board-id = <0xD 0>;
};

View File

@ -0,0 +1,192 @@
/*
this file is for attribution only of mona
And public attribution of xiaomi platforms
*/
#include "xiaomi-sm7325-pm7250b-common.dtsi"
#include "camera/taoyao-sm7325-camera-sensor.dtsi"
#include "taoyao-pinctrl.dtsi"
#include "taoyao-audio-overlay.dtsi"
&sdhc_2 {
status = "disabled";
};
&qupv3_se15_spi {
status = "ok";
ir-spi@0 {
compatible = "ir-spi";
reg = <0>;
spi-max-frequency = <19200000>;
status = "ok";
};
};
&ufshc_mem {
vdd-hba-supply = <&gcc_ufs_phy_gdsc>;
vdd-hba-fixed-regulator;
vcc-supply = <&L7B>;
vcc-voltage-level = <2952000 2952000>;
vcc-low-voltage-sup;
vcc-max-microamp = <800000>;
ufs_limit_num_lanes_tx_1;
/*
* Yupik target supports both UFS2.2 & UFS3.1, here
* vccq2 is supplied via eLDO, and that is controlled via
* L9B which supports a max voltage of 1.2V, but eLDO would
* supply 1.8V. and same L9B acts as vccq voltage for UFS3.1
* devices.
* Here L9B can max support for 1.2V but UFS GKI driver code
* votes for 1.8V, which is leading to failure from pmic
* regulator.
*
* Now since vccq and control of eLDO are common that is L9B
* we can use vccq vote as control of eLDO for vccq2.
* Hence vccq entries shall be used for both type of UFS
* devices only. And vccq entries should not be changed/removed
* for any design alteration.
*/
vccq-supply = <&L9B>;
vccq-max-microamp = <900000>;
vccq-min-microamp = <10000>;
qcom,vddp-ref-clk-supply = <&L9B>;
qcom,vddp-ref-clk-max-microamp = <100>;
status = "ok";
};
&pmk8350_vadc {
pm7325_pa_2gtherm {
reg = <PM7325_ADC7_GPIO3_100K_PU>;
label = "pm7325_pa_2gtherm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
pm7325_pa_4gtherm {
reg = <PM7325_ADC7_AMUX_THM5_100K_PU>;
label = "pm7325_pa_4gtherm";
qcom,ratiometric;
qcom,hw-settle-time = <200>;
qcom,pre-scaling = <1 1>;
};
};
&pmk8350_adc_tm {
io-channels = <&pmk8350_vadc PM7325_ADC7_AMUX_THM1_100K_PU>,
<&pmk8350_vadc PM7325_ADC7_AMUX_THM2_100K_PU>,
<&pmk8350_vadc PM7325_ADC7_AMUX_THM3_100K_PU>,
<&pmk8350_vadc PM7325_ADC7_AMUX_THM4_100K_PU>,
<&pmk8350_vadc PM7325_ADC7_GPIO3_100K_PU>,
<&pmk8350_vadc PM7325_ADC7_AMUX_THM5_100K_PU>,
<&pmk8350_vadc PMK8350_ADC7_AMUX_THM1_100K_PU>;
pm7325_pa_2gtherm {
reg = <PM7325_ADC7_GPIO3_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
pm7325_pa_4gtherm {
reg = <PM7325_ADC7_AMUX_THM5_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
};
&thermal_zones {
pa_2gtherm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pmk8350_adc_tm PM7325_ADC7_GPIO3_100K_PU>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
pa_4gtherm {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pmk8350_adc_tm PM7325_ADC7_AMUX_THM5_100K_PU>;
wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
};
};
};
&soc {
md_testing_mode {
compatible = "modem,md-testing-mode";
status-gpio = <&tlmm 129 0x00>,
<&tlmm 123 0x00>;
debounce-time = <30>;
pinctrl-names = "default";
pinctrl-0 = <&ant5_ctrl_irq &ant10_ctrl_irq>;
};
};
&usb2_phy0 {
mi,factory-usb;
qcom,param-override-seq-fac =
<0xe7 0x6c /* override_x0 */
0xc6 0x70 /* override_x1 */
0x0b 0x74>; /* override x2 */
qcom,param-override-seq =
<0xe7 0x6c /* override_x0 */
0xc6 0x70 /* override_x1 */
0x0b 0x74>; /* override x2 */
};
&reserved_memory {
removed_mem: removed_region@c0000000 {
no-map;
reg = <0x0 0xc0000000 0x0 0x6800000>;
};
};
&soc {
qcom_qseecom: qseecom@c1800000 {
compatible = "qcom,qseecom";
reg = <0xc1800000 0x5000000>;
reg-names = "secapp-region";
memory-region = <&qseecom_mem>;
qcom,hlos-num-ce-hw-instances = <1>;
qcom,hlos-ce-hw-instance = <0>;
qcom,qsee-ce-hw-instance = <0>;
qcom,disk-encrypt-pipe-pair = <2>;
qcom,support-fde;
qcom,no-clock-support;
qcom,fde-key-size;
qcom,appsbl-qseecom-support;
qcom,commonlib64-loaded-by-uefi;
qcom,qsee-reentrancy-support = <2>;
};
};
&qseecom_ta_mem {
size = <0x0 0x2000000>;
};
&qseecom_mem {
size = <0x0 0x2400000>;
};