
On 11/13/2015 06:40 AM, Alexey Brodkin wrote:
Hi Stephen,
On Thu, 2015-11-12 at 16:00 -0700, Stephen Warren wrote:
On 11/12/2015 02:56 PM, Alexey Brodkin wrote:
Up until now there was no need in those stubs.
But since following commit compilation of U-Boot on ARC is broken: commit 7861204c9af7fec1ea9b41541c272516235a6c93 itest: make memory access work under sandbox
...
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.
This looks OK, but rather than cut/pasting this exact same code yet another time, why not create e.g. include/io-base.h that contains this, and share it amongst all architectures?
I did think about that.
But the problem is "asm/io.h" is included in lots of sources and it's hard to tell a reason for that inclusion - if it's only because of map_physmem() or other stuff that might exist in the same header.
For example lots of accessors are described in the same "asm/io.h" like readl(), writeb() etc.
Frankly I'd prefer in that particular case to limit a change to my architecture.
Still thoughts are welcome.
FWIW, I expected all the existing <asm/io.h> to simply include that new header in place of the duplicated code. Certainly, going through the entire source tree and adding #include statements for that new header would not be a good approach.