
This patch add mips64 cpu support. In this version, I have tested it both when configured running in ram version and running in rom version.
qemu-system-mips64 -M mips -cpu MIPS64R2-generic -bios u-boot.bin -nographic
U-Boot 2012.07-00146-g42c7773 (Sep 04 2012 - 21:56:46)
Board: Qemu -M mips CPU: unknown proc_id=0x10000 DRAM: 128 MiB Using default environment
In: serial Out: serial Err: serial Net: NE2000 qemu-mips64 #
Changes in V5: - omit camel-case style - avoid running "git bisect" failed - some code style problem corrected Changes in V4: - Add both big-endian and little-endian support - Remove cache probe - Add standalone support for mips64 Changes in V3: - merge related files into one patch, no longer one file one patch. - add detailed commit message. - remove standalone example. it's too complicate.
Zhizhou Zhang (4): MIPS: Don't use camel-case style MIPS: change address related header files MIPS: don't define CONFIG_SYS_TEXT_BASE in config.mk MIPS: add board qemu-mips64 support
arch/mips/cpu/mips32/cache.S | 10 +- arch/mips/cpu/mips32/cpu.c | 8 +- arch/mips/cpu/mips64/Makefile | 45 ++++++ arch/mips/cpu/mips64/cache.S | 229 +++++++++++++++++++++++++++++++ arch/mips/cpu/mips64/config.mk | 40 ++++++ arch/mips/cpu/mips64/cpu.c | 111 +++++++++++++++ arch/mips/cpu/mips64/interrupts.c | 34 +++++ arch/mips/cpu/mips64/start.S | 256 +++++++++++++++++++++++++++++++++++ arch/mips/cpu/mips64/time.c | 87 ++++++++++++ arch/mips/cpu/xburst/cpu.c | 12 +- arch/mips/cpu/xburst/start.S | 4 +- arch/mips/include/asm/addrspace.h | 2 +- arch/mips/include/asm/asm.h | 2 +- arch/mips/include/asm/cacheops.h | 82 +++++------ arch/mips/include/asm/io.h | 16 +++ arch/mips/include/asm/posix_types.h | 6 + board/qemu-mips/config.mk | 10 -- board/qemu-mips/u-boot.lds | 8 ++ boards.cfg | 2 + examples/standalone/mips64.lds | 59 ++++++++ include/configs/qemu-mips.h | 1 + include/configs/qemu-mips64.h | 171 +++++++++++++++++++++++ 22 files changed, 1125 insertions(+), 70 deletions(-) create mode 100644 arch/mips/cpu/mips64/Makefile create mode 100644 arch/mips/cpu/mips64/cache.S create mode 100644 arch/mips/cpu/mips64/config.mk create mode 100644 arch/mips/cpu/mips64/cpu.c create mode 100644 arch/mips/cpu/mips64/interrupts.c create mode 100644 arch/mips/cpu/mips64/start.S create mode 100644 arch/mips/cpu/mips64/time.c delete mode 100644 board/qemu-mips/config.mk create mode 100644 examples/standalone/mips64.lds create mode 100644 include/configs/qemu-mips64.h