Add the CFI quirks in setup() so the device can be open

This commit is contained in:
Richard Hughes 2022-03-31 09:53:27 +01:00
parent b3e1b74d21
commit dcd39d80a7
5 changed files with 8 additions and 6 deletions

View File

@ -15,6 +15,8 @@
*
* A chip conforming to the Common Flash Memory Interface, typically a SPI flash chip.
*
* Where required, the quirks instance IDs will be added in ->setup().
*
* See also: [class@FuDevice]
*/
@ -180,7 +182,7 @@ fu_cfi_device_get_flash_id_jedec(FuCfiDevice *self)
}
static gboolean
fu_cfi_device_probe(FuDevice *device, GError **error)
fu_cfi_device_setup(FuDevice *device, GError **error)
{
FuCfiDevice *self = FU_CFI_DEVICE(device);
FuCfiDevicePrivate *priv = GET_PRIVATE(self);
@ -482,7 +484,7 @@ fu_cfi_device_class_init(FuCfiDeviceClass *klass)
object_class->finalize = fu_cfi_device_finalize;
object_class->get_property = fu_cfi_device_get_property;
object_class->set_property = fu_cfi_device_set_property;
klass_device->probe = fu_cfi_device_probe;
klass_device->setup = fu_cfi_device_setup;
klass_device->to_string = fu_cfi_device_to_string;
klass_device->set_quirk_kv = fu_cfi_device_set_quirk_kv;

View File

@ -294,7 +294,7 @@ fu_device_cfi_device_func(void)
g_assert_true(ret);
cfi_device = fu_cfi_device_new(ctx, "3730");
ret = fu_device_probe(FU_DEVICE(cfi_device), &error);
ret = fu_device_setup(FU_DEVICE(cfi_device), &error);
g_assert_no_error(error);
g_assert_true(ret);

View File

@ -1622,7 +1622,7 @@ fu_genesys_scaler_device_setup(FuDevice *device, GError **error)
guint32 page_size;
self->cfi_device = fu_cfi_device_new(fu_device_get_context(FU_DEVICE(self)), "C84016");
if (!fu_device_probe(FU_DEVICE(self->cfi_device), error))
if (!fu_device_setup(FU_DEVICE(self->cfi_device), error))
return FALSE;
sector_size = fu_cfi_device_get_sector_size(self->cfi_device);

View File

@ -299,7 +299,7 @@ fu_genesys_usbhub_device_cfi_setup(FuGenesysUsbhubDevice *self, GError **error)
if (cfi_device == NULL)
continue;
if (!fu_device_probe(FU_DEVICE(cfi_device), &error_local)) {
if (!fu_device_setup(FU_DEVICE(cfi_device), &error_local)) {
g_debug("ignoring %s: %s", flash_id, error_local->message);
continue;
}

View File

@ -601,7 +601,7 @@ fu_vli_device_setup(FuDevice *device, GError **error)
/* use the correct flash device */
fu_cfi_device_set_flash_id(priv->cfi_device, flash_id);
if (!fu_device_probe(FU_DEVICE(priv->cfi_device), error))
if (!fu_device_setup(FU_DEVICE(priv->cfi_device), error))
return FALSE;
/* add extra instance IDs to include the SPI variant */