This series introduces support for the MIPS Boston development board. It begins by introducing support for moving MIPS Coherence Manager GCRs which Boston software typically does to avoid conflicting with its flash memory region. An API is then added to retrieve the emulated MIPS GIC timer frequency, which is used to report system clock frequency to software via "platform registers" which the Boston board provides. An issue with the MIPS GIC that current Boston Linux kernels encounter is fixed, and an API introduced to allow the board to determine whether the MIPS CPS hardware is supported.
The last 3 patches are more extensive, providing support for the FIT image format used with Boston, the Xilinx PCIe controller which Boston boards include 3 of, and finally the Boston board support itself. This can be tested with either U-Boot or Linux if desired. U-Boot support is available in the following patchset: https://www.mail-archive.com/u-boot@lists.denx.de/msg221003.html Linux kernel support will hopefully be submitted for v4.9, but an older version of it can be found in the "eng" branch of: git://git.linux-mips.org/pub/scm/linux-mti.git The vmlinux.gz.itb make target should be used when building a Linux kernel to run on the Boston board. Paul Burton (7): hw/mips_cmgcr: allow GCR base to be moved hw/mips_gictimer: provide API for retrieving frequency hw/mips_gic: Update pin state on mask changes target-mips: Provide function to test if a CPU supports an ISA loader: Support Flattened Image Trees (FIT images) hw: xilinx-pcie: Add support for Xilinx AXI PCIe Controller hw/mips: MIPS Boston board support default-configs/mips-softmmu-common.mak | 2 + hw/core/Makefile.objs | 1 + hw/core/loader-fit.c | 287 +++++++++++++++++ hw/core/loader.c | 3 +- hw/intc/mips_gic.c | 56 ++-- hw/mips/Makefile.objs | 1 + hw/mips/boston.c | 526 ++++++++++++++++++++++++++++++++ hw/misc/mips_cmgcr.c | 17 ++ hw/pci-host/Makefile.objs | 1 + hw/pci-host/xilinx-pcie.c | 310 +++++++++++++++++++ hw/timer/mips_gictimer.c | 5 + include/hw/loader-fit.h | 41 +++ include/hw/loader.h | 2 + include/hw/misc/mips_cmgcr.h | 3 + include/hw/pci-host/xilinx-pcie.h | 102 +++++++ include/hw/timer/mips_gictimer.h | 1 + target-mips/cpu.h | 1 + target-mips/translate.c | 10 + 18 files changed, 1342 insertions(+), 27 deletions(-) create mode 100644 hw/core/loader-fit.c create mode 100644 hw/mips/boston.c create mode 100644 hw/pci-host/xilinx-pcie.c create mode 100644 include/hw/loader-fit.h create mode 100644 include/hw/pci-host/xilinx-pcie.h -- 2.9.3