aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/pinctrl-tegra124.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pinctrl/pinctrl-tegra124.c')
-rw-r--r--drivers/pinctrl/pinctrl-tegra124.c32
1 files changed, 16 insertions, 16 deletions
diff --git a/drivers/pinctrl/pinctrl-tegra124.c b/drivers/pinctrl/pinctrl-tegra124.c
index 2b20906c5356..7cd44c7c296d 100644
--- a/drivers/pinctrl/pinctrl-tegra124.c
+++ b/drivers/pinctrl/pinctrl-tegra124.c
@@ -1536,6 +1536,7 @@ enum tegra_mux {
1536 TEGRA_MUX_CLK, 1536 TEGRA_MUX_CLK,
1537 TEGRA_MUX_CLK12, 1537 TEGRA_MUX_CLK12,
1538 TEGRA_MUX_CPU, 1538 TEGRA_MUX_CPU,
1539 TEGRA_MUX_CSI,
1539 TEGRA_MUX_DAP, 1540 TEGRA_MUX_DAP,
1540 TEGRA_MUX_DAP1, 1541 TEGRA_MUX_DAP1,
1541 TEGRA_MUX_DAP2, 1542 TEGRA_MUX_DAP2,
@@ -1544,6 +1545,7 @@ enum tegra_mux {
1544 TEGRA_MUX_DISPLAYA_ALT, 1545 TEGRA_MUX_DISPLAYA_ALT,
1545 TEGRA_MUX_DISPLAYB, 1546 TEGRA_MUX_DISPLAYB,
1546 TEGRA_MUX_DP, 1547 TEGRA_MUX_DP,
1548 TEGRA_MUX_DSI_B,
1547 TEGRA_MUX_DTV, 1549 TEGRA_MUX_DTV,
1548 TEGRA_MUX_EXTPERIPH1, 1550 TEGRA_MUX_EXTPERIPH1,
1549 TEGRA_MUX_EXTPERIPH2, 1551 TEGRA_MUX_EXTPERIPH2,
@@ -1613,8 +1615,6 @@ enum tegra_mux {
1613 TEGRA_MUX_VI_ALT3, 1615 TEGRA_MUX_VI_ALT3,
1614 TEGRA_MUX_VIMCLK2, 1616 TEGRA_MUX_VIMCLK2,
1615 TEGRA_MUX_VIMCLK2_ALT, 1617 TEGRA_MUX_VIMCLK2_ALT,
1616 TEGRA_MUX_CSI,
1617 TEGRA_MUX_DSI_B,
1618}; 1618};
1619 1619
1620#define FUNCTION(fname) \ 1620#define FUNCTION(fname) \
@@ -1630,6 +1630,7 @@ static struct tegra_function tegra124_functions[] = {
1630 FUNCTION(clk), 1630 FUNCTION(clk),
1631 FUNCTION(clk12), 1631 FUNCTION(clk12),
1632 FUNCTION(cpu), 1632 FUNCTION(cpu),
1633 FUNCTION(csi),
1633 FUNCTION(dap), 1634 FUNCTION(dap),
1634 FUNCTION(dap1), 1635 FUNCTION(dap1),
1635 FUNCTION(dap2), 1636 FUNCTION(dap2),
@@ -1638,6 +1639,7 @@ static struct tegra_function tegra124_functions[] = {
1638 FUNCTION(displaya_alt), 1639 FUNCTION(displaya_alt),
1639 FUNCTION(displayb), 1640 FUNCTION(displayb),
1640 FUNCTION(dp), 1641 FUNCTION(dp),
1642 FUNCTION(dsi_b),
1641 FUNCTION(dtv), 1643 FUNCTION(dtv),
1642 FUNCTION(extperiph1), 1644 FUNCTION(extperiph1),
1643 FUNCTION(extperiph2), 1645 FUNCTION(extperiph2),
@@ -1707,15 +1709,15 @@ static struct tegra_function tegra124_functions[] = {
1707 FUNCTION(vi_alt3), 1709 FUNCTION(vi_alt3),
1708 FUNCTION(vimclk2), 1710 FUNCTION(vimclk2),
1709 FUNCTION(vimclk2_alt), 1711 FUNCTION(vimclk2_alt),
1710 FUNCTION(csi),
1711 FUNCTION(dsi_b),
1712}; 1712};
1713 1713
1714#define DRV_PINGROUP_REG_A 0x868 /* bank 0 */ 1714#define DRV_PINGROUP_REG_A 0x868 /* bank 0 */
1715#define PINGROUP_REG_A 0x3000 /* bank 1 */ 1715#define PINGROUP_REG_A 0x3000 /* bank 1 */
1716#define MIPI_PAD_CTRL_PINGROUP_REG_A 0x820 /* bank 2 */ 1716#define MIPI_PAD_CTRL_PINGROUP_REG_A 0x820 /* bank 2 */
1717 1717
1718#define DRV_PINGROUP_REG(r) ((r) - DRV_PINGROUP_REG_A)
1718#define PINGROUP_REG(r) ((r) - PINGROUP_REG_A) 1719#define PINGROUP_REG(r) ((r) - PINGROUP_REG_A)
1720#define MIPI_PAD_CTRL_PINGROUP_REG_Y(r) ((r) - MIPI_PAD_CTRL_PINGROUP_REG_A)
1719 1721
1720#define PINGROUP_BIT_Y(b) (b) 1722#define PINGROUP_BIT_Y(b) (b)
1721#define PINGROUP_BIT_N(b) (-1) 1723#define PINGROUP_BIT_N(b) (-1)
@@ -1740,20 +1742,17 @@ static struct tegra_function tegra124_functions[] = {
1740 .tri_reg = PINGROUP_REG(r), \ 1742 .tri_reg = PINGROUP_REG(r), \
1741 .tri_bank = 1, \ 1743 .tri_bank = 1, \
1742 .tri_bit = 4, \ 1744 .tri_bit = 4, \
1743 .einput_bit = PINGROUP_BIT_Y(5), \ 1745 .einput_bit = 5, \
1744 .odrain_bit = PINGROUP_BIT_##od(6), \ 1746 .odrain_bit = PINGROUP_BIT_##od(6), \
1745 .lock_bit = PINGROUP_BIT_Y(7), \ 1747 .lock_bit = 7, \
1746 .ioreset_bit = PINGROUP_BIT_##ior(8), \ 1748 .ioreset_bit = PINGROUP_BIT_##ior(8), \
1747 .rcv_sel_bit = PINGROUP_BIT_##rcv_sel(9), \ 1749 .rcv_sel_bit = PINGROUP_BIT_##rcv_sel(9), \
1748 .drv_reg = -1, \ 1750 .drv_reg = -1, \
1749 } 1751 }
1750 1752
1751#define DRV_PINGROUP_REG(r) ((r) - DRV_PINGROUP_REG_A) 1753#define DRV_PINGROUP(pg_name, r, hsm_b, schmitt_b, lpmd_b, drvdn_b, \
1752 1754 drvdn_w, drvup_b, drvup_w, slwr_b, slwr_w, \
1753#define DRV_PINGROUP(pg_name, r, hsm_b, schmitt_b, lpmd_b, \ 1755 slwf_b, slwf_w, drvtype) \
1754 drvdn_b, drvdn_w, drvup_b, drvup_w, \
1755 slwr_b, slwr_w, slwf_b, slwf_w, \
1756 drvtype) \
1757 { \ 1756 { \
1758 .name = "drive_" #pg_name, \ 1757 .name = "drive_" #pg_name, \
1759 .pins = drive_##pg_name##_pins, \ 1758 .pins = drive_##pg_name##_pins, \
@@ -1782,8 +1781,6 @@ static struct tegra_function tegra124_functions[] = {
1782 .drvtype_bit = PINGROUP_BIT_##drvtype(6), \ 1781 .drvtype_bit = PINGROUP_BIT_##drvtype(6), \
1783 } 1782 }
1784 1783
1785#define MIPI_PAD_CTRL_PINGROUP_REG_Y(r) ((r) - MIPI_PAD_CTRL_PINGROUP_REG_A)
1786
1787#define MIPI_PAD_CTRL_PINGROUP(pg_name, r, b, f0, f1) \ 1784#define MIPI_PAD_CTRL_PINGROUP(pg_name, r, b, f0, f1) \
1788 { \ 1785 { \
1789 .name = "mipi_pad_ctrl_" #pg_name, \ 1786 .name = "mipi_pad_ctrl_" #pg_name, \
@@ -2044,8 +2041,8 @@ static const struct tegra_pingroup tegra124_groups[] = {
2044 DRV_PINGROUP(sdio4, 0x9c4, 2, 3, 4, 12, 5, 20, 5, 28, 2, 30, 2, N), 2041 DRV_PINGROUP(sdio4, 0x9c4, 2, 3, 4, 12, 5, 20, 5, 28, 2, 30, 2, N),
2045 DRV_PINGROUP(ao4, 0x9c8, 2, 3, 4, 12, 7, 20, 7, 28, 2, 30, 2, Y), 2042 DRV_PINGROUP(ao4, 0x9c8, 2, 3, 4, 12, 7, 20, 7, 28, 2, 30, 2, Y),
2046 2043
2047 /* pg_name, r b f0, f1 */ 2044 /* pg_name, r, b, f0, f1 */
2048 MIPI_PAD_CTRL_PINGROUP(dsi_b, 0x820, 1, CSI, DSI_B) 2045 MIPI_PAD_CTRL_PINGROUP(dsi_b, 0x820, 1, CSI, DSI_B),
2049}; 2046};
2050 2047
2051static const struct tegra_pinctrl_soc_data tegra124_pinctrl = { 2048static const struct tegra_pinctrl_soc_data tegra124_pinctrl = {
@@ -2056,6 +2053,9 @@ static const struct tegra_pinctrl_soc_data tegra124_pinctrl = {
2056 .nfunctions = ARRAY_SIZE(tegra124_functions), 2053 .nfunctions = ARRAY_SIZE(tegra124_functions),
2057 .groups = tegra124_groups, 2054 .groups = tegra124_groups,
2058 .ngroups = ARRAY_SIZE(tegra124_groups), 2055 .ngroups = ARRAY_SIZE(tegra124_groups),
2056 .hsm_in_mux = false,
2057 .schmitt_in_mux = false,
2058 .drvtype_in_mux = false,
2059}; 2059};
2060 2060
2061static int tegra124_pinctrl_probe(struct platform_device *pdev) 2061static int tegra124_pinctrl_probe(struct platform_device *pdev)