drivers/intel/i210: Request Bus Master in .final ops
Commit bd31642ad8
(intel/i210: Set bus master bit in command register)
is only necessary because a buggy OS expects Bus Master to be set, not
because the hardware requires Bus Master during initialization. It is
thus safe to defer the Bus Master request into the .final callback.
Change-Id: Iecfa6366eb4b1438fd12cd9ebb1a77ada97fa2f6
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/47401
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
Reviewed-by: Werner Zeh <werner.zeh@siemens.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Tested-by: siemens-bot
This commit is contained in:
parent
45eeae4f8f
commit
5ad4206e72
|
@ -206,17 +206,17 @@ static void init(struct device *dev)
|
|||
return;
|
||||
}
|
||||
|
||||
static void set_resources(struct device *dev)
|
||||
static void enable_bus_master(struct device *dev)
|
||||
{
|
||||
pci_dev_set_resources(dev);
|
||||
dev->command |= PCI_COMMAND_MASTER;
|
||||
pci_or_config16(dev, PCI_COMMAND, PCI_COMMAND_MASTER);
|
||||
}
|
||||
|
||||
static struct device_operations i210_ops = {
|
||||
.read_resources = pci_dev_read_resources,
|
||||
.set_resources = set_resources,
|
||||
.set_resources = pci_dev_set_resources,
|
||||
.enable_resources = pci_dev_enable_resources,
|
||||
.init = init,
|
||||
.final = enable_bus_master,
|
||||
};
|
||||
|
||||
static const unsigned short i210_device_ids[] = { 0x1537, 0x1538, 0x1533, 0 };
|
||||
|
|
Loading…
Reference in New Issue