atyfb: correct_chipset() can fail

Atari probe code relies on correct_chipset() failing if the device is not
a mach64 GX/CX.  aty_chips[] array would be indexed with -1 in that case.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Cc: Krzysztof Helt <krzysztof.h1@poczta.fm>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Ville Syrjala 2008-07-23 21:31:30 -07:00 committed by Linus Torvalds
parent 50cd0221c9
commit 3880b0b529
1 changed files with 3 additions and 1 deletions

View File

@ -424,7 +424,6 @@ static struct {
#endif /* CONFIG_FB_ATY_CT */
};
/* can not fail */
static int __devinit correct_chipset(struct atyfb_par *par)
{
u8 rev;
@ -437,6 +436,9 @@ static int __devinit correct_chipset(struct atyfb_par *par)
if (par->pci_id == aty_chips[i].pci_id)
break;
if (i < 0)
return -ENODEV;
name = aty_chips[i].name;
par->pll_limits.pll_max = aty_chips[i].pll;
par->pll_limits.mclk = aty_chips[i].mclk;