[U-Boot] [PATCH 07/11] flash/cfi_flash: Use virtual sector start address, not phys

Haavard Skinnemoen haavard.skinnemoen at atmel.com
Wed Jan 14 12:45:10 CET 2009


Kumar Gala wrote:
> As I look at this we really need to understand what Haavard was trying  
> to get with:
> 
> commit 12d30aa79779c2aa7a998bbae4c075f822a53004
> Author: Haavard Skinnemoen <hskinnemoen at atmel.com>
> Date:   Thu Dec 13 12:56:34 2007 +0100
> 
>      cfi_flash: Use map_physmem() and unmap_physmem()
> 
>      Use map_physmem() and unmap_physmem() to convert from physical to
>      virtual addresses. This gives the arch a chance to provide an  
> uncached
>      mapping for flash accesses.
> 
>      Signed-off-by: Haavard Skinnemoen <hskinnemoen at atmel.com>
> 
> Since this only addresses the usage in cfi_flash.c but not in other  
> users of flash_info (like commands)

Yeah, there are probably tons of places that really should use
map/unmap_physmem() but doesn't. I've been playing with the thought of
enabling the Paging bit on AVR32 to support uncached mappings of all
physical memory...this is likely to make all of those places very
visible.

My goal was to solve a very specific problem (make the cfi_flash driver
work on AVR32 boards) by introducing a generic primitive which may be
used to solve other similar problems in the future.

I also think it conceptually makes sense to treat physical and virtual
addresses as different entities, as they are fundamentally not the same
thing on many architectures.

Haavard


More information about the U-Boot mailing list