[U-Boot] [PATCH 03/12] ns16550: change map_sysmem to map_physmem

Simon Glass sjg at chromium.org
Mon Nov 16 22:08:39 CET 2015


Hi Thomas,

On 16 November 2015 at 07:36, Thomas Chou <thomas at wytron.com.tw> wrote:
> Change map_sysmem() to map_physmem(), because sandbox is the only
> arch which define map_sysmem() and it actually only calls
> map_physmem(). For some arch like nios2, the flag should be
> MAP_NOCACHE for port access.

Why change it to map_physmem()? Doesn't that make assumptions about
how sandbox is implemented?

>
> Signed-off-by: Thomas Chou <thomas at wytron.com.tw>
> ---
>  drivers/serial/ns16550.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/serial/ns16550.c b/drivers/serial/ns16550.c
> index 6433844..8d028de 100644
> --- a/drivers/serial/ns16550.c
> +++ b/drivers/serial/ns16550.c
> @@ -8,7 +8,6 @@
>  #include <dm.h>
>  #include <errno.h>
>  #include <fdtdec.h>
> -#include <mapmem.h>
>  #include <ns16550.h>
>  #include <serial.h>
>  #include <watchdog.h>
> @@ -97,7 +96,7 @@ static void ns16550_writeb(NS16550_t port, int offset, int value)
>         unsigned char *addr;
>
>         offset *= 1 << plat->reg_shift;
> -       addr = map_sysmem(plat->base, 0) + offset;
> +       addr = map_physmem(plat->base, 0, MAP_NOCACHE) + offset;
>         /*
>          * As far as we know it doesn't make sense to support selection of
>          * these options at run-time, so use the existing CONFIG options.
> @@ -111,7 +110,7 @@ static int ns16550_readb(NS16550_t port, int offset)
>         unsigned char *addr;
>
>         offset *= 1 << plat->reg_shift;
> -       addr = map_sysmem(plat->base, 0) + offset;
> +       addr = map_physmem(plat->base, 0, MAP_NOCACHE) + offset;
>
>         return serial_in_shift(addr, plat->reg_shift);
>  }
> --
> 2.5.0
>

Regards,
Simon


More information about the U-Boot mailing list