qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/7] PPC: Add FSL (e500) MMU emulation v5
@ 2011-05-07 23:00 Alexander Graf
  2011-05-07 23:00 ` [Qemu-devel] [PATCH 1/7] PPC: Make MPC8544DS obey -cpu switch Alexander Graf
                   ` (6 more replies)
  0 siblings, 7 replies; 14+ messages in thread
From: Alexander Graf @ 2011-05-07 23:00 UTC (permalink / raw)
  To: QEMU-devel Developers; +Cc: Scott Wood, Edgar E. Iglesias, Liu Yu, Paul Brook

In a global effort to get rid of KVM-only targets, this is the next
important piece of the puzzle: e500 emulation :).

We had support for running an e500 KVM guest for a while now, but the
code could not be tested without a real e500 machine, because it required
KVM to work. This patchset adds emulation for the e500 MMU, enabling
anyone to use the MPC8544DS emulation.

v1 -> v2:

  - fix linux-user build
  - optimize tlb invalidate & search

v2 -> v3:

  - add qdev patch (enables -drive if=virtio)
  - fix mpc initial tlb size comment
  - enable cpu reset

v3 -> v4:

  - remove tlb_nbs
  - rename BOOKE_FSL to BOOKE206
  - generalize implementation to be extensible for future MMUs
  - check if tsize should be set
  - check if iprot should be set
  - set RPN on tlb miss
  - implement tlb_invalidate_all
  - use specific helper to set PIDs
  - create generic booke206 tlb flushing function
  - drop base_addr
  - new patch: MPC7544DS: Use new TLB helper function

v4 -> v5:

  - dont check iprot during tlb flush on reset (scott)
  - model qdev conversion similar to versatilepb (pbrook)

Alexander Graf (7):
  PPC: Make MPC8544DS obey -cpu switch
  PPC: Make MPC8544DS emulation work w/o KVM
  PPC: Add GS MSR definition
  PPC: Add another 64 bits to instruction feature mask
  PPC: Implement e500 (FSL) MMU
  PPC MPC7544DS: Use new TLB helper function
  PPC: Qdev'ify e500 pci

 hw/ppce500.h                |   22 ---
 hw/ppce500_mpc8544ds.c      |  108 ++++++++++++----
 hw/ppce500_pci.c            |  122 ++++++++++--------
 target-ppc/cpu.h            |  307 ++++++++++++++++++++++++++++++++++++++++++-
 target-ppc/helper.c         |  269 ++++++++++++++++++++++++++++++--------
 target-ppc/helper.h         |    6 +
 target-ppc/op_helper.c      |  296 +++++++++++++++++++++++++++++++++++++++++
 target-ppc/translate.c      |  118 +++++++++++++++--
 target-ppc/translate_init.c |  282 ++++++++++++++++++++++++++++-----------
 9 files changed, 1280 insertions(+), 250 deletions(-)
 delete mode 100644 hw/ppce500.h

^ permalink raw reply	[flat|nested] 14+ messages in thread
* [Qemu-devel] [PATCH 0/7] PPC: Add FSL (e500) MMU emulation v6
@ 2011-05-09 22:15 Alexander Graf
  2011-05-09 22:15 ` [Qemu-devel] [PATCH 2/7] PPC: Make MPC8544DS emulation work w/o KVM Alexander Graf
  0 siblings, 1 reply; 14+ messages in thread
From: Alexander Graf @ 2011-05-09 22:15 UTC (permalink / raw)
  To: QEMU-devel Developers; +Cc: Scott Wood, Edgar E. Iglesias, Liu Yu, Paul Brook

In a global effort to get rid of KVM-only targets, this is the next
important piece of the puzzle: e500 emulation :).

We had support for running an e500 KVM guest for a while now, but the
code could not be tested without a real e500 machine, because it required
KVM to work. This patchset adds emulation for the e500 MMU, enabling
anyone to use the MPC8544DS emulation.

v1 -> v2:

  - fix linux-user build
  - optimize tlb invalidate & search

v2 -> v3:

  - add qdev patch (enables -drive if=virtio)
  - fix mpc initial tlb size comment
  - enable cpu reset

v3 -> v4:

  - remove tlb_nbs
  - rename BOOKE_FSL to BOOKE206
  - generalize implementation to be extensible for future MMUs
  - check if tsize should be set
  - check if iprot should be set
  - set RPN on tlb miss
  - implement tlb_invalidate_all
  - use specific helper to set PIDs
  - create generic booke206 tlb flushing function
  - drop base_addr
  - new patch: MPC7544DS: Use new TLB helper function

v4 -> v5:

  - dont check iprot during tlb flush on reset (scott)
  - model qdev conversion similar to versatilepb (pbrook)

v5 -> v6:

  - use dynamically allocated boot_info struct (blue)
  - implement rA for tlbsx (scott)
  - use qdev.vmsd for vmstate registration (pbrook)

Alexander Graf (7):
  PPC: Make MPC8544DS obey -cpu switch
  PPC: Make MPC8544DS emulation work w/o KVM
  PPC: Add GS MSR definition
  PPC: Add another 64 bits to instruction feature mask
  PPC: Implement e500 (FSL) MMU
  PPC MPC7544DS: Use new TLB helper function
  PPC: Qdev'ify e500 pci

 hw/ppce500.h                |   22 ---
 hw/ppce500_mpc8544ds.c      |  113 ++++++++++++----
 hw/ppce500_pci.c            |  136 +++++++++++---------
 target-ppc/cpu.h            |  307 ++++++++++++++++++++++++++++++++++++++++++-
 target-ppc/helper.c         |  269 ++++++++++++++++++++++++++++++--------
 target-ppc/helper.h         |    6 +
 target-ppc/op_helper.c      |  296 +++++++++++++++++++++++++++++++++++++++++
 target-ppc/translate.c      |  120 +++++++++++++++--
 target-ppc/translate_init.c |  282 ++++++++++++++++++++++++++++-----------
 9 files changed, 1293 insertions(+), 258 deletions(-)
 delete mode 100644 hw/ppce500.h

^ permalink raw reply	[flat|nested] 14+ messages in thread
* [Qemu-devel] [PATCH 0/7] PPC: Add FSL (e500) MMU emulation v4
@ 2011-05-06 12:00 Alexander Graf
  2011-05-06 12:00 ` [Qemu-devel] [PATCH 2/7] PPC: Make MPC8544DS emulation work w/o KVM Alexander Graf
  0 siblings, 1 reply; 14+ messages in thread
From: Alexander Graf @ 2011-05-06 12:00 UTC (permalink / raw)
  To: QEMU-devel Developers; +Cc: Scott Wood, Edgar E. Iglesias, Liu Yu

In a global effort to get rid of KVM-only targets, this is the next
important piece of the puzzle: e500 emulation :).

We had support for running an e500 KVM guest for a while now, but the
code could not be tested without a real e500 machine, because it required
KVM to work. This patchset adds emulation for the e500 MMU, enabling
anyone to use the MPC8544DS emulation.

v1 -> v2:

  - fix linux-user build
  - optimize tlb invalidate & search

v2 -> v3:

  - add qdev patch (enables -drive if=virtio)
  - fix mpc initial tlb size comment
  - enable cpu reset

v3 -> v4:

  - remove tlb_nbs
  - rename BOOKE_FSL to BOOKE206
  - generalize implementation to be extensible for future MMUs
  - check if tsize should be set
  - check if iprot should be set
  - set RPN on tlb miss
  - implement tlb_invalidate_all
  - use specific helper to set PIDs
  - create generic booke206 tlb flushing function
  - drop base_addr
  - new patch: MPC7544DS: Use new TLB helper function

Alexander Graf (7):
  PPC: Make MPC8544DS obey -cpu switch
  PPC: Make MPC8544DS emulation work w/o KVM
  PPC: Add GS MSR definition
  PPC: Add another 64 bits to instruction feature mask
  PPC: Implement e500 (FSL) MMU
  PPC MPC7544DS: Use new TLB helper function
  PPC: Qdev'ify e500 pci

 hw/ppce500_mpc8544ds.c      |   92 +++++++++++---
 hw/ppce500_pci.c            |  111 ++++++++++------
 target-ppc/cpu.h            |  307 ++++++++++++++++++++++++++++++++++++++++++-
 target-ppc/helper.c         |  277 +++++++++++++++++++++++++++++++--------
 target-ppc/helper.h         |    6 +
 target-ppc/op_helper.c      |  296 +++++++++++++++++++++++++++++++++++++++++
 target-ppc/translate.c      |  116 +++++++++++++++--
 target-ppc/translate_init.c |  282 ++++++++++++++++++++++++++++-----------
 8 files changed, 1282 insertions(+), 205 deletions(-)

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2011-05-09 22:15 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-07 23:00 [Qemu-devel] [PATCH 0/7] PPC: Add FSL (e500) MMU emulation v5 Alexander Graf
2011-05-07 23:00 ` [Qemu-devel] [PATCH 1/7] PPC: Make MPC8544DS obey -cpu switch Alexander Graf
2011-05-07 23:00 ` [Qemu-devel] [PATCH 2/7] PPC: Make MPC8544DS emulation work w/o KVM Alexander Graf
2011-05-08 10:08   ` Blue Swirl
2011-05-08 13:42     ` Alexander Graf
2011-05-07 23:00 ` [Qemu-devel] [PATCH 3/7] PPC: Add GS MSR definition Alexander Graf
2011-05-07 23:00 ` [Qemu-devel] [PATCH 4/7] PPC: Add another 64 bits to instruction feature mask Alexander Graf
2011-05-07 23:00 ` [Qemu-devel] [PATCH 5/7] PPC: Implement e500 (FSL) MMU Alexander Graf
2011-05-07 23:00 ` [Qemu-devel] [PATCH 6/7] PPC MPC7544DS: Use new TLB helper function Alexander Graf
2011-05-07 23:00 ` [Qemu-devel] [PATCH 7/7] PPC: Qdev'ify e500 pci Alexander Graf
2011-05-07 23:48   ` Paul Brook
2011-05-07 23:58     ` Alexander Graf
  -- strict thread matches above, loose matches on Subject: below --
2011-05-09 22:15 [Qemu-devel] [PATCH 0/7] PPC: Add FSL (e500) MMU emulation v6 Alexander Graf
2011-05-09 22:15 ` [Qemu-devel] [PATCH 2/7] PPC: Make MPC8544DS emulation work w/o KVM Alexander Graf
2011-05-06 12:00 [Qemu-devel] [PATCH 0/7] PPC: Add FSL (e500) MMU emulation v4 Alexander Graf
2011-05-06 12:00 ` [Qemu-devel] [PATCH 2/7] PPC: Make MPC8544DS emulation work w/o KVM Alexander Graf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).