[U-Boot] [PATCH] vexpress/v8: Add support for SMSC91C111 integrated MAC and PHY module
Bhupesh Sharma
bhupesh.sharma at freescale.com
Tue Sep 3 18:37:58 CEST 2013
This patch enables ethernet support in ARMv8 foundation model. The ARMv8
foundation model supports a SMSC91C111 integrated MAC and PHY module
which is present at base address 0x01A000000.
The patch has been tested on ARMv8 foundation model by running ping/tftp
between the foundation model and the host PC via a bridged network.
Signed-off-by: Bhupesh Sharma <bhupesh.sharma at freescale.com>
---
This patch is based on the ARMv8 support related patches sent out
by David Feng. The V5 of this patchset from David can be found here:
http://u-boot.10912.n7.nabble.com/PATCH-v5-0-4-arm64-patch-td161939.html
To test the ethernet functionality on a ARMv8 foundation model:
- Launch the model with BRIDGED networking option:
--network=bridged
- This will create an ethernet interface (eth0) inside the model and
an interface ARM0 on the Host PC.
- Assign appropriate IP addresses:
~ On Host:
$ ifconfig ARM0 10.10.10.11
~ On foundation model:
VExpress# setenv ipaddr 10.10.10.10
VExpress# setenv gatewayip 10.10.10.11
VExpress# setenv serverip 10.10.10.11
- Now try out ping/tftp tests.
board/armltd/vexpress64/vexpress64.c | 14 ++++++++++++++
include/configs/vexpress_aemv8a.h | 4 ++++
2 files changed, 18 insertions(+)
diff --git a/board/armltd/vexpress64/vexpress64.c b/board/armltd/vexpress64/vexpress64.c
index 4febece..3bebdbd 100644
--- a/board/armltd/vexpress64/vexpress64.c
+++ b/board/armltd/vexpress64/vexpress64.c
@@ -77,3 +77,17 @@ void __gpio_request(unsigned gpio, const char *label)
}
void gpio_request(unsigned gpio, const char *label)
__attribute__((weak, alias("__gpio_request")));
+
+/*
+ * Board specific ethernet initialization routine.
+ */
+int board_eth_init(bd_t *bis)
+{
+ int rc = 0;
+
+#ifdef CONFIG_SMC91111
+ rc = smc91111_initialize(0, CONFIG_SMC91111_BASE);
+#endif
+
+ return rc;
+}
diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h
index d207d00..8e309b3 100644
--- a/include/configs/vexpress_aemv8a.h
+++ b/include/configs/vexpress_aemv8a.h
@@ -118,6 +118,10 @@
/* Size of malloc() pool */
#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 128 * 1024)
+/* SMSC91C111 Ethernet Configuration */
+#define CONFIG_SMC91111 1
+#define CONFIG_SMC91111_BASE (0x01A000000)
+
/* PL011 Serial Configuration */
#define CONFIG_PL011_SERIAL
#define CONFIG_PL011_CLOCK 24000000
--
1.7.10.4
More information about the U-Boot
mailing list