diff options
author | Ben Chan <benchan@chromium.org> | 2013-01-17 23:11:09 -0800 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2013-01-18 11:27:51 +0100 |
commit | e75dba639febded0e2878a02f47829cedb6239f7 (patch) | |
tree | 6b2a027e217599819eac3e8938fadfcc5c75d43d /src/mm-device.c | |
parent | 2550cb20a9741378c747233ddea8e7a7daa5c198 (diff) |
core: add 'hotplugged' flag to indicate if modem is newly plugged in
This patch adds a 'hotplugged' flag to MMBaseModem to indicate if a
modem is newly plugged in. A plugin can use this information to
determine if, for example, the modem needs to be soft reset using the
ATZ command.
Dan Williams <dcbw@redhat.com> contributed the idea of implementation.
Diffstat (limited to 'src/mm-device.c')
-rw-r--r-- | src/mm-device.c | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/src/mm-device.c b/src/mm-device.c index e8330d62..a37b26d5 100644 --- a/src/mm-device.c +++ b/src/mm-device.c @@ -68,6 +68,9 @@ struct _MMDevicePrivate { /* When exported, a reference to the object manager */ GDBusObjectManagerServer *object_manager; + + /* Whether the device was hot-plugged. */ + gboolean hotplugged; }; /*****************************************************************************/ @@ -593,14 +596,24 @@ mm_device_get_port_probe_list (MMDevice *self) return copy; } +gboolean +mm_device_get_hotplugged (MMDevice *self) +{ + return self->priv->hotplugged; +} + /*****************************************************************************/ MMDevice * -mm_device_new (GUdevDevice *udev_device) +mm_device_new (GUdevDevice *udev_device, gboolean hotplugged) { - return MM_DEVICE (g_object_new (MM_TYPE_DEVICE, - MM_DEVICE_UDEV_DEVICE, udev_device, - NULL)); + MMDevice *device; + + device = MM_DEVICE (g_object_new (MM_TYPE_DEVICE, + MM_DEVICE_UDEV_DEVICE, udev_device, + NULL)); + device->priv->hotplugged = hotplugged; + return device; } static void |