All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] arc: add stubs for map_physmem() and unmap_physmem()
Date: Fri, 13 Nov 2015 18:23:16 +0000	[thread overview]
Message-ID: <1447438996.5262.12.camel@synopsys.com> (raw)
In-Reply-To: <CAPnjgZ09v4ZHMnFcBQypTW0OM6sZ6bzMkbNqAA-g8-w=VQd=VQ@mail.gmail.com>

Hi Simon,

On Fri, 2015-11-13 at 11:14 -0700, Simon Glass wrote:
> Hi Alexey,
> 
> On 12 November 2015 at 14:56, Alexey Brodkin
> <Alexey.Brodkin@synopsys.com> wrote:
> > Up until now there was no need in those stubs.
> > 
> > But since following commit compilation of U-Boot on ARC is broken:
> > ------------------------>8----------------------
> > commit 7861204c9af7fec1ea9b41541c272516235a6c93
> > Author: Stephen Warren <swarren@wwwdotorg.org>
> > Date:   Sat Oct 3 13:56:46 2015 -0600
> > 
> >     itest: make memory access work under sandbox
> > 
> >     itest accesses memory, and hence must map/unmap it. Without doing so, it
> >     accesses invalid addresses and crashes.
> > 
> >     Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
> >     Reviewed-by: Simon Glass <sjg@chromium.org>
> > ------------------------>8----------------------
> > 
> > That's because CMD_ITEST is enabled by default in common/Kconfig and now
> > map_physmem()/unmap_physmem() is used there.
> > 
> > So this patch adds missing stubs for ARC.
> > 
> > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > Cc: Stephen Warren <swarren@wwwdotorg.org>
> > Cc: Simon Glass <sjg@chromium.org>
> > ---
> >  arch/arc/include/asm/io.h | 24 ++++++++++++++++++++++++
> >  1 file changed, 24 insertions(+)
> > 
> > diff --git a/arch/arc/include/asm/io.h b/arch/arc/include/asm/io.h
> > index 24b7337..281682c 100644
> > --- a/arch/arc/include/asm/io.h
> > +++ b/arch/arc/include/asm/io.h
> > @@ -10,6 +10,30 @@
> >  #include <linux/types.h>
> >  #include <asm/byteorder.h>
> > 
> > +/*
> > + * Given a physical address and a length, return a virtual address
> > + * that can be used to access the memory range with the caching
> > + * properties specified by "flags".
> > + */
> > +#define MAP_NOCACHE    (0)
> > +#define MAP_WRCOMBINE  (0)
> > +#define MAP_WRBACK     (0)
> > +#define MAP_WRTHROUGH  (0)
> > +
> > +static inline void *
> > +map_physmem(phys_addr_t paddr, unsigned long len, unsigned long flags)
> > +{
> > +       return (void *)((unsigned long)paddr);
> > +}
> > +
> > +/*
> > + * Take down a mapping set up by map_physmem().
> > + */
> > +static inline void unmap_physmem(void *vaddr, unsigned long flags)
> > +{
> > +
> > +}
> > +
> >  static inline void sync(void)
> >  {
> >         /* Not yet implemented */
> > --
> > 2.4.3
> > 
> 
> What error does this solve?
---------------------->8-------------------
  CC      common/cmd_itest.o
common/cmd_itest.c: In function 'evalexp':
common/cmd_itest.c:61:3: warning: implicit
declaration of function 'map_physmem' [-Wimplicit-function-declaration]
   buf = map_physmem(addr, w, MAP_WRBACK);
   ^
com
mon/cmd_itest.c:61:30: error: 'MAP_WRBACK' undeclared (first use in this function)
   buf = map_physmem(addr, w,
MAP_WRBACK);
                              ^
common/cmd_itest.c:61:30: note: each undeclared identifier is reported only
once for each function it appears in
common/cmd_itest.c:71:3: warning: implicit declaration of function 'unmap_physmem' [
-Wimplicit-function-declaration]
   unmap_physmem(buf, w);
   ^
scripts/Makefile.build:277: recipe for target
'common/cmd_itest.o' failed
make[1]: *** [common/cmd_itest.o] Error 1
Makefile:1211: recipe for target 'common' failed
make
: *** [common] Error 2
---------------------->8-------------------

> Is CONFIG_ARCH_MAP_SYSMEM defined for arc?

No
---------------------->8-------------------
$ cat .config | grep CONFIG_ARCH_MAP_SYSMEM---------------------->8-------------------

-Alexey

  reply	other threads:[~2015-11-13 18:23 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-12 21:56 [U-Boot] [PATCH] arc: add stubs for map_physmem() and unmap_physmem() Alexey Brodkin
2015-11-12 23:00 ` Stephen Warren
2015-11-13 13:40   ` Alexey Brodkin
2015-11-13 16:06     ` Stephen Warren
2015-11-13 18:14 ` Simon Glass
2015-11-13 18:23   ` Alexey Brodkin [this message]
2015-11-14  2:03     ` Simon Glass
2015-11-16 13:47       ` Alexey Brodkin
2015-11-16 21:08         ` Simon Glass
2015-11-16 22:15           ` Alexey Brodkin
2015-11-16 23:15             ` Stephen Warren
2015-11-17 21:43               ` Alexey Brodkin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1447438996.5262.12.camel@synopsys.com \
    --to=alexey.brodkin@synopsys.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.