summaryrefslogtreecommitdiff
path: root/cpu/ppc4xx/usbdev.c
diff options
context:
space:
mode:
authorWolfgang Denk <wd@nyx.denx.de>2006-10-11 14:15:21 +0200
committerWolfgang Denk <wd@nyx.denx.de>2006-10-11 14:15:21 +0200
commitfb883a521e04437acfe989de3e152b2e4866856b (patch)
tree0cf61f45ae693082b24ced9c1da9a87bdd0cabbd /cpu/ppc4xx/usbdev.c
parent4a39616da41840bbc5b4c3f69df9861c2e6a8425 (diff)
parent2255b2d2044d434463eb2661e18018e50f1643d9 (diff)
downloadu-boot-imx-fb883a521e04437acfe989de3e152b2e4866856b.zip
u-boot-imx-fb883a521e04437acfe989de3e152b2e4866856b.tar.gz
u-boot-imx-fb883a521e04437acfe989de3e152b2e4866856b.tar.bz2
Merge with /home/wd/git/u-boot/master
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 8262c54..6140d2a 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 */