forked from Minki/linux
ipmi_si: Fix oops with PCI devices
When the IPMI PCI code was split out, some code was consolidated for setting the io_setup field in the io structure. The PCI code needed this set before registration to probe register spacing, though, so restore the old code for that function. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=197999 Signed-off-by: Corey Minyard <cminyard@mvista.com> Tested-by: Meelis Roos <mroos@linux.ee>
This commit is contained in:
parent
4f7f5551a7
commit
1ac8aa8d05
@ -103,10 +103,13 @@ static int ipmi_pci_probe(struct pci_dev *pdev,
|
||||
io.addr_source_cleanup = ipmi_pci_cleanup;
|
||||
io.addr_source_data = pdev;
|
||||
|
||||
if (pci_resource_flags(pdev, 0) & IORESOURCE_IO)
|
||||
if (pci_resource_flags(pdev, 0) & IORESOURCE_IO) {
|
||||
io.addr_type = IPMI_IO_ADDR_SPACE;
|
||||
else
|
||||
io.io_setup = ipmi_si_port_setup;
|
||||
} else {
|
||||
io.addr_type = IPMI_MEM_ADDR_SPACE;
|
||||
io.io_setup = ipmi_si_mem_setup;
|
||||
}
|
||||
io.addr_data = pci_resource_start(pdev, 0);
|
||||
|
||||
io.regspacing = ipmi_pci_probe_regspacing(&io);
|
||||
|
Loading…
Reference in New Issue
Block a user