1 /* SPDX-License-Identifier: GPL-2.0-only */
3 #include <console/console.h>
4 #include <device/device.h>
5 #include <device/pci.h>
6 #include <device/pci_ids.h>
8 static void bcm57xx_disable_aspm(struct device
*const dev
)
10 printk(BIOS_INFO
, "bcm57xx: Disabling ASPM for %s [%04x/%04x]\n",
11 dev_path(dev
), dev
->vendor
, dev
->device
);
13 dev
->disable_pcie_aspm
= 1;
16 static struct device_operations bcm57xx_aspm_fixup_ops
= {
17 .read_resources
= pci_dev_read_resources
,
18 .set_resources
= pci_dev_set_resources
,
19 .enable_resources
= pci_dev_enable_resources
,
20 .enable
= bcm57xx_disable_aspm
,
23 static const unsigned short pci_device_ids
[] = {
28 static const struct pci_driver bcm57xx_aspm_fixup __pci_driver
= {
29 .ops
= &bcm57xx_aspm_fixup_ops
,
30 .vendor
= PCI_VID_BROADCOM
,
31 .devices
= pci_device_ids
,