
On 01/09/2016 10:02 PM, Daniel Schwierzeck wrote:
This patch series updates all MIPS asm header files containing I/O code as well as processor, register and assembly definitions. The source of the update are the MIPS asm header files of linux-4.4.
The main goal is to get a complete set of I/O accessors on MIPS and to support platform-specific address spaces and mappings. Also a working ioremap() implementation will be added, which supports platform-specific callbacks. Furthermore support for bit manipulating I/O accessors (clrbits_X, setbits_X, clrsetbits_X) will be added.
The patch series is also available on git://git.denx.de/u-boot-mips.git in branch mips_io_v1 and based on next branch.
@Wills I changed map_physmem() and used the new and working ioremap() function. Thus you can discard your patch.
@Wills, Purna You can use now ioremap() directly in your drivers. You can also use the new bit manipulating I/O accessors as requested by Marek. Please rebase and test your patch series against this series, thanks.
Thanks Daniel. Rebased my PIC32 patches on 'mips_io_v1' branch and tested functionality to work fine. Also updated drivers to use ioremap() (instead of pic32_ioremap()) and clrsetbits_le() wherever applicable.
Daniel Schwierzeck (9): MIPS: malta: do not pull in target header files in config.h MIPS: malta: fix IO accessor call MIPS: vct: fix I/O accessor calls MIPS: sync I/O related header files with linux-4.4 MIPS: sync processor and register definitions with linux-4.4 MIPS: fix SPDX license identifier in remaining arch header files MIPS: kconfig: add option for MIPS_L1_CACHE_SHIFT MIPS: implement bit manipulating I/O accessors MIPS: DO NOT MERGE: test I/O accessors
arch/mips/Kconfig | 21 + arch/mips/Makefile | 5 +- arch/mips/include/asm/addrspace.h | 10 +- arch/mips/include/asm/asm.h | 126 +- arch/mips/include/asm/bitops.h | 6 +- arch/mips/include/asm/byteorder.h | 6 +- arch/mips/include/asm/cache.h | 14 +- arch/mips/include/asm/cachectl.h | 6 +- arch/mips/include/asm/cacheops.h | 6 +- arch/mips/include/asm/const.h | 31 + arch/mips/include/asm/cpu-features.h | 30 + arch/mips/include/asm/io.h | 817 ++++++----- arch/mips/include/asm/isadep.h | 6 +- .../asm/mach-generic/cpu-feature-overrides.h | 11 + arch/mips/include/asm/mach-generic/ioremap.h | 32 + arch/mips/include/asm/mach-generic/mangle-port.h | 50 + arch/mips/include/asm/mach-generic/spaces.h | 102 ++ arch/mips/include/asm/mipsregs.h | 1495 ++++++++++++++------ arch/mips/include/asm/pgtable-bits.h | 283 ++++ arch/mips/include/asm/posix_types.h | 9 +- arch/mips/include/asm/processor.h | 6 +- arch/mips/include/asm/ptrace.h | 99 +- arch/mips/include/asm/reboot.h | 6 +- arch/mips/include/asm/reg.h | 6 +- arch/mips/include/asm/regdef.h | 12 +- arch/mips/include/asm/sgidefs.h | 6 +- arch/mips/include/asm/string.h | 6 +- arch/mips/include/asm/system.h | 6 +- arch/mips/include/asm/types.h | 6 +- arch/mips/include/asm/unaligned.h | 6 +- arch/mips/lib/cache.c | 4 +- arch/mips/lib/cache_init.S | 16 +- arch/mips/lib/io.c | 183 +++ board/imgtec/malta/malta.c | 3 +- board/micronas/vct/vct.h | 6 +- include/configs/malta.h | 9 +- 36 files changed, 2457 insertions(+), 989 deletions(-) create mode 100644 arch/mips/include/asm/const.h create mode 100644 arch/mips/include/asm/cpu-features.h create mode 100644 arch/mips/include/asm/mach-generic/cpu-feature-overrides.h create mode 100644 arch/mips/include/asm/mach-generic/ioremap.h create mode 100644 arch/mips/include/asm/mach-generic/mangle-port.h create mode 100644 arch/mips/include/asm/mach-generic/spaces.h create mode 100644 arch/mips/include/asm/pgtable-bits.h