hw/nvram/xlnx-versal-efuse-ctrl.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
This change implements the ResettableClass interface for the device.
Signed-off-by: Tong Ho <tong.ho@amd.com>
---
hw/nvram/xlnx-versal-efuse-ctrl.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/hw/nvram/xlnx-versal-efuse-ctrl.c b/hw/nvram/xlnx-versal-efuse-ctrl.c
index b35ba65ab5..beb5661c35 100644
--- a/hw/nvram/xlnx-versal-efuse-ctrl.c
+++ b/hw/nvram/xlnx-versal-efuse-ctrl.c
@@ -2,6 +2,7 @@
* QEMU model of the Versal eFuse controller
*
* Copyright (c) 2020 Xilinx Inc.
+ * Copyright (c) 2023 Advanced Micro Devices, Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -657,9 +658,9 @@ static void efuse_ctrl_register_reset(RegisterInfo *reg)
register_reset(reg);
}
-static void efuse_ctrl_reset(DeviceState *dev)
+static void efuse_ctrl_reset_hold(Object *obj)
{
- XlnxVersalEFuseCtrl *s = XLNX_VERSAL_EFUSE_CTRL(dev);
+ XlnxVersalEFuseCtrl *s = XLNX_VERSAL_EFUSE_CTRL(obj);
unsigned int i;
for (i = 0; i < ARRAY_SIZE(s->regs_info); ++i) {
@@ -749,8 +750,9 @@ static Property efuse_ctrl_props[] = {
static void efuse_ctrl_class_init(ObjectClass *klass, void *data)
{
DeviceClass *dc = DEVICE_CLASS(klass);
+ ResettableClass *rc = RESETTABLE_CLASS(klass);
- dc->reset = efuse_ctrl_reset;
+ rc->phases.hold = efuse_ctrl_reset_hold;
dc->realize = efuse_ctrl_realize;
dc->vmsd = &vmstate_efuse_ctrl;
device_class_set_props(dc, efuse_ctrl_props);
--
2.25.1
On Wed, 4 Oct 2023 at 06:53, Tong Ho <tong.ho@amd.com> wrote: > > This change implements the ResettableClass interface for the device. > > Signed-off-by: Tong Ho <tong.ho@amd.com> > --- > hw/nvram/xlnx-versal-efuse-ctrl.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) Applied to target-arm.next, thanks. -- PMM
On [2023 Oct 03] Tue 22:53:39, Tong Ho wrote: > This change implements the ResettableClass interface for the device. > > Signed-off-by: Tong Ho <tong.ho@amd.com> Reviewed-by: Francisco Iglesias <frasse.iglesias@gmail.com> > --- > hw/nvram/xlnx-versal-efuse-ctrl.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/hw/nvram/xlnx-versal-efuse-ctrl.c b/hw/nvram/xlnx-versal-efuse-ctrl.c > index b35ba65ab5..beb5661c35 100644 > --- a/hw/nvram/xlnx-versal-efuse-ctrl.c > +++ b/hw/nvram/xlnx-versal-efuse-ctrl.c > @@ -2,6 +2,7 @@ > * QEMU model of the Versal eFuse controller > * > * Copyright (c) 2020 Xilinx Inc. > + * Copyright (c) 2023 Advanced Micro Devices, Inc. > * > * Permission is hereby granted, free of charge, to any person obtaining a copy > * of this software and associated documentation files (the "Software"), to deal > @@ -657,9 +658,9 @@ static void efuse_ctrl_register_reset(RegisterInfo *reg) > register_reset(reg); > } > > -static void efuse_ctrl_reset(DeviceState *dev) > +static void efuse_ctrl_reset_hold(Object *obj) > { > - XlnxVersalEFuseCtrl *s = XLNX_VERSAL_EFUSE_CTRL(dev); > + XlnxVersalEFuseCtrl *s = XLNX_VERSAL_EFUSE_CTRL(obj); > unsigned int i; > > for (i = 0; i < ARRAY_SIZE(s->regs_info); ++i) { > @@ -749,8 +750,9 @@ static Property efuse_ctrl_props[] = { > static void efuse_ctrl_class_init(ObjectClass *klass, void *data) > { > DeviceClass *dc = DEVICE_CLASS(klass); > + ResettableClass *rc = RESETTABLE_CLASS(klass); > > - dc->reset = efuse_ctrl_reset; > + rc->phases.hold = efuse_ctrl_reset_hold; > dc->realize = efuse_ctrl_realize; > dc->vmsd = &vmstate_efuse_ctrl; > device_class_set_props(dc, efuse_ctrl_props); > -- > 2.25.1 > >
© 2016 - 2024 Red Hat, Inc.