qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 05/11] sdbus: add sdbus_create_slave()


From: Philippe Mathieu-Daudé
Subject: [Qemu-devel] [PATCH 05/11] sdbus: add sdbus_create_slave()
Date: Wed, 13 Dec 2017 17:44:30 -0300

The slave qdev is created connected to the parent SDBus.

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
 include/hw/sd/sd.h |  2 ++
 hw/sd/core.c       | 14 ++++++++++++++
 2 files changed, 16 insertions(+)

diff --git a/include/hw/sd/sd.h b/include/hw/sd/sd.h
index dc9d697c12..d402231724 100644
--- a/include/hw/sd/sd.h
+++ b/include/hw/sd/sd.h
@@ -52,6 +52,8 @@ struct SDBus {
 
 /* Functions to be used by qdevified callers */
 SDBus *sdbus_create_bus(DeviceState *parent, const char *name);
+DeviceState *sdbus_create_slave(SDBus *bus, const char *name);
+DeviceState *sdbus_create_slave_no_init(SDBus *bus, const char *name);
 int sdbus_do_command(SDBus *sd, SDRequest *req, uint8_t *response);
 void sdbus_write_data(SDBus *sd, uint8_t value);
 uint8_t sdbus_read_data(SDBus *sd);
diff --git a/hw/sd/core.c b/hw/sd/core.c
index 021a8d7258..fc9ccfedb2 100644
--- a/hw/sd/core.c
+++ b/hw/sd/core.c
@@ -188,6 +188,20 @@ static void sd_bus_register_types(void)
 
 type_init(sd_bus_register_types)
 
+DeviceState *sdbus_create_slave_no_init(SDBus *bus, const char *name)
+{
+    assert(bus);
+    return qdev_create(BUS(bus), name);
+}
+
+DeviceState *sdbus_create_slave(SDBus *bus, const char *name)
+{
+    DeviceState *dev = sdbus_create_slave_no_init(bus, name);
+
+    qdev_init_nofail(dev);
+    return dev;
+}
+
 SDBus *sdbus_create_bus(DeviceState *parent, const char *name)
 {
     return SD_BUS(qbus_create(TYPE_SD_BUS, parent, name));
-- 
2.15.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]