projects
/
coreboot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
libpayload: Reduce verbosity in USB stack
[coreboot.git]
/
payloads
/
libpayload
/
drivers
/
usb
/
usbinit.c
diff --git
a/payloads/libpayload/drivers/usb/usbinit.c
b/payloads/libpayload/drivers/usb/usbinit.c
index adaba346029a5e3dea71c4fc9a8591dd9116e67d..3964197038aaf6fa2941623eaab3b87f60edaa63 100644
(file)
--- a/
payloads/libpayload/drivers/usb/usbinit.c
+++ b/
payloads/libpayload/drivers/usb/usbinit.c
@@
-30,9
+30,9
@@
#include <libpayload-config.h>
#include <usb/usb.h>
#include "uhci.h"
#include <libpayload-config.h>
#include <usb/usb.h>
#include "uhci.h"
-
//
#include "ohci.h"
-
//
#include "ehci.h"
-
//
#include "xhci.h"
+#include "ohci.h"
+#include "ehci.h"
+#include "xhci.h"
#include <usb/usbdisk.h>
/**
#include <usb/usbdisk.h>
/**
@@
-68,45
+68,49
@@
usb_controller_initialize (int bus, int dev, int func)
pci_command |= PCI_COMMAND_MASTER;
pci_write_config32(addr, PCI_COMMAND, pci_command);
pci_command |= PCI_COMMAND_MASTER;
pci_write_config32(addr, PCI_COMMAND, pci_command);
- printf ("%02x:%02x.%x %04x:%04x.%d ",
0
, dev, func,
+ printf ("%02x:%02x.%x %04x:%04x.%d ",
bus
, dev, func,
pciid >> 16, pciid & 0xFFFF, func);
pciid >> 16, pciid & 0xFFFF, func);
-
if (prog_if == 0
) {
- printf ("UHCI controller\n");
+
switch(prog_if
) {
+ case 0x00:
#ifdef CONFIG_USB_UHCI
#ifdef CONFIG_USB_UHCI
- uhci_init (addr);
+ printf ("UHCI controller\n");
+ uhci_init (addr);
#else
#else
-
printf ("Not supported.
\n");
+
printf ("UHCI controller (not supported)
\n");
#endif
#endif
- }
- if (prog_if == 0x10) {
- printf ("OHCI controller\n");
+ break;
+
+ case 0x10:
#ifdef CONFIG_USB_OHCI
#ifdef CONFIG_USB_OHCI
-
//ohci_init(addr
);
-
printf ("Not supported.\n"
);
+
printf ("OHCI controller\n"
);
+
ohci_init(addr
);
#else
#else
-
printf ("Not supported.
\n");
+
printf ("OHCI controller (not supported)
\n");
#endif
#endif
+ break;
- }
- if (prog_if == 0x20) {
- printf ("EHCI controller\n");
+ case 0x20:
#ifdef CONFIG_USB_EHCI
#ifdef CONFIG_USB_EHCI
-
//ehci_init(addr
);
-
printf ("Not supported.\n"
);
+
printf ("EHCI controller\n"
);
+
ehci_init(addr
);
#else
#else
-
printf ("Not supported.
\n");
+
printf ("EHCI controller (not supported)
\n");
#endif
#endif
+ break;
- }
- if (prog_if == 0x30) {
- printf ("XHCI controller\n");
+ case 0x30:
#ifdef CONFIG_USB_XHCI
#ifdef CONFIG_USB_XHCI
-
//xhci_init(addr
);
-
printf ("Not supported.\n"
);
+
printf ("xHCI controller\n"
);
+
xhci_init(addr
);
#else
#else
-
printf ("Not supported.
\n");
+
printf ("xHCI controller (not supported)
\n");
#endif
#endif
+ break;
+ default:
+ printf ("unknown controller %x not supported\n",
+ prog_if);
+ break;
}
}
}
}
@@
-128,8
+132,9
@@
usb_initialize (void)
*/
for (bus = 0; bus < 256; bus++)
for (dev = 0; dev < 32; dev++)
*/
for (bus = 0; bus < 256; bus++)
for (dev = 0; dev < 32; dev++)
- for (func = 7; func >= 0 ; func--)
- usb_controller_initialize (bus, dev, func);
+ if (pci_read_config32 (PCI_DEV(bus, dev, 0), 8) >> 16 != 0xffff)
+ for (func = 7; func >= 0 ; func--)
+ usb_controller_initialize (bus, dev, func);
usb_poll();
return 0;
}
usb_poll();
return 0;
}