Răsfoiți Sursa

ipmi: Fix the I2C address extraction from SPMI tables

Unlike everywhere else in the IPMI specification, the I2C address
specified in the SPMI table is not shifted to the left one bit with
the LSB zero.  Instead it is not shifted with the MSB zero.

Reported-by: Sanjeev <singhsan@codeaurora.org>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
Corey Minyard 9 ani în urmă
părinte
comite
70f95b76f1
1 a modificat fișierele cu 1 adăugiri și 1 ștergeri
  1. 1 1
      drivers/char/ipmi/ipmi_ssif.c

+ 1 - 1
drivers/char/ipmi/ipmi_ssif.c

@@ -1870,7 +1870,7 @@ static int try_init_spmi(struct SPMITable *spmi)
 		return -EIO;
 	}
 
-	myaddr = spmi->addr.address >> 1;
+	myaddr = spmi->addr.address & 0x7f;
 
 	return new_ssif_client(myaddr, NULL, 0, 0, SI_SPMI);
 }