arm: mvebu: clearfog: reset uSOM onboard 1512 phy
authorPatrick Wildt <patrick@blueri.se>
Tue, 9 May 2017 11:54:44 +0000 (13:54 +0200)
committerStefan Roese <sr@denx.de>
Wed, 31 May 2017 05:42:40 +0000 (07:42 +0200)
Use GPIO19 which is wired to the uSOM phy reset signal in order to reset
the uSOM's 1512 Gigabit Ethernet phy.

This GPIO is valid on ClearFog rev 2.1 and newer.

Taken from SolidRun's specialised u-boot, see
https://github.com/SolidRun/u-boot-armada38x/commit/f906e3df172e07ac82cdd87b278d7896949262ea

Signed-off-by: Patrick Wildt <patrick@blueri.se>
Signed-off-by: Stefan Roese <sr@denx.de>
board/solidrun/clearfog/clearfog.c

index 2773f5957e6e101321aa4d7990624c60555db5c1..3a8257cac32e2d7b2875e9060272696d167eab50 100644 (file)
@@ -131,8 +131,12 @@ int board_init(void)
        /* Toggle GPIO41 to reset onboard switch and phy */
        clrbits_le32(MVEBU_GPIO1_BASE + 0x0, BIT(9));
        clrbits_le32(MVEBU_GPIO1_BASE + 0x4, BIT(9));
+       /* GPIO 19 on ClearFog rev 2.1 controls the uSOM onboard phy reset */
+       clrbits_le32(MVEBU_GPIO0_BASE + 0x0, BIT(19));
+       clrbits_le32(MVEBU_GPIO0_BASE + 0x4, BIT(19));
        mdelay(1);
        setbits_le32(MVEBU_GPIO1_BASE + 0x0, BIT(9));
+       setbits_le32(MVEBU_GPIO0_BASE + 0x0, BIT(19));
        mdelay(10);
 
        /* Init I2C IO expanders */