diff options
-rw-r--r-- | drivers/staging/xgifb/XGI_main_26.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/staging/xgifb/XGI_main_26.c b/drivers/staging/xgifb/XGI_main_26.c index ba6c3475a517..98b8b096d58c 100644 --- a/drivers/staging/xgifb/XGI_main_26.c +++ b/drivers/staging/xgifb/XGI_main_26.c | |||
@@ -1700,6 +1700,7 @@ static int __devinit xgifb_probe(struct pci_dev *pdev, | |||
1700 | struct fb_info *fb_info; | 1700 | struct fb_info *fb_info; |
1701 | struct xgifb_video_info *xgifb_info; | 1701 | struct xgifb_video_info *xgifb_info; |
1702 | struct xgi_hw_device_info *hw_info; | 1702 | struct xgi_hw_device_info *hw_info; |
1703 | unsigned long video_size_max; | ||
1703 | 1704 | ||
1704 | fb_info = framebuffer_alloc(sizeof(*xgifb_info), &pdev->dev); | 1705 | fb_info = framebuffer_alloc(sizeof(*xgifb_info), &pdev->dev); |
1705 | if (!fb_info) | 1706 | if (!fb_info) |
@@ -1720,6 +1721,7 @@ static int __devinit xgifb_probe(struct pci_dev *pdev, | |||
1720 | xgifb_info->subsysvendor = pdev->subsystem_vendor; | 1721 | xgifb_info->subsysvendor = pdev->subsystem_vendor; |
1721 | xgifb_info->subsysdevice = pdev->subsystem_device; | 1722 | xgifb_info->subsysdevice = pdev->subsystem_device; |
1722 | 1723 | ||
1724 | video_size_max = pci_resource_len(pdev, 0); | ||
1723 | xgifb_info->video_base = pci_resource_start(pdev, 0); | 1725 | xgifb_info->video_base = pci_resource_start(pdev, 0); |
1724 | xgifb_info->mmio_base = pci_resource_start(pdev, 1); | 1726 | xgifb_info->mmio_base = pci_resource_start(pdev, 1); |
1725 | xgifb_info->mmio_size = pci_resource_len(pdev, 1); | 1727 | xgifb_info->mmio_size = pci_resource_len(pdev, 1); |
@@ -1780,6 +1782,8 @@ static int __devinit xgifb_probe(struct pci_dev *pdev, | |||
1780 | "Fatal error: Unable to determine RAM size.\n"); | 1782 | "Fatal error: Unable to determine RAM size.\n"); |
1781 | ret = -ENODEV; | 1783 | ret = -ENODEV; |
1782 | goto error_disable; | 1784 | goto error_disable; |
1785 | } else if (xgifb_info->video_size > video_size_max) { | ||
1786 | xgifb_info->video_size = video_size_max; | ||
1783 | } | 1787 | } |
1784 | 1788 | ||
1785 | /* Enable PCI_LINEAR_ADDRESSING and MMIO_ENABLE */ | 1789 | /* Enable PCI_LINEAR_ADDRESSING and MMIO_ENABLE */ |