summaryrefslogtreecommitdiffstats
path: root/arch/arm/boards/tqma6x
diff options
context:
space:
mode:
authorJan Weitzel <j.weitzel@phytec.de>2013-08-30 10:01:20 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2013-08-31 12:01:32 +0200
commitf958ffb3cdeabad3f54fceed5d755c160c005671 (patch)
tree750283cfcfce8826521d6dd1c8e6e1bd89da8380 /arch/arm/boards/tqma6x
parent93a4a77528b8094ab89d4134b722a7eb1b28f756 (diff)
downloadbarebox-f958ffb3cdeabad3f54fceed5d755c160c005671.tar.gz
barebox-f958ffb3cdeabad3f54fceed5d755c160c005671.tar.xz
net/phy: support of mmd register read and write
Add function for indirect access of the mmd registers, based on linux. phy_read_mmd_indirect phy_write_mmd_indirect Also clean some private mmd functions Signed-off-by: Jan Weitzel <j.weitzel@phytec.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/boards/tqma6x')
-rw-r--r--arch/arm/boards/tqma6x/board.c14
1 files changed, 3 insertions, 11 deletions
diff --git a/arch/arm/boards/tqma6x/board.c b/arch/arm/boards/tqma6x/board.c
index 9e81a1d11d..3e051a5535 100644
--- a/arch/arm/boards/tqma6x/board.c
+++ b/arch/arm/boards/tqma6x/board.c
@@ -58,23 +58,15 @@ static iomux_v3_cfg_t tqma6x_pads_gpio[] = {
MX6Q_PAD_RGMII_RX_CTL__GPIO_6_24,
};
-static void mmd_write_reg(struct phy_device *dev, int device, int reg, int val)
-{
- phy_write(dev, 0x0d, device);
- phy_write(dev, 0x0e, reg);
- phy_write(dev, 0x0d, (1 << 14) | device);
- phy_write(dev, 0x0e, val);
-}
-
static int ksz9031rn_phy_fixup(struct phy_device *dev)
{
/*
* min rx data delay, max rx/tx clock delay,
* min rx/tx control delay
*/
- mmd_write_reg(dev, 2, 4, 0);
- mmd_write_reg(dev, 2, 5, 0);
- mmd_write_reg(dev, 2, 8, 0x003ff);
+ phy_write_mmd_indirect(dev, 4, 2, 0);
+ phy_write_mmd_indirect(dev, 5, 2, 0);
+ phy_write_mmd_indirect(dev, 8, 2, 0x003ff);
return 0;
}