haswell: Add pei_data field for USB routing

The linux kernel will unconditionally route all USB
ports to the XCHI controller at boot.  The EHCI controller
can then be disabled, and it should be left disabled
by the reference code when this is done.

However not all OS may do this unconditional route,
so provide an option to the reference code binary to
enable this behavior.

Change-Id: Iedf5af54182bf109cd1119c1999e46300665d41e
Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/63797
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: http://review.coreboot.org/4403
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
This commit is contained in:
Duncan Laurie 2013-07-30 15:41:42 -07:00 committed by Patrick Georgi
parent d3c5e50506
commit 289bac6a04
1 changed files with 3 additions and 1 deletions

View File

@ -31,7 +31,7 @@
#define PEI_DATA_H #define PEI_DATA_H
typedef void (*tx_byte_func)(unsigned char byte); typedef void (*tx_byte_func)(unsigned char byte);
#define PEI_VERSION 13 #define PEI_VERSION 14
#define MAX_USB2_PORTS 16 #define MAX_USB2_PORTS 16
#define MAX_USB3_PORTS 16 #define MAX_USB3_PORTS 16
@ -103,6 +103,8 @@ struct pei_data
* 1067, 1333, 1600 * 1067, 1333, 1600
*/ */
uint32_t max_ddr3_freq; uint32_t max_ddr3_freq;
/* Route all USB ports to XHCI controller in resume path */
int usb_xhci_on_resume;
struct usb2_port_setting usb2_ports[MAX_USB2_PORTS]; struct usb2_port_setting usb2_ports[MAX_USB2_PORTS];
struct usb3_port_setting usb3_ports[MAX_USB3_PORTS]; struct usb3_port_setting usb3_ports[MAX_USB3_PORTS];
uint8_t spd_data[4][256]; uint8_t spd_data[4][256];