soc/amd/picasso: Add xhci1 and remove ehci

Change-Id: I9d0098082c224bbf5ab2b4f0f41eb8b5b729eec7
Signed-off-by: Marshall Dawson <marshalldawson3rd@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/33987
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martinroth@google.com>
This commit is contained in:
Marshall Dawson 2019-06-30 18:26:35 -05:00 committed by Martin Roth
parent 19ea016910
commit fa4a74b098
4 changed files with 25 additions and 24 deletions

View File

@ -96,8 +96,6 @@ const char *soc_acpi_name(const struct device *dev)
return "PBR8";
case HDA1_DEVFN:
return "AZHD";
case EHCI1_DEVFN:
return "EHC0";
case LPC_DEVFN:
return "LPCB";
case SATA_DEVFN:
@ -106,8 +104,10 @@ const char *soc_acpi_name(const struct device *dev)
return "SDCN";
case SMBUS_DEVFN:
return "SBUS";
case XHCI_DEVFN:
case XHCI0_DEVFN:
return "XHC0";
case XHCI1_DEVFN:
return "XHC1";
default:
return NULL;
}

View File

@ -151,12 +151,19 @@
#define NB_DEVFN PCI_DEVFN(NB_DEV, NB_FUNC)
#define SOC_NB_DEV _SOC_DEV(NB_DEV, NB_FUNC)
/* XHCI */
#define XHCI_DEV 0x10
#define XHCI_FUNC 0
#define XHCI_DEVID 0x7914
#define XHCI_DEVFN PCI_DEVFN(XHCI_DEV, XHCI_FUNC)
#define SOC_XHCI_DEV _SOC_DEV(XHCI_DEV, XHCI_FUNC)
/* USB 3.1 */
#define XHCI0_DEV 0x0
#define XHCI0_FUNC 3
#define XHCI0_DEVID 0x15e0
#define XHCI0_DEVFN PCI_DEVFN(XHCI0_DEV, XHCI0_FUNC)
#define SOC_XHCI0_DEV _SOC_DEV(XHCI0_DEV, XHCI0_FUNC)
/* USB 3.1 */
#define XHCI1_DEV 0x0
#define XHCI1_FUNC 4
#define XHCI1_DEVID 0x15e1
#define XHCI1_DEVFN PCI_DEVFN(XHCI1_DEV, XHCI1_FUNC)
#define SOC_XHCI1_DEV _SOC_DEV(XHCI1_DEV, XHCI1_FUNC)
/* SATA */
#define SATA_DEV 0x11
@ -167,13 +174,6 @@
#define SATA_DEVFN PCI_DEVFN(SATA_DEV, SATA_FUNC)
#define SOC_SATA_DEV _SOC_DEV(SATA_DEV, SATA_FUNC)
/* EHCI */
#define EHCI_DEV 0x12
#define EHCI_FUNC 0
#define EHCI_DEVID 0x7908
#define EHCI1_DEVFN PCI_DEVFN(EHCI_DEV, EHCI_FUNC)
#define SOC_EHCI1_DEV _SOC_DEV(EHCI_DEV, EHCI_FUNC)
/* SMBUS */
#define SMBUS_DEV 0x14
#define SMBUS_FUNC 0

View File

@ -367,8 +367,8 @@ uint64_t get_uma_base(void);
* over current support.
*/
#define USB_OC_DISABLE_ALL 0xffff
int mainboard_get_xhci_oc_map(uint16_t *usb_oc_map);
int mainboard_get_ehci_oc_map(uint16_t *usb_oc_map);
int mainboard_get_xhci0_oc_map(uint16_t *usb_oc_map);
int mainboard_get_xhci1_oc_map(uint16_t *usb_oc_map);
/* Initialize all the i2c buses that are marked with early init. */
void i2c_soc_early_init(void);

View File

@ -28,23 +28,24 @@ static void set_usb_over_current(struct device *dev)
{
uint16_t map = USB_OC_DISABLE_ALL;
if (dev->path.pci.devfn == XHCI_DEVFN) {
if (mainboard_get_xhci_oc_map(&map) == 0)
if (dev->path.pci.devfn == XHCI0_DEVFN) {
if (mainboard_get_xhci0_oc_map(&map) == 0)
; // TODO
}
if (dev->path.pci.devfn == EHCI1_DEVFN)
if (mainboard_get_ehci_oc_map(&map) == 0)
if (dev->path.pci.devfn == XHCI1_DEVFN) {
if (mainboard_get_xhci1_oc_map(&map) == 0)
; // TODO
}
}
int __weak mainboard_get_xhci_oc_map(uint16_t *map)
int __weak mainboard_get_xhci0_oc_map(uint16_t *map)
{
printk(BIOS_DEBUG, "WEAK: %s/%s called\n", __FILE__, __func__);
return -1;
}
int __weak mainboard_get_ehci_oc_map(uint16_t *map)
int __weak mainboard_get_xhci1_oc_map(uint16_t *map)
{
printk(BIOS_DEBUG, "WEAK: %s/%s called\n", __FILE__, __func__);
return -1;