qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH V1 0/7] execute code from mmio area
@ 2017-02-16 14:30 fred.konrad
  2017-02-16 14:30 ` [Qemu-devel] [PATCH V1 1/7] cputlb: cleanup get_page_addr_code to use VICTIM_TLB_HIT fred.konrad
                   ` (8 more replies)
  0 siblings, 9 replies; 16+ messages in thread
From: fred.konrad @ 2017-02-16 14:30 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, pbonzini, edgar.iglesias, alistair.francis, clg,
	mark.burton, fred.konrad

From: KONRAD Frederic <fred.konrad@greensocs.com>

This series allows to execute code from mmio areas.
The main goal of this is to be able to run code for example from an SPI device.

The three first patch fixes the way get_page_addr_code fills the TLB.

The fourth patch implements the mmio execution helpers: the device must
implement the request_ptr callback of the MemoryRegion and will be notified when
the guest wants to execute code from it.

The fifth patch introduces mmio_interface device which allows to dynamically
map a host pointer somewhere into the memory.

The sixth patch implements the execution from the SPI memories in the
xilinx_spips model.

Thanks,
Fred

RFC -> V1:
  * Use an interface (mmio-interface) to fix any reference leak issue.

KONRAD Frederic (7):
  cputlb: cleanup get_page_addr_code to use VICTIM_TLB_HIT
  cputlb: move get_page_addr_code
  cputlb: fix the way get_page_addr_code fills the tlb
  exec: allow to get a pointer for some mmio memory region
  qdev: add MemoryRegion property
  introduce mmio_interface
  xilinx_spips: allow mmio execution

 cputlb.c                         |  81 ++++++++++++++-----------
 hw/misc/Makefile.objs            |   1 +
 hw/misc/mmio_interface.c         | 128 +++++++++++++++++++++++++++++++++++++++
 hw/ssi/xilinx_spips.c            |  74 ++++++++++++++++------
 include/exec/memory.h            |  35 +++++++++++
 include/hw/misc/mmio_interface.h |  49 +++++++++++++++
 include/hw/qdev-properties.h     |   2 +
 memory.c                         |  57 +++++++++++++++++
 8 files changed, 372 insertions(+), 55 deletions(-)
 create mode 100644 hw/misc/mmio_interface.c
 create mode 100644 include/hw/misc/mmio_interface.h

-- 
1.8.3.1

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

end of thread, other threads:[~2017-02-23 13:27 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-16 14:30 [Qemu-devel] [PATCH V1 0/7] execute code from mmio area fred.konrad
2017-02-16 14:30 ` [Qemu-devel] [PATCH V1 1/7] cputlb: cleanup get_page_addr_code to use VICTIM_TLB_HIT fred.konrad
2017-02-23  0:31   ` Richard Henderson
2017-02-16 14:30 ` [Qemu-devel] [PATCH V1 2/7] cputlb: move get_page_addr_code fred.konrad
2017-02-23  0:31   ` Richard Henderson
2017-02-16 14:30 ` [Qemu-devel] [PATCH V1 3/7] cputlb: fix the way get_page_addr_code fills the tlb fred.konrad
2017-02-23  0:31   ` Richard Henderson
2017-02-23 13:27     ` Frederic Konrad
2017-02-16 14:30 ` [Qemu-devel] [PATCH V1 4/7] exec: allow to get a pointer for some mmio memory region fred.konrad
2017-02-16 14:30 ` [Qemu-devel] [PATCH V1 5/7] qdev: add MemoryRegion property fred.konrad
2017-02-16 14:30 ` [Qemu-devel] [PATCH V1 6/7] introduce mmio_interface fred.konrad
2017-02-16 14:30 ` [Qemu-devel] [PATCH V1 7/7] xilinx_spips: allow mmio execution fred.konrad
2017-02-16 14:39 ` [Qemu-devel] [PATCH V1 0/7] execute code from mmio area Paolo Bonzini
2017-02-16 14:41   ` Frederic Konrad
2017-02-17  8:52   ` Frederic Konrad
2017-02-16 15:36 ` no-reply

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).