public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* PATCH: Adjust PCI rom code to handle more broken ROMs
@ 2005-07-16 13:09 Jon Smirl
  0 siblings, 0 replies; only message in thread
From: Jon Smirl @ 2005-07-16 13:09 UTC (permalink / raw)
  To: lkml, Greg KH, Thomas Winischhofer

[-- Attachment #1: Type: text/plain, Size: 366 bytes --]

There are ROMs reporting that their size exceeds their PCI ROM
resource window. This patch returns the minimum of the resource window
size or the size in the ROM.  An example of this breakage is the XGI
Volari Z7.

Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Patch is in an attachment since gmail will mangle the tabs.

-- 
Jon Smirl
jonsmirl@gmail.com

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: broken_rom.patch --]
[-- Type: text/x-patch; name="broken_rom.patch", Size: 426 bytes --]

diff --git a/drivers/pci/rom.c b/drivers/pci/rom.c
--- a/drivers/pci/rom.c
+++ b/drivers/pci/rom.c
@@ -125,7 +125,9 @@ void __iomem *pci_map_rom(struct pci_dev
 		image += readw(pds + 16) * 512;
 	} while (!last_image);
 
-	*size = image - rom;
+	/* never return a size larger than the PCI resource window */
+	/* there are known ROMs that get the size wrong */
+	*size = min((size_t)(image - rom), *size);
 
 	return rom;
 }

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2005-07-16 13:09 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-07-16 13:09 PATCH: Adjust PCI rom code to handle more broken ROMs Jon Smirl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox