summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini <trini@ti.com>2012-09-13 08:55:12 -0700
committerVishveshwar Bhat <vishveshwar.bhat@ti.com>2012-10-23 12:18:59 +0530
commitc35de2457b69c78f9b7b3399ed790552465fc04d (patch)
tree51d04820643aae0b66ea43bf8241e0a9258ca872
parent83e942e6af17b6127fb701df8f90f5798c022304 (diff)
downloadu-boot-beaglebone-c35de2457b69c78f9b7b3399ed790552465fc04d.tar.gz
am335x USB SPL: Add documentation, new build targets
Signed-off-by: Tom Rini <trini@ti.com>
-rw-r--r--arch/arm/cpu/armv7/omap-common/spl.c2
-rw-r--r--boards.cfg2
-rw-r--r--doc/am335x.net-spl/USB-README39
3 files changed, 43 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv7/omap-common/spl.c b/arch/arm/cpu/armv7/omap-common/spl.c
index 424f6ca62..8fce916f0 100644
--- a/arch/arm/cpu/armv7/omap-common/spl.c
+++ b/arch/arm/cpu/armv7/omap-common/spl.c
@@ -121,9 +121,11 @@ void board_init_r(gd_t *id, ulong dummy)
boot_device = omap_boot_device();
debug("boot device - %d\n", boot_device);
+#ifdef CONFIG_UART_THEN_USB_SPL
/* Hack: load SPL via UART, then use USB */
if (boot_device == BOOT_DEVICE_UART)
boot_device = BOOT_DEVICE_USB;
+#endif
switch (boot_device) {
#ifdef CONFIG_SPL_MMC_SUPPORT
diff --git a/boards.cfg b/boards.cfg
index f46dcfdaa..55af69fc9 100644
--- a/boards.cfg
+++ b/boards.cfg
@@ -170,6 +170,8 @@ igep0030 arm armv7 igep0030 isee
am335x_evm arm armv7 am335x ti ti81xx
am335x_evm_restore_flash arm armv7 am335x ti ti81xx am335x_evm:RESTORE_FLASH
am335x_evm_spiboot arm armv7 am335x ti ti81xx am335x_evm:SPI_BOOT
+am335x_evm_uart_usbspl arm armv7 am335x ti ti81xx am335x_evm:UART_THEN_USB_SPL
+am335x_evm_restore_flash_usbspl arm armv7 am335x ti ti81xx am335x_evm:RESTORE_FLASH,UART_THEN_USB_SPL
am3517_crane arm armv7 am3517crane ti omap3
am3517_evm arm armv7 am3517evm logicpd omap3
am3517_evm_norflash arm armv7 am3517evm logicpd omap3 am3517_evm:SYS_HAS_NORFLASH
diff --git a/doc/am335x.net-spl/USB-README b/doc/am335x.net-spl/USB-README
new file mode 100644
index 000000000..3092197a5
--- /dev/null
+++ b/doc/am335x.net-spl/USB-README
@@ -0,0 +1,39 @@
+USING UART AND USB
+==================
+
+Currently in order to use USB SPL on this platform you must load SPL itself
+via UART. A special build of the board will cause SPL to perform the next
+step via USB RNDIS ethernet rather than via UART.
+
+To make this easier, the following build targets have been added:
+am335x_evm_uart_usbspl
+am335x_evm_restore_flash_usbspl
+
+HOST REQUIREMENTS
+=================
+
+In addition to the regular requirements documented in
+doc/am335x.net-spl/README to serve files and answer dhcp requests the host
+needs to have rndis support (CONFIG_USB_NET_RNDIS_HOST) enabled in the
+kernel (built-in or module). With the default settings, a sample
+dhcpd.conf entry would look like:
+
+host am335x_usb_rndis_gadget {
+ hardware ethernet aa:bb:cc:00:11:33;
+
+ if substring (option vendor-class-identifier, 0, 17) = "AM335x U-Boot SPL" {
+ filename "u-boot.img";
+ } else {
+ filename "uImage-am335x";
+ }
+ fixed-address 192.168.1.2;
+}
+
+In order for this to work, assuming a Linux distribution that obeys
+/etc/network/interfaces, the following entry is needed:
+
+allow-hotplug usb0
+iface usb0 inet static
+ address 192.168.1.1
+ netmask 255.255.255.0
+ post-up service isc-dhcp-server restart