diff --git a/plugins/vli/fu-vli-device.c b/plugins/vli/fu-vli-device.c index 6a9c9a7f4..ded0daf4e 100644 --- a/plugins/vli/fu-vli-device.c +++ b/plugins/vli/fu-vli-device.c @@ -474,11 +474,16 @@ fu_vli_device_get_offset (FuVliDevice *self) static void fu_vli_device_to_string (FuDevice *device, guint idt, GString *str) { - FuVliDeviceClass *klass = FU_VLI_DEVICE_GET_CLASS (device); FuVliDevice *self = FU_VLI_DEVICE (device); FuVliDevicePrivate *priv = GET_PRIVATE (self); - fu_common_string_append_kv (str, idt, "DeviceKind", - fu_vli_common_device_kind_to_string (priv->kind)); + + /* parent */ + FU_DEVICE_CLASS (fu_vli_device_parent_class)->to_string (device, idt, str); + + if (priv->kind != FU_VLI_DEVICE_KIND_UNKNOWN) { + fu_common_string_append_kv (str, idt, "DeviceKind", + fu_vli_common_device_kind_to_string (priv->kind)); + } fu_common_string_append_kb (str, idt, "SpiAutoDetect", priv->spi_auto_detect); if (priv->flash_id != 0x0) { g_autofree gchar *tmp = fu_vli_device_get_flash_id_str (self); @@ -489,10 +494,6 @@ fu_vli_device_to_string (FuDevice *device, guint idt, GString *str) fu_vli_device_spi_req_to_string (i), priv->spi_cmds[i]); } - - /* subclassed further */ - if (klass->to_string != NULL) - return klass->to_string (self, idt, str); } static gboolean diff --git a/plugins/vli/fu-vli-device.h b/plugins/vli/fu-vli-device.h index 8de2c9aae..0446bbfb4 100644 --- a/plugins/vli/fu-vli-device.h +++ b/plugins/vli/fu-vli-device.h @@ -18,9 +18,6 @@ struct _FuVliDeviceClass FuUsbDeviceClass parent_class; gboolean (*setup) (FuVliDevice *self, GError **error); - void (*to_string) (FuVliDevice *self, - guint idt, - GString *str); gboolean (*spi_chip_erase) (FuVliDevice *self, GError **error); gboolean (*spi_sector_erase) (FuVliDevice *self, diff --git a/plugins/vli/fu-vli-usbhub-device.c b/plugins/vli/fu-vli-usbhub-device.c index 25aff3de3..e07167186 100644 --- a/plugins/vli/fu-vli-usbhub-device.c +++ b/plugins/vli/fu-vli-usbhub-device.c @@ -29,9 +29,13 @@ struct _FuVliUsbhubDevice G_DEFINE_TYPE (FuVliUsbhubDevice, fu_vli_usbhub_device, FU_TYPE_VLI_DEVICE) static void -fu_vli_usbhub_device_to_string (FuVliDevice *device, guint idt, GString *str) +fu_vli_usbhub_device_to_string (FuDevice *device, guint idt, GString *str) { FuVliUsbhubDevice *self = FU_VLI_USBHUB_DEVICE (device); + + /* parent */ + FU_DEVICE_CLASS (fu_vli_usbhub_device_parent_class)->to_string (device, idt, str); + fu_common_string_append_kb (str, idt, "DisablePowersave", self->disable_powersave); fu_common_string_append_kx (str, idt, "UpdateProtocol", self->update_protocol); if (self->update_protocol >= 0x2) { @@ -997,7 +1001,7 @@ fu_vli_usbhub_device_class_init (FuVliUsbhubDeviceClass *klass) klass_device->write_firmware = fu_vli_usbhub_device_write_firmware; klass_device->prepare_firmware = fu_vli_usbhub_device_prepare_firmware; klass_device->attach = fu_vli_usbhub_device_attach; - klass_vli_device->to_string = fu_vli_usbhub_device_to_string; + klass_device->to_string = fu_vli_usbhub_device_to_string; klass_vli_device->setup = fu_vli_usbhub_device_setup; klass_vli_device->spi_chip_erase = fu_vli_usbhub_device_spi_chip_erase; klass_vli_device->spi_sector_erase = fu_vli_usbhub_device_spi_sector_erase;