27cae365aa8875365036a93da5058732fd5d2dc3
[openwrt/staging/wigyori.git] / target / linux / lantiq / patches-3.10 / 0027-pinctrl-lantiq-add-missing-gphy-led-setup.patch
1 From 5164a36bb033e805c40da76558ceddc82741989b Mon Sep 17 00:00:00 2001
2 From: John Crispin <blogic@openwrt.org>
3 Date: Fri, 9 Aug 2013 20:38:15 +0200
4 Subject: [PATCH 27/34] pinctrl/lantiq: add missing gphy led setup
5
6 We found out how to set the gphy led pinmuxing.
7
8 Signed-off-by: John Crispin <blogic@openwrt.org>
9 ---
10 drivers/pinctrl/pinctrl-xway.c | 30 ++++++++++++++++++++++++------
11 1 file changed, 24 insertions(+), 6 deletions(-)
12
13 diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c
14 index e40b2e6..b159fd5 100644
15 --- a/drivers/pinctrl/pinctrl-xway.c
16 +++ b/drivers/pinctrl/pinctrl-xway.c
17 @@ -102,6 +102,7 @@ enum xway_mux {
18 XWAY_MUX_EPHY,
19 XWAY_MUX_DFE,
20 XWAY_MUX_SDIO,
21 + XWAY_MUX_GPHY,
22 XWAY_MUX_NONE = 0xffff,
23 };
24
25 @@ -109,12 +110,12 @@ static const struct ltq_mfp_pin xway_mfp[] = {
26 /* pin f0 f1 f2 f3 */
27 MFP_XWAY(GPIO0, GPIO, EXIN, NONE, TDM),
28 MFP_XWAY(GPIO1, GPIO, EXIN, NONE, NONE),
29 - MFP_XWAY(GPIO2, GPIO, CGU, EXIN, NONE),
30 + MFP_XWAY(GPIO2, GPIO, CGU, EXIN, GPHY),
31 MFP_XWAY(GPIO3, GPIO, CGU, NONE, PCI),
32 MFP_XWAY(GPIO4, GPIO, STP, NONE, ASC),
33 - MFP_XWAY(GPIO5, GPIO, STP, NONE, NONE),
34 + MFP_XWAY(GPIO5, GPIO, STP, NONE, GPHY),
35 MFP_XWAY(GPIO6, GPIO, STP, GPT, ASC),
36 - MFP_XWAY(GPIO7, GPIO, CGU, PCI, NONE),
37 + MFP_XWAY(GPIO7, GPIO, CGU, PCI, GPHY),
38 MFP_XWAY(GPIO8, GPIO, CGU, NMI, NONE),
39 MFP_XWAY(GPIO9, GPIO, ASC, SPI, EXIN),
40 MFP_XWAY(GPIO10, GPIO, ASC, SPI, NONE),
41 @@ -151,10 +152,10 @@ static const struct ltq_mfp_pin xway_mfp[] = {
42 MFP_XWAY(GPIO41, GPIO, NONE, NONE, NONE),
43 MFP_XWAY(GPIO42, GPIO, MDIO, NONE, NONE),
44 MFP_XWAY(GPIO43, GPIO, MDIO, NONE, NONE),
45 - MFP_XWAY(GPIO44, GPIO, NONE, NONE, SIN),
46 - MFP_XWAY(GPIO45, GPIO, NONE, NONE, SIN),
47 + MFP_XWAY(GPIO44, GPIO, NONE, GPHY, SIN),
48 + MFP_XWAY(GPIO45, GPIO, NONE, GPHY, SIN),
49 MFP_XWAY(GPIO46, GPIO, NONE, NONE, EXIN),
50 - MFP_XWAY(GPIO47, GPIO, NONE, NONE, SIN),
51 + MFP_XWAY(GPIO47, GPIO, NONE, GPHY, SIN),
52 MFP_XWAY(GPIO48, GPIO, EBU, NONE, NONE),
53 MFP_XWAY(GPIO49, GPIO, EBU, NONE, NONE),
54 MFP_XWAY(GPIO50, GPIO, NONE, NONE, NONE),
55 @@ -208,6 +209,13 @@ static const unsigned pins_stp[] = {GPIO4, GPIO5, GPIO6};
56 static const unsigned pins_nmi[] = {GPIO8};
57 static const unsigned pins_mdio[] = {GPIO42, GPIO43};
58
59 +static const unsigned pins_gphy0_led0[] = {GPIO5};
60 +static const unsigned pins_gphy0_led1[] = {GPIO7};
61 +static const unsigned pins_gphy0_led2[] = {GPIO2};
62 +static const unsigned pins_gphy1_led0[] = {GPIO44};
63 +static const unsigned pins_gphy1_led1[] = {GPIO45};
64 +static const unsigned pins_gphy1_led2[] = {GPIO47};
65 +
66 static const unsigned pins_ebu_a24[] = {GPIO13};
67 static const unsigned pins_ebu_clk[] = {GPIO21};
68 static const unsigned pins_ebu_cs1[] = {GPIO23};
69 @@ -322,6 +330,12 @@ static const struct ltq_pin_group xway_grps[] = {
70 GRP_MUX("gnt4", PCI, pins_pci_gnt4),
71 GRP_MUX("req4", PCI, pins_pci_gnt4),
72 GRP_MUX("mdio", MDIO, pins_mdio),
73 + GRP_MUX("gphy0 led0", GPHY, pins_gphy0_led0),
74 + GRP_MUX("gphy0 led1", GPHY, pins_gphy0_led1),
75 + GRP_MUX("gphy0 lde2", GPHY, pins_gphy0_led2),
76 + GRP_MUX("gphy1 led0", GPHY, pins_gphy1_led0),
77 + GRP_MUX("gphy1 led1", GPHY, pins_gphy1_led1),
78 + GRP_MUX("gphy1 lde2", GPHY, pins_gphy1_led2),
79 };
80
81 static const struct ltq_pin_group ase_grps[] = {
82 @@ -365,6 +379,9 @@ static const char * const xway_nmi_grps[] = {"nmi"};
83
84 /* ar9/vr9/gr9 */
85 static const char * const xrx_mdio_grps[] = {"mdio"};
86 +static const char * const xrx_gphy_grps[] = {"gphy0 led0", "gphy0 led1",
87 + "gphy0 led2", "gphy1 led0",
88 + "gphy1 led1", "gphy1 led2"};
89 static const char * const xrx_ebu_grps[] = {"ebu a23", "ebu a24",
90 "ebu a25", "ebu cs1",
91 "ebu wait", "ebu clk",
92 @@ -414,6 +431,7 @@ static const struct ltq_pmx_func xrx_funcs[] = {
93 {"pci", ARRAY_AND_SIZE(xrx_pci_grps)},
94 {"ebu", ARRAY_AND_SIZE(xrx_ebu_grps)},
95 {"mdio", ARRAY_AND_SIZE(xrx_mdio_grps)},
96 + {"gphy", ARRAY_AND_SIZE(xrx_gphy_grps)},
97 };
98
99 static const struct ltq_pmx_func ase_funcs[] = {
100 --
101 1.7.10.4
102