aboutsummaryrefslogtreecommitdiffstats
path: root/package/boot/uboot-mvebu/patches/0002-clearfog-reset-usom-onboard-1512-phy.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/boot/uboot-mvebu/patches/0002-clearfog-reset-usom-onboard-1512-phy.patch')
-rw-r--r--package/boot/uboot-mvebu/patches/0002-clearfog-reset-usom-onboard-1512-phy.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/package/boot/uboot-mvebu/patches/0002-clearfog-reset-usom-onboard-1512-phy.patch b/package/boot/uboot-mvebu/patches/0002-clearfog-reset-usom-onboard-1512-phy.patch
new file mode 100644
index 0000000000..164c6f3f25
--- /dev/null
+++ b/package/boot/uboot-mvebu/patches/0002-clearfog-reset-usom-onboard-1512-phy.patch
@@ -0,0 +1,37 @@
+From 98848106b9558244ae36a85229caabcdb57d0f7b Mon Sep 17 00:00:00 2001
+From: Jonas Gorski <jonas.gorski@gmail.com>
+Date: Fri, 23 Sep 2016 13:58:14 +0200
+Subject: [PATCH 2/4] clearfog: reset usom onboard 1512 phy
+
+Use GPIO19 which is wired to the uSOM phy reset signal in order to reset
+the uSOM's 88E81512 gigabit Ethernet phy.
+
+This GPIO is valid on ClearFog rev 2.1 and newer.
+
+Signed-off-by: Rabeeh Khoury <rabeeh@solid-run.com>
+[jonas.gorski: adapted to upstream u-boot code]
+Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
+---
+ board/solidrun/clearfog/clearfog.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/board/solidrun/clearfog/clearfog.c b/board/solidrun/clearfog/clearfog.c
+index 2773f5957e..3a8257cac3 100644
+--- a/board/solidrun/clearfog/clearfog.c
++++ b/board/solidrun/clearfog/clearfog.c
+@@ -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 */
+--
+2.12.2
+