hw/qdev-clock: Display error hint when clock is missing from device
Instead of directly aborting, display a hint to help the developer figure out the problem (likely trying to connect a clock to a device pre-dating the Clock API, thus not expecting clocks). Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Luc Michel <luc@lmichel.fr> Reviewed-by: Damien Hedde <damien.hedde@greensocs.com> Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Message-Id: <20201012095804.3335117-4-f4bug@amsat.org>
This commit is contained in:
parent
709616c713
commit
01d858629e
|
@ -12,6 +12,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "qemu/osdep.h"
|
#include "qemu/osdep.h"
|
||||||
|
#include "qemu/error-report.h"
|
||||||
#include "hw/qdev-clock.h"
|
#include "hw/qdev-clock.h"
|
||||||
#include "hw/qdev-core.h"
|
#include "hw/qdev-core.h"
|
||||||
#include "qapi/error.h"
|
#include "qapi/error.h"
|
||||||
|
@ -153,6 +154,11 @@ Clock *qdev_get_clock_in(DeviceState *dev, const char *name)
|
||||||
assert(name);
|
assert(name);
|
||||||
|
|
||||||
ncl = qdev_get_clocklist(dev, name);
|
ncl = qdev_get_clocklist(dev, name);
|
||||||
|
if (!ncl) {
|
||||||
|
error_report("Can not find clock-in '%s' for device type '%s'",
|
||||||
|
name, object_get_typename(OBJECT(dev)));
|
||||||
|
abort();
|
||||||
|
}
|
||||||
assert(!ncl->output);
|
assert(!ncl->output);
|
||||||
|
|
||||||
return ncl->clock;
|
return ncl->clock;
|
||||||
|
@ -165,6 +171,11 @@ Clock *qdev_get_clock_out(DeviceState *dev, const char *name)
|
||||||
assert(name);
|
assert(name);
|
||||||
|
|
||||||
ncl = qdev_get_clocklist(dev, name);
|
ncl = qdev_get_clocklist(dev, name);
|
||||||
|
if (!ncl) {
|
||||||
|
error_report("Can not find clock-out '%s' for device type '%s'",
|
||||||
|
name, object_get_typename(OBJECT(dev)));
|
||||||
|
abort();
|
||||||
|
}
|
||||||
assert(ncl->output);
|
assert(ncl->output);
|
||||||
|
|
||||||
return ncl->clock;
|
return ncl->clock;
|
||||||
|
|
Loading…
Reference in a new issue