diff --git a/drivers/staging/xgifb/XGI_main_26.c b/drivers/staging/xgifb/XGI_main_26.c index 34678a3b0fc2..e989eb4e5163 100644 --- a/drivers/staging/xgifb/XGI_main_26.c +++ b/drivers/staging/xgifb/XGI_main_26.c @@ -449,7 +449,7 @@ static int XGIfb_GetXG21DefaultLVDSModeIdx(void) XGIfb_mode_idx++; } if (!found_mode) - XGIfb_mode_idx = 0; + XGIfb_mode_idx = -1; return XGIfb_mode_idx; } @@ -2313,6 +2313,11 @@ static int __devinit xgifb_probe(struct pci_dev *pdev, } } + if (xgifb_mode_idx < 0) { + dev_err(&pdev->dev, "no supported video mode found\n"); + goto error_1; + } + if (xgi21_drvlcdcaplist) { int m;