mirror of
https://git.proxmox.com/git/fwupd
synced 2025-05-21 13:32:22 +00:00
trivial: Add a GObject property for FuVliDevice::kind
This commit is contained in:
parent
86febb681b
commit
ac48c7f45a
@ -24,6 +24,12 @@ G_DEFINE_TYPE_WITH_PRIVATE (FuVliDevice, fu_vli_device, FU_TYPE_USB_DEVICE)
|
||||
|
||||
#define GET_PRIVATE(o) (fu_vli_device_get_instance_private (o))
|
||||
|
||||
enum {
|
||||
PROP_0,
|
||||
PROP_KIND,
|
||||
PROP_LAST
|
||||
};
|
||||
|
||||
static const gchar *
|
||||
fu_vli_device_spi_req_to_string (FuVliDeviceSpiReq req)
|
||||
{
|
||||
@ -428,7 +434,11 @@ fu_vli_device_set_kind (FuVliDevice *self, FuVliDeviceKind device_kind)
|
||||
FuVliDevicePrivate *priv = GET_PRIVATE (self);
|
||||
guint32 sz;
|
||||
|
||||
priv->kind = device_kind;
|
||||
/* set and notify if different */
|
||||
if (priv->kind != device_kind) {
|
||||
priv->kind = device_kind;
|
||||
g_object_notify (G_OBJECT (self), "kind");
|
||||
}
|
||||
|
||||
/* set maximum firmware size */
|
||||
sz = fu_vli_common_device_kind_get_size (device_kind);
|
||||
@ -620,6 +630,35 @@ fu_vli_device_set_quirk_kv (FuDevice *device,
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void
|
||||
fu_vli_device_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
|
||||
{
|
||||
FuVliDevice *self = FU_VLI_DEVICE (object);
|
||||
FuVliDevicePrivate *priv = GET_PRIVATE (self);
|
||||
switch (prop_id) {
|
||||
case PROP_KIND:
|
||||
g_value_set_uint (value, priv->kind);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
fu_vli_device_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
|
||||
{
|
||||
FuVliDevice *self = FU_VLI_DEVICE (object);
|
||||
switch (prop_id) {
|
||||
case PROP_KIND:
|
||||
fu_vli_device_set_kind (self, g_value_get_uint (value));
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
fu_vli_device_init (FuVliDevice *self)
|
||||
{
|
||||
@ -640,6 +679,18 @@ static void
|
||||
fu_vli_device_class_init (FuVliDeviceClass *klass)
|
||||
{
|
||||
FuDeviceClass *klass_device = FU_DEVICE_CLASS (klass);
|
||||
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
||||
GParamSpec *pspec;
|
||||
|
||||
/* properties */
|
||||
object_class->get_property = fu_vli_device_get_property;
|
||||
object_class->set_property = fu_vli_device_set_property;
|
||||
pspec = g_param_spec_uint ("kind", NULL, NULL,
|
||||
0, G_MAXUINT, 0,
|
||||
G_PARAM_READWRITE |
|
||||
G_PARAM_STATIC_NAME);
|
||||
g_object_class_install_property (object_class, PROP_KIND, pspec);
|
||||
|
||||
klass_device->to_string = fu_vli_device_to_string;
|
||||
klass_device->set_quirk_kv = fu_vli_device_set_quirk_kv;
|
||||
klass_device->setup = fu_vli_device_setup;
|
||||
|
Loading…
Reference in New Issue
Block a user