Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8cd3d64c authored by Jayachandran C's avatar Jayachandran C Committed by John Crispin
Browse files

MIPS: PCI: Prevent hang on XLP reg read



Reading PCI extended register at 0x255 on a bridge will hang if there
is no device connected on the link. Make PCI read routine skip this
register.

Signed-off-by: default avatarJayachandran C <jchandra@broadcom.com>
Patchwork: http://patchwork.linux-mips.org/patch/4789/


Signed-off-by: default avatarJohn Crispin <blogic@openwrt.org>
parent 4e45e542
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -64,8 +64,12 @@ static inline u32 pci_cfg_read_32bit(struct pci_bus *bus, unsigned int devfn,
	u32 data;
	u32 *cfgaddr;

	where &= ~3;
	if (bus->number == 0 && PCI_SLOT(devfn) == 1 && where == 0x954)
		return 0xffffffff;

	cfgaddr = (u32 *)(pci_config_base +
			pci_cfg_addr(bus->number, devfn, where & ~3));
			pci_cfg_addr(bus->number, devfn, where));
	data = *cfgaddr;
	return data;
}