diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2012-05-17 01:53:37 +0200 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2012-05-17 01:53:37 +0200 |
commit | c3d905cfb9486eb1d2887fe8167f038c57fa0bb6 (patch) | |
tree | 9891c3889ed4e0e5e677e76b7db6a1a25bb856a1 /linux/src | |
parent | 4e95ccf97e0d6ef22849a36061a1d39586eea449 (diff) |
Offset bios32 entry
* linux/src/arch/i386/kernel/bios32.c (check_pcibios, pcibios_init): Convert
physical bios32 entry address to kernel virtual address.
Diffstat (limited to 'linux/src')
-rw-r--r-- | linux/src/arch/i386/kernel/bios32.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/linux/src/arch/i386/kernel/bios32.c b/linux/src/arch/i386/kernel/bios32.c index 4747972..b069ce4 100644 --- a/linux/src/arch/i386/kernel/bios32.c +++ b/linux/src/arch/i386/kernel/bios32.c @@ -206,7 +206,7 @@ static int check_pcibios(void) int pack; if ((pcibios_entry = bios32_service(PCI_SERVICE))) { - pci_indirect.address = pcibios_entry; + pci_indirect.address = phystokv(pcibios_entry); save_flags(flags); cli(); __asm__("lcall *(%%edi); cld\n\t" @@ -903,7 +903,7 @@ unsigned long pcibios_init(unsigned long memory_start, unsigned long memory_end) } else { bios32_entry = check->fields.entry; printk ("pcibios_init : BIOS32 Service Directory entry at 0x%lx\n", bios32_entry); - bios32_indirect.address = bios32_entry; + bios32_indirect.address = phystokv(bios32_entry); } } } |