lkml.org 
[lkml]   [2012]   [Jul]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[PATCH] Fix priority of non-BAR ROM data
    From
    Date
    If we've obtained the ROM data through other means (such as from EFI),
    we don't want to ignore it just because the IORESOURCE_ROM_SHADOW bit has
    got set. This fixes the Radeon ROM handling on my MacBookPro8,3 when booted
    via grub1-efi.

    Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
    ---
    This fixes patch 3/4 'PCI: Add support for non-BAR ROMs' for me.

    drivers/pci/rom.c | 13 +++++++------
    1 file changed, 7 insertions(+), 6 deletions(-)

    diff --git a/drivers/pci/rom.c b/drivers/pci/rom.c
    index 7ebaab6..4d437b5 100644
    --- a/drivers/pci/rom.c
    +++ b/drivers/pci/rom.c
    @@ -118,6 +118,13 @@ void __iomem *pci_map_rom(struct pci_dev *pdev, size_t *size)
    void __iomem *rom;

    /*
    + * Some devices may provide ROMs via a source other than the BAR
    + */
    + if (pdev->rom && pdev->romlen) {
    + *size = pdev->romlen;
    + return phys_to_virt(pdev->rom);
    + }
    + /*
    * IORESOURCE_ROM_SHADOW set on x86, x86_64 and IA64 supports legacy
    * memory map if the VGA enable bit of the Bridge Control register is
    * set for embedded VGA.
    @@ -126,12 +133,6 @@ void __iomem *pci_map_rom(struct pci_dev *pdev, size_t *size)
    /* primary video rom always starts here */
    start = (loff_t)0xC0000;
    *size = 0x20000; /* cover C000:0 through E000:0 */
    - /*
    - * Some devices may provide ROMs via a source other than the BAR
    - */
    - } else if (pdev->rom && pdev->romlen) {
    - *size = pdev->romlen;
    - return phys_to_virt(pdev->rom);
    } else {
    if (res->flags &
    (IORESOURCE_ROM_COPY | IORESOURCE_ROM_BIOS_COPY)) {
    --
    1.7.11.2


    --
    dwmw2
    [unhandled content-type:application/x-pkcs7-signature]
    \
     
     \ /
      Last update: 2012-07-30 00:21    [W:0.025 / U:0.220 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site