Commit ae9daffd authored by Ilpo Järvinen's avatar Ilpo Järvinen Committed by Thomas Bogendoerfer
Browse files

MIPS: Routerboard 532: Fix vendor retry check code



read_config_dword() contains strange condition checking ret for a
number of values. The ret variable, however, is always zero because
config_access() never returns anything else. Thus, the retry is always
taken until number of tries is exceeded.

The code looks like it wants to check *val instead of ret to see if the
read gave an error response.

Fixes: 73b4390f ("[MIPS] Routerboard 532: Support for base system")
Signed-off-by: default avatarIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: default avatarThomas Bogendoerfer <tsbogend@alpha.franken.de>
parent 83a7eefe
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -112,8 +112,8 @@ static int read_config_dword(struct pci_bus *bus, unsigned int devfn,
	 * gives them time to settle
	 */
	if (where == PCI_VENDOR_ID) {
		if (ret == 0xffffffff || ret == 0x00000000 ||
		    ret == 0x0000ffff || ret == 0xffff0000) {
		if (*val == 0xffffffff || *val == 0x00000000 ||
		    *val == 0x0000ffff || *val == 0xffff0000) {
			if (delay > 4)
				return 0;
			delay *= 2;