Browse Source

[usb] Add support for xHCI host controllers

Signed-off-by: Michael Brown <mcb30@ipxe.org>
tags/v1.20.1
Michael Brown 10 years ago
parent
commit
fd53ada87c
5 changed files with 4081 additions and 0 deletions
  1. 3
    0
      src/config/config_usb.c
  2. 2
    0
      src/config/defaults/pcbios.h
  3. 3009
    0
      src/drivers/usb/xhci.c
  4. 1066
    0
      src/drivers/usb/xhci.h
  5. 1
    0
      src/include/ipxe/errfile.h

+ 3
- 0
src/config/config_usb.c View File

@@ -18,3 +18,6 @@ FILE_LICENCE ( GPL2_OR_LATER );
18 18
 /*
19 19
  * Drag in USB controllers
20 20
  */
21
+#ifdef USB_HCD_XHCI
22
+REQUIRE_OBJECT ( xhci );
23
+#endif

+ 2
- 0
src/config/defaults/pcbios.h View File

@@ -36,6 +36,8 @@ FILE_LICENCE ( GPL2_OR_LATER );
36 36
 #define	SANBOOT_PROTO_IB_SRP	/* Infiniband SCSI RDMA protocol */
37 37
 #define	SANBOOT_PROTO_FCP	/* Fibre Channel protocol */
38 38
 
39
+#define	USB_HCD_XHCI		/* xHCI USB host controller */
40
+
39 41
 #define	REBOOT_CMD		/* Reboot command */
40 42
 #define	CPUID_CMD		/* x86 CPU feature detection command */
41 43
 

+ 3009
- 0
src/drivers/usb/xhci.c
File diff suppressed because it is too large
View File


+ 1066
- 0
src/drivers/usb/xhci.h
File diff suppressed because it is too large
View File


+ 1
- 0
src/include/ipxe/errfile.h View File

@@ -78,6 +78,7 @@ FILE_LICENCE ( GPL2_OR_LATER );
78 78
 #define ERRFILE_pcivpd		     ( ERRFILE_DRIVER | 0x00060000 )
79 79
 #define ERRFILE_usb		     ( ERRFILE_DRIVER | 0x00070000 )
80 80
 #define ERRFILE_usbhub		     ( ERRFILE_DRIVER | 0x00080000 )
81
+#define ERRFILE_xhci		     ( ERRFILE_DRIVER | 0x00090000 )
81 82
 
82 83
 #define ERRFILE_nvs		     ( ERRFILE_DRIVER | 0x00100000 )
83 84
 #define ERRFILE_spi		     ( ERRFILE_DRIVER | 0x00110000 )

Loading…
Cancel
Save