summaryrefslogtreecommitdiff
path: root/cpu/ppc4xx/usbdev.c
diff options
context:
space:
mode:
authorJon Loeliger <jdl@freescale.com>2006-09-19 08:51:24 -0500
committerJon Loeliger <jdl@freescale.com>2006-09-19 08:51:24 -0500
commitafa98843e4665add11b69496341053b268156e3a (patch)
tree116878b6b94920a5f282d0a16e4b9ad9dfaf57ff /cpu/ppc4xx/usbdev.c
parentb440d0ef72e6278973d3220c10136a4c0624c286 (diff)
parentaeec782b020930732eab075af97212c3f03afcae (diff)
Merge branch 'master' of http://www.denx.de/git/u-boot
Conflicts: board/stxxtc/Makefile
Diffstat (limited to 'cpu/ppc4xx/usbdev.c')
-rw-r--r--cpu/ppc4xx/usbdev.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/cpu/ppc4xx/usbdev.c b/cpu/ppc4xx/usbdev.c
index 8262c54be..6140d2a90 100644
--- a/cpu/ppc4xx/usbdev.c
+++ b/cpu/ppc4xx/usbdev.c
@@ -3,7 +3,7 @@
#include <common.h>
#include <asm/processor.h>
-#ifdef CONFIG_440EP
+#if (defined(CONFIG_440EP) || defined(CONFIG_440EPX)) && (CONFIG_COMMANDS & CFG_CMD_USB)
#include <usb.h>
#include "usbdev.h"
@@ -186,6 +186,21 @@ int usbInt(void)
return 0;
}
+#if defined(CONFIG_440EPX)
+void usb_dev_init()
+{
+ printf("USB 2.0 Device init\n");
+
+ /*usb dev init */
+ *(unsigned char *)USB2D0_POWER_8 = 0xa1; /* 2.0 */
+
+ /*enable interrupts */
+ *(unsigned char *)USB2D0_INTRUSBE_8 = 0x0f;
+
+ irq_install_handler(VECNUM_HSB2D, (interrupt_handler_t *) usbInt,
+ NULL);
+}
+#else
void usb_dev_init()
{
#ifdef USB_2_0_DEVICE
@@ -210,5 +225,6 @@ void usb_dev_init()
irq_install_handler(VECNUM_USBDEV, (interrupt_handler_t *) usbInt,
NULL);
}
+#endif
-#endif /*CONFIG_440EP */
+#endif /* CONFIG_440EP || CONFIG_440EPX */