hw/char/pl011: Un-inline pl011_create()
pl011_create() is only used in DeviceRealize handlers, not a hot-path. Inlining is not justified. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20230220115114.25237-3-philmd@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
cb4c33f014
commit
11f2ee1db6
@ -19,10 +19,12 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "qemu/osdep.h"
|
#include "qemu/osdep.h"
|
||||||
|
#include "qapi/error.h"
|
||||||
#include "hw/char/pl011.h"
|
#include "hw/char/pl011.h"
|
||||||
#include "hw/irq.h"
|
#include "hw/irq.h"
|
||||||
#include "hw/sysbus.h"
|
#include "hw/sysbus.h"
|
||||||
#include "hw/qdev-clock.h"
|
#include "hw/qdev-clock.h"
|
||||||
|
#include "hw/qdev-properties.h"
|
||||||
#include "hw/qdev-properties-system.h"
|
#include "hw/qdev-properties-system.h"
|
||||||
#include "migration/vmstate.h"
|
#include "migration/vmstate.h"
|
||||||
#include "chardev/char-fe.h"
|
#include "chardev/char-fe.h"
|
||||||
@ -31,6 +33,21 @@
|
|||||||
#include "qemu/module.h"
|
#include "qemu/module.h"
|
||||||
#include "trace.h"
|
#include "trace.h"
|
||||||
|
|
||||||
|
DeviceState *pl011_create(hwaddr addr, qemu_irq irq, Chardev *chr)
|
||||||
|
{
|
||||||
|
DeviceState *dev;
|
||||||
|
SysBusDevice *s;
|
||||||
|
|
||||||
|
dev = qdev_new("pl011");
|
||||||
|
s = SYS_BUS_DEVICE(dev);
|
||||||
|
qdev_prop_set_chr(dev, "chardev", chr);
|
||||||
|
sysbus_realize_and_unref(s, &error_fatal);
|
||||||
|
sysbus_mmio_map(s, 0, addr);
|
||||||
|
sysbus_connect_irq(s, 0, irq);
|
||||||
|
|
||||||
|
return dev;
|
||||||
|
}
|
||||||
|
|
||||||
#define PL011_INT_TX 0x20
|
#define PL011_INT_TX 0x20
|
||||||
#define PL011_INT_RX 0x10
|
#define PL011_INT_RX 0x10
|
||||||
|
|
||||||
|
@ -15,10 +15,8 @@
|
|||||||
#ifndef HW_PL011_H
|
#ifndef HW_PL011_H
|
||||||
#define HW_PL011_H
|
#define HW_PL011_H
|
||||||
|
|
||||||
#include "hw/qdev-properties.h"
|
|
||||||
#include "hw/sysbus.h"
|
#include "hw/sysbus.h"
|
||||||
#include "chardev/char-fe.h"
|
#include "chardev/char-fe.h"
|
||||||
#include "qapi/error.h"
|
|
||||||
#include "qom/object.h"
|
#include "qom/object.h"
|
||||||
|
|
||||||
#define TYPE_PL011 "pl011"
|
#define TYPE_PL011 "pl011"
|
||||||
@ -57,22 +55,7 @@ struct PL011State {
|
|||||||
const unsigned char *id;
|
const unsigned char *id;
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline DeviceState *pl011_create(hwaddr addr,
|
DeviceState *pl011_create(hwaddr addr, qemu_irq irq, Chardev *chr);
|
||||||
qemu_irq irq,
|
|
||||||
Chardev *chr)
|
|
||||||
{
|
|
||||||
DeviceState *dev;
|
|
||||||
SysBusDevice *s;
|
|
||||||
|
|
||||||
dev = qdev_new("pl011");
|
|
||||||
s = SYS_BUS_DEVICE(dev);
|
|
||||||
qdev_prop_set_chr(dev, "chardev", chr);
|
|
||||||
sysbus_realize_and_unref(s, &error_fatal);
|
|
||||||
sysbus_mmio_map(s, 0, addr);
|
|
||||||
sysbus_connect_irq(s, 0, irq);
|
|
||||||
|
|
||||||
return dev;
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline DeviceState *pl011_luminary_create(hwaddr addr,
|
static inline DeviceState *pl011_luminary_create(hwaddr addr,
|
||||||
qemu_irq irq,
|
qemu_irq irq,
|
||||||
|
Loading…
Reference in New Issue
Block a user