Skip to content

Commit

Permalink
ipmi:pci: Blacklist a Realtek "IPMI" device
Browse files Browse the repository at this point in the history
Realtek has some sort of "Virtual" IPMI device on the PCI bus as a
KCS controller, but whatever it is, it's not one.  Ignore it if seen.

Reported-by: Chris Chiu <chiu@endlessm.com>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
Tested-by: Daniel Drake <drake@endlessm.com>
  • Loading branch information
Corey Minyard committed Mar 13, 2018
1 parent 4876234 commit bc48fa1
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions drivers/char/ipmi/ipmi_si_pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -62,12 +62,24 @@ static int ipmi_pci_probe_regspacing(struct si_sm_io *io)
return DEFAULT_REGSPACING;
}

static struct pci_device_id ipmi_pci_blacklist[] = {
/*
* This is a "Virtual IPMI device", whatever that is. It appears
* as a KCS device by the class, but it is not one.
*/
{ PCI_VDEVICE(REALTEK, 0x816c) },
{ 0, }
};

static int ipmi_pci_probe(struct pci_dev *pdev,
const struct pci_device_id *ent)
{
int rv;
struct si_sm_io io;

if (pci_match_id(ipmi_pci_blacklist, pdev))
return -ENODEV;

memset(&io, 0, sizeof(io));
io.addr_source = SI_PCI;
dev_info(&pdev->dev, "probing via PCI");
Expand Down

0 comments on commit bc48fa1

Please sign in to comment.