diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2013-03-11 07:41:51 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2013-04-03 19:53:10 -0400 |
commit | e0044c9822ab7b60b493bc135ec258227a082b5a (patch) | |
tree | e47da92671758736001b15df13add9afaf25c5df /drivers/ata | |
parent | bdfa2e7e5a46d7dcd9ff127fdf198faf90f0e215 (diff) |
pata_legacy: bogus clock in opti82c46x_set_piomode()
"sysclk" is used as an index into a 4 element array. My static
checker complains because it can be out of bounds. From the
context, it looks like there is a right bit shift missing.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/ata')
-rw-r--r-- | drivers/ata/pata_legacy.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/ata/pata_legacy.c b/drivers/ata/pata_legacy.c index 4fe9d2138d48..be816428b430 100644 --- a/drivers/ata/pata_legacy.c +++ b/drivers/ata/pata_legacy.c | |||
@@ -542,7 +542,7 @@ static void opti82c46x_set_piomode(struct ata_port *ap, struct ata_device *adev) | |||
542 | u8 sysclk; | 542 | u8 sysclk; |
543 | 543 | ||
544 | /* Get the clock */ | 544 | /* Get the clock */ |
545 | sysclk = opti_syscfg(0xAC) & 0xC0; /* BIOS set */ | 545 | sysclk = (opti_syscfg(0xAC) & 0xC0) >> 6; /* BIOS set */ |
546 | 546 | ||
547 | /* Enter configuration mode */ | 547 | /* Enter configuration mode */ |
548 | ioread16(ap->ioaddr.error_addr); | 548 | ioread16(ap->ioaddr.error_addr); |