bd82x6x: Fix early USB BAR programming (finally?)
The xHCI controller's MMIO space has a length of 64KiB not 4KiB. Therefore, setting the xHCI BAR to 0xe8001000 worked the same like setting it to 0xe8000000, as bit12 is reserved and ignored. This again interfered with the MMIO space of the first EHCI controller and broke S3 resume on Ivy Bridge. AFAIK, the MRC ignores the setting of the xHCI BAR, anyway. So just drop these lines. Change-Id: I8af9c2ba34133f15636a9056fc8880b3b6ab95e0 Signed-off-by: Nico Huber <nico.huber@secunet.com> Reviewed-on: http://review.coreboot.org/3521 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Marc Jones <marc.jones@se-eng.com>
This commit is contained in:
parent
c000352d5c
commit
99b024db88
|
@ -26,7 +26,6 @@
|
|||
|
||||
#define PCH_EHCI1_TEMP_BAR0 0xe8000000
|
||||
#define PCH_EHCI2_TEMP_BAR0 0xe8000400
|
||||
#define PCH_XHCI_TEMP_BAR0 0xe8001000
|
||||
|
||||
/*
|
||||
* Setup USB controller MMIO BAR to prevent the
|
||||
|
@ -39,7 +38,6 @@ void enable_usb_bar(void)
|
|||
{
|
||||
device_t usb0 = PCH_EHCI1_DEV;
|
||||
device_t usb1 = PCH_EHCI2_DEV;
|
||||
device_t usb3 = PCH_XHCI_DEV;
|
||||
u32 cmd;
|
||||
|
||||
/* USB Controller 1 */
|
||||
|
@ -55,11 +53,4 @@ void enable_usb_bar(void)
|
|||
cmd = pci_read_config32(usb1, PCI_COMMAND);
|
||||
cmd |= PCI_COMMAND_MASTER | PCI_COMMAND_MEMORY;
|
||||
pci_write_config32(usb1, PCI_COMMAND, cmd);
|
||||
|
||||
/* USB3 Controller */
|
||||
pci_write_config32(usb3, PCI_BASE_ADDRESS_0,
|
||||
PCH_XHCI_TEMP_BAR0);
|
||||
cmd = pci_read_config32(usb3, PCI_COMMAND);
|
||||
cmd |= PCI_COMMAND_MASTER | PCI_COMMAND_MEMORY;
|
||||
pci_write_config32(usb3, PCI_COMMAND, cmd);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue