From: Jani Nikula Date: Wed, 13 May 2015 12:34:04 +0000 (+0300) Subject: drm/i915/bios: abstract finding VBT in BIOS to a separate function X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=b34a991a2bf5b9bf0b8abcae7d0f8593fd59e909;p=linux-beck.git drm/i915/bios: abstract finding VBT in BIOS to a separate function Improve clarity. No functional changes. Signed-off-by: Jani Nikula Signed-off-by: Daniel Vetter --- diff --git a/drivers/gpu/drm/i915/intel_bios.c b/drivers/gpu/drm/i915/intel_bios.c index d39c41cf45a7..6e018ba53035 100644 --- a/drivers/gpu/drm/i915/intel_bios.c +++ b/drivers/gpu/drm/i915/intel_bios.c @@ -1235,6 +1235,22 @@ static const struct bdb_header *validate_vbt(const void *base, size_t size, return bdb; } +static const struct bdb_header *find_vbt(void *bios, size_t size) +{ + const struct bdb_header *bdb = NULL; + size_t i; + + /* Scour memory looking for the VBT signature. */ + for (i = 0; i + 4 < size; i++) { + if (memcmp(bios + i, "$VBT", 4) == 0) { + bdb = validate_vbt(bios, size, bios + i, "PCI ROM"); + break; + } + } + + return bdb; +} + /** * intel_parse_bios - find VBT and initialize settings from the BIOS * @dev: DRM device @@ -1263,22 +1279,13 @@ intel_parse_bios(struct drm_device *dev) dev_priv->opregion.vbt, "OpRegion"); if (bdb == NULL) { - size_t i, size; + size_t size; bios = pci_map_rom(pdev, &size); if (!bios) return -1; - /* Scour memory looking for the VBT signature */ - for (i = 0; i + 4 < size; i++) { - if (memcmp(bios + i, "$VBT", 4) == 0) { - bdb = validate_vbt(bios, size, - bios + i, - "PCI ROM"); - break; - } - } - + bdb = find_vbt(bios, size); if (!bdb) { pci_unmap_rom(pdev, bios); return -1;