From: Chris Wulff <crwu...@gmail.com>

This set of patches adds support for the Altera NiosII soft-core processor,
along with the hardware drivers needed to boot linux. I have tested the soft-mmu
target and can boot to a shell with uClinux and a linux 3.0 kernel.

Also included is a MicroBlaze configuration that is dynamically created
from a device tree file that matches the NiosII one. These assign QEMU device
emulation to the address space where specified in the device tree file.

Chris Wulff (9):
  NiosII: Add support for the Altera NiosII soft-core CPU.
  NiosII: Disassembly of NiosII instructions ported from GDB.
  Altera: Add support for Altera devices required to boot linux on
    NiosII.
  LabX: Support for some Lab X FPGA devices.
  FDT: Add additional access methods for array types and walking
    children.
  NiosII: Build system and documentation integration.
  NiosII: Add a config that is dynamically set up by a device tree
    file.
  MicroBlaze: Add a config that is dynamically set up by a device tree
    file.
  xilinx_timer: Fix a compile error if debug messages are enabled.

 MAINTAINERS                            |    5 +
 Makefile.objs                          |    2 +
 arch_init.c                            |    2 +
 arch_init.h                            |    1 +
 configure                              |   11 +
 cpu-exec.c                             |   12 +-
 default-configs/microblaze-softmmu.mak |    1 +
 default-configs/nios2-linux-user.mak   |    1 +
 default-configs/nios2-softmmu.mak      |    6 +
 device_tree.c                          |   88 ++
 device_tree.h                          |   18 +
 dis-asm.h                              |    3 +
 disas.c                                |    3 +
 elf.h                                  |    2 +
 exec.c                                 |    6 +-
 gdbstub.c                              |   29 +
 hw/Makefile.objs                       |   12 +
 hw/altera.h                            |   34 +
 hw/altera_timer.c                      |  198 +++
 hw/altera_uart.c                       |  218 ++++
 hw/altera_vic.c                        |  195 +++
 hw/labx_audio_depacketizer.c           |  409 ++++++
 hw/labx_audio_packetizer.c             |  397 ++++++
 hw/labx_devices.h                      |  103 ++
 hw/labx_dma.c                          |  241 ++++
 hw/labx_ethernet.c                     |  615 +++++++++
 hw/labx_microblaze_devicetree.c        |  597 +++++++++
 hw/labx_nios2_devicetree.c             |  665 ++++++++++
 hw/labx_ptp.c                          |  291 +++++
 hw/microblaze/Makefile.objs            |    3 +-
 hw/nios2.h                             |   46 +
 hw/nios2/Makefile.objs                 |    6 +
 hw/nios2_pic_cpu.c                     |   48 +
 hw/xilinx_timer.c                      |    3 +-
 linux-user/elfload.c                   |   29 +
 monitor.c                              |    5 +-
 nios2-dis.c                            |  417 +++++++
 nios2-isa.h                            | 2150 ++++++++++++++++++++++++++++++++
 nios2-opc.c                            |  540 ++++++++
 nios2.h                                |  366 ++++++
 qapi-schema.json                       |    2 +-
 qemu-doc.texi                          |    3 +
 target-nios2/Makefile.objs             |    5 +
 target-nios2/altera_iic.c              |  100 ++
 target-nios2/cpu-qom.h                 |   69 +
 target-nios2/cpu.c                     |   83 ++
 target-nios2/cpu.h                     |  259 ++++
 target-nios2/exec.h                    |   60 +
 target-nios2/helper.c                  |  291 +++++
 target-nios2/helper.h                  |   45 +
 target-nios2/instruction.c             | 1463 ++++++++++++++++++++++
 target-nios2/instruction.h             |  290 +++++
 target-nios2/machine.c                 |   33 +
 target-nios2/mmu.c                     |  273 ++++
 target-nios2/mmu.h                     |   49 +
 target-nios2/op_helper.c               |  125 ++
 target-nios2/translate.c               |  252 ++++
 57 files changed, 11172 insertions(+), 8 deletions(-)
 create mode 100644 default-configs/nios2-linux-user.mak
 create mode 100644 default-configs/nios2-softmmu.mak
 create mode 100644 hw/altera.h
 create mode 100644 hw/altera_timer.c
 create mode 100644 hw/altera_uart.c
 create mode 100644 hw/altera_vic.c
 create mode 100644 hw/labx_audio_depacketizer.c
 create mode 100644 hw/labx_audio_packetizer.c
 create mode 100644 hw/labx_devices.h
 create mode 100644 hw/labx_dma.c
 create mode 100644 hw/labx_ethernet.c
 create mode 100644 hw/labx_microblaze_devicetree.c
 create mode 100644 hw/labx_nios2_devicetree.c
 create mode 100644 hw/labx_ptp.c
 create mode 100644 hw/nios2.h
 create mode 100644 hw/nios2/Makefile.objs
 create mode 100644 hw/nios2_pic_cpu.c
 create mode 100644 nios2-dis.c
 create mode 100644 nios2-isa.h
 create mode 100644 nios2-opc.c
 create mode 100644 nios2.h
 create mode 100644 target-nios2/Makefile.objs
 create mode 100644 target-nios2/altera_iic.c
 create mode 100644 target-nios2/cpu-qom.h
 create mode 100644 target-nios2/cpu.c
 create mode 100644 target-nios2/cpu.h
 create mode 100644 target-nios2/exec.h
 create mode 100644 target-nios2/helper.c
 create mode 100644 target-nios2/helper.h
 create mode 100644 target-nios2/instruction.c
 create mode 100644 target-nios2/instruction.h
 create mode 100644 target-nios2/machine.c
 create mode 100644 target-nios2/mmu.c
 create mode 100644 target-nios2/mmu.h
 create mode 100644 target-nios2/op_helper.c
 create mode 100644 target-nios2/translate.c

-- 
1.7.9.5


Reply via email to