qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCHv8 0/3] fw_cfg: qdev-related tidy-ups
@ 2017-07-11 20:02 Mark Cave-Ayland
  2017-07-11 20:02 ` [Qemu-devel] [PATCHv8 1/3] fw_cfg: switch fw_cfg_find() to locate the fw_cfg device by type rather than path Mark Cave-Ayland
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Mark Cave-Ayland @ 2017-07-11 20:02 UTC (permalink / raw)
  To: qemu-devel, lersek, somlo, ehabkost, mst, pbonzini, rjones,
	imammedo, peter.maydell

As part of some ongoing sun4u work, I need to be able to wire the fw_cfg
IO interface to a separate IO space by instantiating the qdev device instead
of calling fw_cfg_init_io(). This patchset brings FW_CFG_IO in line with
FW_CFG_MEM and tidies up the realize methods accordingly.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Depends-on: https://lists.nongnu.org/archive/html/qemu-devel/2017-07/msg01994.html <20170707213052.13087-1-ehabkost@redhat.com>

v8:
- Rebase onto master
- Drop patches 1 and 2 since they have already been applied
- Drop patch 4 since fw_cfg_unattached_at_realize() isn't required (it was a
  bug in object_resolve_path_type())
- Add comment on the return value of fw_cfg_find()
- Add Reviewed-By from Igor

v7:
- Remove instance_init() function with assert()
- Switch fw_cfg_find() over to use object_resolve_path_type() which removes the
  need for the fw_cfg device to exist at a fixed QOM path
- Switch check for existence of another fw_cfg device over to use the new
  fw_cfg_find()
- Add check for fw_cfg parent at realize time

v6:
- Revert move of FWCfgEntry from fw_cfg.c to fw_cfg.h from v5
- Add Reviewed-by tag from Laszlo for patch 5
- Add Tested-by tags from Laszlo for the series

v5:
- Remove unused FWCfgIoState iobase and dma_iobase fields
- Add Reviewed-By tags from Laszlo
- Update commit message in patch 5 as suggested by Laszlo
- Move FWCfgEntry typedef from fw_cfg.h to typedefs.h with the others

v4:
- Undo accidental typedef change in patch 5 caught in v3 rework

v3:
- Rework patch 1 to use sysbus_add_io() as suggested by Laszlo
- Add Reviewed-By from Laszlo for patch 2
- Fix assert() when instantiating > 1 fw_cfg device (new patch 3)
- Rename fw_cfg_init1() to fw_cfg_common_realize() as part of patch 4

v2:
- Fix the QOM bug in patch 1 as indicated by Laszlo
- Minimise code churn compared to v1


Mark Cave-Ayland (3):
  fw_cfg: switch fw_cfg_find() to locate the fw_cfg device by type
    rather than path
  fw_cfg: move qdev_init_nofail() from fw_cfg_init1() to callers
  fw_cfg: move QOM type defines and fw_cfg types into fw_cfg.h

 hw/nvram/fw_cfg.c         |   91 +++++++++++++++------------------------------
 include/hw/nvram/fw_cfg.h |   50 +++++++++++++++++++++++++
 include/qemu/typedefs.h   |    1 +
 3 files changed, 82 insertions(+), 60 deletions(-)

-- 
1.7.10.4

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

end of thread, other threads:[~2017-07-11 21:31 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-11 20:02 [Qemu-devel] [PATCHv8 0/3] fw_cfg: qdev-related tidy-ups Mark Cave-Ayland
2017-07-11 20:02 ` [Qemu-devel] [PATCHv8 1/3] fw_cfg: switch fw_cfg_find() to locate the fw_cfg device by type rather than path Mark Cave-Ayland
2017-07-11 20:10   ` Eduardo Habkost
2017-07-11 20:15     ` Mark Cave-Ayland
2017-07-11 20:18     ` Michael S. Tsirkin
2017-07-11 20:26       ` Mark Cave-Ayland
2017-07-11 20:28         ` Eduardo Habkost
2017-07-11 20:49         ` Peter Maydell
2017-07-11 20:58           ` Eduardo Habkost
2017-07-11 21:04             ` Peter Maydell
2017-07-11 21:30           ` Laszlo Ersek
2017-07-11 20:02 ` [Qemu-devel] [PATCHv8 2/3] fw_cfg: move qdev_init_nofail() from fw_cfg_init1() to callers Mark Cave-Ayland
2017-07-11 21:12   ` Eduardo Habkost
2017-07-11 20:02 ` [Qemu-devel] [PATCHv8 3/3] fw_cfg: move QOM type defines and fw_cfg types into fw_cfg.h Mark Cave-Ayland

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