Commit 0504271c8dfe2247401de4f153e9224535e622c2
Committed by
Linus Walleij
1 parent
35d1480694
Exists in
smarc-l5.0.0_1.0.0-ga
and in
5 other branches
pinctrl: SPEAr1340: Add clcd sleep mode pin configuration
CLCD pads must be configured differently for sleep mode. This patch adds support for clcd_sleep_pingroup. Signed-off-by: Vipul Kumar Samar <vipulkumar.samar@st.com> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Showing 1 changed file with 38 additions and 1 deletions Side-by-side Diff
drivers/pinctrl/spear/pinctrl-spear1340.c
... | ... | @@ -1692,7 +1692,43 @@ |
1692 | 1692 | .nmodemuxs = ARRAY_SIZE(clcd_modemux), |
1693 | 1693 | }; |
1694 | 1694 | |
1695 | -static const char *const clcd_grps[] = { "clcd_grp" }; | |
1695 | +/* Disable cld runtime to save panel damage */ | |
1696 | +static struct spear_muxreg clcd_sleep_muxreg[] = { | |
1697 | + { | |
1698 | + .reg = PAD_SHARED_IP_EN_1, | |
1699 | + .mask = ARM_TRACE_MASK | MIPHY_DBG_MASK, | |
1700 | + .val = 0, | |
1701 | + }, { | |
1702 | + .reg = PAD_FUNCTION_EN_5, | |
1703 | + .mask = CLCD_REG4_MASK | CLCD_AND_ARM_TRACE_REG4_MASK, | |
1704 | + .val = 0x0, | |
1705 | + }, { | |
1706 | + .reg = PAD_FUNCTION_EN_6, | |
1707 | + .mask = CLCD_AND_ARM_TRACE_REG5_MASK, | |
1708 | + .val = 0x0, | |
1709 | + }, { | |
1710 | + .reg = PAD_FUNCTION_EN_7, | |
1711 | + .mask = CLCD_AND_ARM_TRACE_REG6_MASK, | |
1712 | + .val = 0x0, | |
1713 | + }, | |
1714 | +}; | |
1715 | + | |
1716 | +static struct spear_modemux clcd_sleep_modemux[] = { | |
1717 | + { | |
1718 | + .muxregs = clcd_sleep_muxreg, | |
1719 | + .nmuxregs = ARRAY_SIZE(clcd_sleep_muxreg), | |
1720 | + }, | |
1721 | +}; | |
1722 | + | |
1723 | +static struct spear_pingroup clcd_sleep_pingroup = { | |
1724 | + .name = "clcd_sleep_grp", | |
1725 | + .pins = clcd_pins, | |
1726 | + .npins = ARRAY_SIZE(clcd_pins), | |
1727 | + .modemuxs = clcd_sleep_modemux, | |
1728 | + .nmodemuxs = ARRAY_SIZE(clcd_sleep_modemux), | |
1729 | +}; | |
1730 | + | |
1731 | +static const char *const clcd_grps[] = { "clcd_grp", "clcd_sleep_grp" }; | |
1696 | 1732 | static struct spear_function clcd_function = { |
1697 | 1733 | .name = "clcd", |
1698 | 1734 | .groups = clcd_grps, |
... | ... | @@ -1893,6 +1929,7 @@ |
1893 | 1929 | &sdhci_pingroup, |
1894 | 1930 | &cf_pingroup, |
1895 | 1931 | &xd_pingroup, |
1932 | + &clcd_sleep_pingroup, | |
1896 | 1933 | &clcd_pingroup, |
1897 | 1934 | &arm_trace_pingroup, |
1898 | 1935 | &miphy_dbg_pingroup, |