device: Add helper function devfn_disable()

devfn_disable() function is used to disable a device based on
given bus, device function number. This function checks if the
device is at enable state and disables the device.

Change-Id: Ia4a8bfec7fc95c729a5bb156f88e9aab3bf5dd41
Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/55354
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
This commit is contained in:
Subrata Banik 2021-06-10 13:04:07 +05:30
parent 857c0cc332
commit ed5c7ac031
2 changed files with 9 additions and 0 deletions

View File

@ -21,6 +21,13 @@
extern struct device *last_dev;
/** Linked list of free resources */
struct resource *free_resources = NULL;
/* Disable a PCI device based on bus, device and function. */
void devfn_disable(const struct bus *bus, unsigned int devfn)
{
struct device *dev = pcidev_path_behind(bus, devfn);
if (dev)
dev->enabled = 0;
}
/**
* Initialize all chips of statically known devices.

View File

@ -178,6 +178,8 @@ void dev_initialize(void);
void dev_optimize(void);
void dev_finalize(void);
void dev_finalize_chips(void);
/* Function used to override device state */
void devfn_disable(const struct bus *bus, unsigned int devfn);
/* Generic device helper functions */
int reset_bus(struct bus *bus);