Hi Rob,

On Tue, 04 Sep 2012 07:44:16 -0500 Rob Herring <robherri...@gmail.com> wrote:
>
> Right. The PCI i/o reserved area has a dummy physical address of 0 and 
> needs to be skipped by ioremap searches. So we don't set 
> VM_ARM_STATIC_MAPPING to prevent matches by ioremap. The vm_struct settings
> don't really matter when we do the real mapping of the i/o space.
> 
> Here's my merge:

Thanks, I shall use this in tomorrow's tree.

> diff --cc arch/arm/mm/mmu.c
> index 4c2d045,c2fa21d,512b2c0..18144e6
> --- a/arch/arm/mm/mmu.c
> +++ b/arch/arm/mm/mmu.c
> @@@@ -785,6 -785,6 -786,19 +786,19 @@@@ void __init iotable_init(struct 
> map_des
>         }
>    }
>    
> ++ void __init vm_reserve_area_early(unsigned long addr, unsigned long size,
> ++                                void *caller)
> ++ {
> ++      struct vm_struct *vm;
> ++ 
> ++      vm = early_alloc_aligned(sizeof(*vm), __alignof__(*vm));
> ++      vm->addr = (void *)addr;
> ++      vm->size = size;
>   -     vm->flags = VM_IOREMAP | VM_ARM_STATIC_MAPPING;
> +++     vm->flags = VM_IOREMAP | VM_ARM_EMPTY_MAPPING;
> ++      vm->caller = caller;
> ++      vm_area_add_early(vm);
> ++ }
> ++ 

-- 
Cheers,
Stephen Rothwell                    s...@canb.auug.org.au

Attachment: pgpMJIVe7u1Xg.pgp
Description: PGP signature

Reply via email to