From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Wed, 3 Oct 2012 21:22:09 +0200 Subject: [U-Boot] [PATCH v6] h2200: Add USB CDC ethernet support In-Reply-To: <506C8BAE.4020108@gmail.com> References: <506C0A82.5050301@gmail.com> <201210032034.53144.marex@denx.de> <506C8BAE.4020108@gmail.com> Message-ID: <201210032122.09896.marex@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 > >> --- > >> > >> Changes for v6: > >> - Defined only one entire for board > >> > >> Changes for v5: > >> - Surrendered #include 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 > >> #include > >> #include > >> > >> +#ifdef CONFIG_H2200_USBETH > > > > It's always defined, remove it. > > > >> +# include > >> +#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?