On 03.10.2012 21:22, Marek Vasut wrote:
Dear Łukasz Dałek,
On 03.10.2012 20:34, Marek Vasut wrote:
Dear Lukasz Dalek,
Add support for ethernet over USB which can be used for e.g. booting
process. It works with tftp and dhcp clients code.
Signed-off-by: Lukasz Dalek<luk0...@gmail.com>
---
Changes for v6:
- Defined only one entire for board
Changes for v5:
- Surrendered #include<usb.h> with CONFIGs
board/h2200/h2200.c | 17 +++++++++++++++++
boards.cfg | 2 +-
include/configs/h2200.h | 27 +++++++++++++++++++++++++++
3 files changed, 45 insertions(+), 1 deletions(-)
diff --git a/board/h2200/h2200.c b/board/h2200/h2200.c
index 3076306..617bb04 100644
--- a/board/h2200/h2200.c
+++ b/board/h2200/h2200.c
@@ -22,9 +22,20 @@
#include<asm/arch/pxa.h>
#include<asm/arch/pxa-regs.h>
#include<asm/io.h>
+#ifdef CONFIG_H2200_USBETH
It's always defined, remove it.
+# include<usb.h>
+#endif
DECLARE_GLOBAL_DATA_PTR;
+#ifdef CONFIG_H2200_USBETH
+int board_eth_init(bd_t *bis)
+{
+ usb_eth_initialize(bis);
+ return 0;
+}
+#endif
+
int board_init(void)
{
/* We have RAM, disable cache */
@@ -36,6 +47,12 @@ int board_init(void)
/* adress of boot parameters */
gd->bd->bi_boot_params = 0xa0000100;
+ /* Let host see that device is disconnected */
+#if defined(CONFIG_H2200_USBETH)
+ udc_disconnect();
+ mdelay(500);
+#endif
+
return 0;
}
diff --git a/boards.cfg b/boards.cfg
index ab10938..f557c2b 100644
--- a/boards.cfg
+++ b/boards.cfg
@@ -282,7 +282,7 @@ dvlhost arm ixp
pdnb3 arm ixp pdnb3
prodrive scpu arm ixp pdnb3
prodrive - pdnb3:SCPU balloon3
arm pxa
-h2200 arm pxa
+h2200 arm pxa h2200
-
- h2200:H2200_USBETH lubbock
[...]
This change isn't needed if you remove CONFIG_H2200_USBETH
diff --git a/include/configs/h2200.h b/include/configs/h2200.h
index de5299b..4c5a1ae 100644
--- a/include/configs/h2200.h
+++ b/include/configs/h2200.h
@@ -153,4 +153,31 @@
#define CONFIG_BOOTARGS "root=/dev/ram0 ro console=ttyS0,115200n8"
+#ifdef CONFIG_H2200_USBETH
ifdef - endif not needed, otherwise good.
+# define CONFIG_SYS_CONSOLE_IS_IN_ENV
+# define CONFIG_USB_DEV_PULLUP_GPIO 33
+/* USB VBUS GPIO 3 */
+
+# define CONFIG_CMD_NET
+# define CONFIG_CMD_PING
+
+# define CONFIG_BOOTDELAY 2
+# define CONFIG_BOOTCOMMAND \
+ "setenv downloaded 0 ; while test $downloaded -eq 0 ; do " \
+ "if bootp ; then setenv downloaded 1 ; fi ; done ; " \
+ "source :script ; " \
+ "bootm ; "
+
+# define CONFIG_USB_GADGET_PXA2XX
+# define CONFIG_USB_ETHER
+# define CONFIG_USB_ETH_SUBSET
+
+# define CONFIG_USBNET_DEV_ADDR "de:ad:be:ef:00:01"
+# define CONFIG_USBNET_HOST_ADDR "de:ad:be:ef:00:02"
+# define CONFIG_EXTRA_ENV_SETTINGS \
+ "stdin=serial\0" \
+ "stdout=serial\0" \
+ "stderr=serial\0"
+#endif
+
#endif /* __CONFIG_H */
Why do I have to remove CONFIG_H2200_USBETH? If I do so, I'm not be able to
disable USB ethernet support.
Why would you disable it?
Because of other gadgets, e.g. ttyACM
Łukasz Dałek
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot