//=========================================== spi5
msm8953.dtsi
aliases {
spi5 = &spi_5;
};
spi_5: spi@7af5000 { /* BLSP1 QUP5 */
compatible = "qcom,spi-qup-v2";
#address-cells = <1>;
#size-cells = <0>;
reg-names = "spi_physical", "spi_bam_physical";
reg = <0x7af5000 0x600>,
<0x7ac4000 0x1f000>;
interrupt-names = "spi_irq", "spi_bam_irq";
interrupts = <0 299 0>, <0 239 0>;
spi-max-frequency = <19200000>;
pinctrl-names = "spi_default", "spi_sleep";
pinctrl-0 = <&spi5_default &spi5_cs0_active>;
pinctrl-1 = <&spi5_sleep &spi5_cs0_sleep>;
clocks = <&clock_gcc clk_gcc_blsp2_ahb_clk>,
<&clock_gcc clk_gcc_blsp2_qup1_spi_apps_clk>;
clock-names = "iface_clk", "core_clk";
qcom,infinite-mode = <0>;
qcom,use-bam;
qcom,use-pinctrl;
qcom,ver-reg-exists;
qcom,bam-consumer-pipe-index = <4>;
qcom,bam-producer-pipe-index = <5>;
qcom,master-id = <84>;
};
msm8953-pinctrl.dtsi
spi5 {
spi5_default: spi5_default {
/* active state */
mux {
/* MOSI, MISO, CLK */
pins = "gpio16", "gpio17", "gpio19";
function = "blsp_spi3";
};
config {
pins = "gpio16", "gpio17", "gpio19";
drive-strength = <12>; /* 12 MA */
bias-disable = <0>; /* No PULL */
};
};
spi5_sleep: spi5_sleep {
/* suspended state */
mux {
/* MOSI, MISO, CLK */
pins = "gpio16", "gpio17", "gpio19";
function = "gpio";
};
config {
pins = "gpio16", "gpio17", "gpio19";
drive-strength = <2>; /* 2 MA */
bias-pull-down; /* PULL Down */
};
};
spi5_cs0_active: cs0_active {
/* CS */
mux {
pins = "gpio18";
function = "blsp_spi3";
};
config {
pins = "gpio18";
drive-strength = <2>;
bias-disable = <0>;
};
};
spi5_cs0_sleep: cs0_sleep {
/* CS */
mux {
pins = "gpio18";
function = "gpio";
};
config {
pins = "gpio18";
drive-strength = <2>;
bias-disable = <0>;
};
};
};
//=========================================== spi6
项目名-msm8953.dtsi
aliases {
spi6 = &spi_6;
};
#if 1
spi_6: spi@7af6000 { /* BLSP1 QUP6 */
compatible = "qcom,spi-qup-v2";
#address-cells = <1>;
#size-cells = <0>;
reg-names = "spi_physical", "spi_bam_physical";
reg = <0x7af6000 0x600>,
<0x7ac4000 0x1f000>;
interrupt-names = "spi_irq", "spi_bam_irq";
interrupts = <0 300 0>, <0 239 0>;
spi-max-frequency = <19200000>;
pinctrl-names = "spi_default", "spi_sleep";
pinctrl-0 = <&spi6_default &spi6_cs0_active>;
pinctrl-1 = <&spi6_sleep &spi6_cs0_sleep>;
clocks = <&clock_gcc clk_gcc_blsp2_ahb_clk>,
<&clock_gcc clk_gcc_blsp2_qup2_spi_apps_clk>;
clock-names = "iface_clk", "core_clk";
qcom,infinite-mode = <0>;
qcom,use-bam;
qcom,use-pinctrl;
qcom,ver-reg-exists;
qcom,bam-consumer-pipe-index = <6>;
qcom,bam-producer-pipe-index = <7>;
qcom,master-id = <84>;
};
#endif
项目名-msm8953-pinctrl.dtsi
#if 1
spi6 {
spi6_default: spi6_default {
/* active state */
mux {
/* MOSI, MISO, CLK */
pins = "gpio20", "gpio21", "gpio23";
function = "blsp_spi6";
};
config {
pins = "gpio20", "gpio21", "gpio23";
drive-strength = <12>; /* 12 MA */
bias-disable = <0>; /* No PULL */
};
};
spi6_sleep: spi6_sleep {
/* suspended state */
mux {
/* MOSI, MISO, CLK */
pins = "gpio20", "gpio21", "gpio23";
function = "gpio";
};
config {
pins = "gpio20", "gpio21", "gpio23";
drive-strength = <2>; /* 2 MA */
bias-pull-down; /* PULL Down */
};
};
spi6_cs0_active: cs0_active {
/* CS */
mux {
pins = "gpio22";
function = "blsp_spi6";
};
config {
pins = "gpio22";
drive-strength = <2>;
bias-disable = <0>;
};
};
spi6_cs0_sleep: cs0_sleep {
/* CS */
mux {
pins = "gpio22";
function = "gpio";
};
config {
pins = "gpio22";
drive-strength = <2>;
bias-disable = <0>;
};
};
};
#endif