diff --git a/arch/arm/boot/dts/qcom/msm8916.dtsi b/arch/arm/boot/dts/qcom/msm8916.dtsi index acb4f05ed121..f4fa09acdae5 100644 --- a/arch/arm/boot/dts/qcom/msm8916.dtsi +++ b/arch/arm/boot/dts/qcom/msm8916.dtsi @@ -1283,11 +1283,9 @@ interrupt-names = "spi_irq", "spi_bam_irq"; interrupts = <0 97 0>, <0 238 0>; spi-max-frequency = <50000000>; - pinctrl-names = "default", "sleep", "cs0_active", "cs0_sleep"; - pinctrl-0 = <&spi0_default>; - pinctrl-1 = <&spi0_sleep>; - pinctrl-2 = <&spi0_cs0_active>; - pinctrl-3 = <&spi0_cs0_sleep>; + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&spi0_default &spi0_cs0_active>; + pinctrl-1 = <&spi0_sleep &spi0_cs0_sleep>; clocks = <&clock_gcc clk_gcc_blsp1_ahb_clk>, <&clock_gcc clk_gcc_blsp1_qup3_spi_apps_clk>; clock-names = "iface_clk", "core_clk"; diff --git a/drivers/spi/spi_qsd.c b/drivers/spi/spi_qsd.c index 27f5f0ed8332..8dd75a45328e 100644 --- a/drivers/spi/spi_qsd.c +++ b/drivers/spi/spi_qsd.c @@ -91,8 +91,6 @@ static inline void msm_spi_register_init(struct msm_spi *dd) static int msm_spi_pinctrl_init(struct msm_spi *dd) { - int i; - dd->pinctrl = devm_pinctrl_get(dd->dev); if (IS_ERR_OR_NULL(dd->pinctrl)) { dev_err(dd->dev, "Failed to get pin ctrl\n"); @@ -112,20 +110,6 @@ static int msm_spi_pinctrl_init(struct msm_spi *dd) return PTR_ERR(dd->pins_sleep); } - for (i = 0; i <= SPI_NUM_CHIPSELECTS-1; i++) { - dd->pins_cs_active[i] = pinctrl_lookup_state(dd->pinctrl, - pinctrl_cs_pin_name[i][0]); - - if (IS_ERR_OR_NULL(dd->pins_cs_active[i])) - dev_info(dd->dev, - "Failed to lookup pinctrl cs[%d] default state\n", i); - - dd->pins_cs_sleep[i] = pinctrl_lookup_state(dd->pinctrl, - pinctrl_cs_pin_name[i][1]); - if (IS_ERR_OR_NULL(dd->pins_cs_sleep[i])) - dev_info(dd->dev, - "Failed to lookup pinctrl cs[%d] sleep state\n", i); - } return 0; } @@ -213,16 +197,6 @@ static inline int msm_spi_request_cs_gpio(struct msm_spi *dd) } dd->cs_gpios[cs_num].valid = 1; } - } else { - if (!IS_ERR_OR_NULL(dd->pins_cs_active[cs_num])) { - rc = pinctrl_select_state(dd->pinctrl, - dd->pins_cs_active[cs_num]); - if (rc) { - dev_err(dd->dev, "%s: Can not set %s pins\n", - __func__, PINCTRL_STATE_DEFAULT); - return rc; - } - } } } return 0; @@ -230,7 +204,7 @@ static inline int msm_spi_request_cs_gpio(struct msm_spi *dd) static inline void msm_spi_free_cs_gpio(struct msm_spi *dd) { - int cs_num, rc; + int cs_num; cs_num = dd->cur_msg->spi->chip_select; if (!dd->pdata->use_pinctrl) { @@ -238,14 +212,6 @@ static inline void msm_spi_free_cs_gpio(struct msm_spi *dd) gpio_free(dd->cs_gpios[cs_num].gpio_num); dd->cs_gpios[cs_num].valid = 0; } - } else { - if (!IS_ERR_OR_NULL(dd->pins_cs_sleep[cs_num])) { - rc = pinctrl_select_state(dd->pinctrl, - dd->pins_cs_sleep[cs_num]); - if (rc) - dev_err(dd->dev, "%s: Can not set %s pins\n", - __func__, PINCTRL_STATE_DEFAULT); - } } } diff --git a/drivers/spi/spi_qsd.h b/drivers/spi/spi_qsd.h index eb76ab136469..4b170c902375 100644 --- a/drivers/spi/spi_qsd.h +++ b/drivers/spi/spi_qsd.h @@ -370,15 +370,6 @@ struct msm_spi { struct pinctrl *pinctrl; struct pinctrl_state *pins_active; struct pinctrl_state *pins_sleep; - struct pinctrl_state *pins_cs_active[SPI_NUM_CHIPSELECTS]; - struct pinctrl_state *pins_cs_sleep[SPI_NUM_CHIPSELECTS]; -}; - -static const char *pinctrl_cs_pin_name[][SPI_NUM_CHIPSELECTS] = { - {"cs0_active", "cs0_sleep"}, - {"cs1_active", "cs1_sleep"}, - {"cs2_active", "cs2_sleep"}, - {"cs3_active", "cs3_sleep"}, }; /* Forward declaration */