From 7a7457567dad55be14246ccc38cc07e8f83e70cd Mon Sep 17 00:00:00 2001 From: gber Date: Fri, 14 Sep 2012 09:45:13 +0000 Subject: If virtual addresses are not set use one to one mapping. Do not map memory and IO space at address 0. Obtained from: Semihalf --- sys/dev/fdt/fdt_pci.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/fdt/fdt_pci.c b/sys/dev/fdt/fdt_pci.c index 68cf898..40f12cb 100644 --- a/sys/dev/fdt/fdt_pci.c +++ b/sys/dev/fdt/fdt_pci.c @@ -341,14 +341,14 @@ fdt_pci_devmap(phandle_t node, struct pmap_devmap *devmap, vm_offset_t io_va, if ((error = fdt_pci_ranges_decode(node, &io_space, &mem_space)) != 0) return (error); - devmap->pd_va = io_va; + devmap->pd_va = (io_va ? io_va : io_space.base_parent); devmap->pd_pa = io_space.base_parent; devmap->pd_size = io_space.len; devmap->pd_prot = VM_PROT_READ | VM_PROT_WRITE; devmap->pd_cache = PTE_NOCACHE; devmap++; - devmap->pd_va = mem_va; + devmap->pd_va = (mem_va ? mem_va : mem_space.base_parent); devmap->pd_pa = mem_space.base_parent; devmap->pd_size = mem_space.len; devmap->pd_prot = VM_PROT_READ | VM_PROT_WRITE; -- cgit v1.1