qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/2] armv7m: Remove armv7m_init() function
@ 2018-06-01 14:43 Peter Maydell
  2018-06-01 14:43 ` [Qemu-devel] [PATCH 1/2] stellaris: Stop using armv7m_init() Peter Maydell
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Peter Maydell @ 2018-06-01 14:43 UTC (permalink / raw)
  To: qemu-arm, qemu-devel
  Cc: patches, Julia Suvorova, Stefan Hajnoczi, Joel Stanley,
	Jim Mussared, Steffen Görtz

The armv7m_init() function is a legacy from before we properly QOMified
ARMv7M, and it has some flaws:
    
 * it combines work that needs to be done by an SoC object (creating
   and initializing the TYPE_ARMV7M object) with work that needs to
   be done by the board model (setting the system up to load the ELF
   file specified with -kernel)
 * TYPE_ARMV7M creation failure is fatal, but an SoC object wants to
   arrange to propagate the failure outward
 * it uses allocate-and-create via qdev_create() whereas the current
   preferred style for SoC objects is to do creation in-place

This patchset fixes the only current caller (the stellaris board)
to not use it, and then removes the function.
    
New board and SoC models should do the two jobs this function
was doing themselves, in the right places and with whatever their
preferred style/error handling is.

(I've cc'd the people working on the nRF51 SoC model, as a heads-up
that they'll need to update their code so it compiles once this
hits master.)

thanks
-- PMM

Peter Maydell (2):
  stellaris: Stop using armv7m_init()
  hw/arm/armv7m: Remove unused armv7m_init() function

 include/hw/arm/arm.h |  8 ++------
 hw/arm/armv7m.c      | 21 ---------------------
 hw/arm/stellaris.c   | 12 ++++++++++--
 3 files changed, 12 insertions(+), 29 deletions(-)

-- 
2.17.1

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

end of thread, other threads:[~2018-06-13 14:39 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-01 14:43 [Qemu-devel] [PATCH 0/2] armv7m: Remove armv7m_init() function Peter Maydell
2018-06-01 14:43 ` [Qemu-devel] [PATCH 1/2] stellaris: Stop using armv7m_init() Peter Maydell
2018-06-13 14:38   ` Stefan Hajnoczi
2018-06-01 14:43 ` [Qemu-devel] [PATCH 2/2] hw/arm/armv7m: Remove unused armv7m_init() function Peter Maydell
2018-06-03  0:48   ` Joel Stanley
2018-06-03 12:14     ` Peter Maydell
2018-06-13 14:39   ` Stefan Hajnoczi
2018-06-11 14:04 ` [Qemu-devel] [Qemu-arm] [PATCH 0/2] armv7m: Remove " Peter Maydell
2018-06-11 15:15   ` Philippe Mathieu-Daudé

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