new revision of BaS native PCI driver that supports find_pci_device() and find_pci_classcode() functions from TOS

This commit is contained in:
Markus Fröschle
2015-11-20 21:25:07 +00:00
parent 54cd5c8151
commit e9c21377d8
7 changed files with 323 additions and 5 deletions

View File

@@ -124,7 +124,7 @@ static struct pci_bios_interface pci_interface =
.phys_to_virt = wrapper_phys_to_virt,
};
static struct pci_native_driver_interface pci_native_interface =
static struct pci_native_driver_interface_0_1 pci_native_interface_0_1 =
{
.pci_read_config_longword = pci_read_config_longword,
.pci_read_config_word = pci_read_config_word,
@@ -137,6 +137,20 @@ static struct pci_native_driver_interface pci_native_interface =
.pci_get_resource = pci_get_resource,
};
static struct pci_native_driver_interface pci_native_interface =
{
.pci_read_config_longword = pci_read_config_longword,
.pci_read_config_word = pci_read_config_word,
.pci_read_config_byte = pci_read_config_byte,
.pci_write_config_longword = pci_write_config_longword,
.pci_write_config_word = pci_write_config_word,
.pci_write_config_byte = pci_write_config_byte,
.pci_hook_interrupt = pci_hook_interrupt,
.pci_unhook_interrupt = pci_unhook_interrupt,
.pci_find_device = pci_find_device,
.pci_find_classcode = pci_find_classcode,
.pci_get_resource = pci_get_resource,
};
/*
* driver interface struct for the BaS framebuffer video driver
*/
@@ -206,8 +220,17 @@ static struct generic_interface interfaces[] =
.description = "BaS PCI native",
.version = 0,
.revision = 1,
.interface.pci_native = (struct pci_native_driver_interface *) &pci_native_interface_0_1,
},
{
.type = PCI_NATIVE_DRIVER,
.name = "PCI_N",
.description = "BaS PCI native",
.version = 0,
.revision = 2,
.interface.pci_native = &pci_native_interface,
},
/* insert new drivers here */
{