1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
From b266e1a7ff8073d0437fcafc51ba5f97bf523fc5 Mon Sep 17 00:00:00 2001
From: David Andrey <david.andrey@netmodule.com>
Date: Fri, 27 Jun 2014 11:39:31 +0200
Subject: [PATCH 2/7] zx3: phy: adapt marvell settings
The onboard PHY is compatible with the 88E1116R,
based on the UID at least
Marvell settings are overwritten to met the board
requirements
Signed-off-by: David Andrey <david.andrey@netmodule.com>
---
drivers/net/phy/marvell.c | 19 ++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)
diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c
index bd37e45..d36686a 100644
--- a/drivers/net/phy/marvell.c
+++ b/drivers/net/phy/marvell.c
@@ -414,11 +414,28 @@ static int m88e1116r_config_init(struct phy_device *phydev)
if (err < 0)
return err;
temp = phy_read(phydev, MII_M1116R_CONTROL_REG_MAC);
- temp |= (1 << 5);
+ temp &= ~(1 << 5); /* @@ NetModule, da, set correct mode for ZE7000 board */
temp |= (1 << 4);
err = phy_write(phydev, MII_M1116R_CONTROL_REG_MAC, temp);
if (err < 0)
return err;
+
+ /* @@ NetModule, da, LED settings */
+ err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 3);
+ if (err < 0)
+ return err;
+
+ temp = 0x1040;
+ err = phy_write(phydev, 16, temp);
+ if (err < 0)
+ return err;
+
+ temp = 0x4405;
+ err = phy_write(phydev, 17, temp);
+ if (err < 0)
+ return err;
+
+
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 0);
if (err < 0)
return err;
--
1.7.10.4
|