Hi Samuel/Marcel,

I have already sent is a list of patches which implements rfkill
block/unblock and also does some code refactoring and cleanup. here is
the summary of each patch.

Patch 1:  Merges __connman_device_[enable/disable]_persistently with
__connman_device_[enable/disable]. This patch also simplifies device
enable/disable logic.            connman_device_enable() saves the
state of the device before calling driver->enable(). it does not
      change technology state or offlinemode state. The driver on
successfully enabling the device calls connman_device_set_powered(),
which changes technology state and offlinemode status.same for
connman_device_disable.

Patch 2: EnableTechnology API , traversed the entire device tree
enabling device nodes belonging to             the requested
technology. This patch, traverses the device_list in the technology
and enables each device.

Patch3: same as patch2, but for DisableTechnology API.

Patch4: set/unset offlinemode used to traverse the whole element
tree.Instead traverse technology_list and enable/disable all
technologies. Also removed device->offlinemode. The property reflected
current profile's offlinemode states which can be checked with
__connman_profile_get_offlinemode.

Patch5: This patch removes the rfkill cache from technology.c. There
is no way we can map rfkill IDs to connman_device struct, so there is
no need to maintain a rfkill cache. We use the rfkill events to
register/unregister platform switches. The state of the system is
decided by offlinemode property.
Added 2 new functions __connman_rfkill_block_id and
__connman_rfkill_block_technology.

Patch6: Remove device_table Hash table. devices are available via
technology->device_list.

Thanks,
Alok.
_______________________________________________
connman mailing list
connman@connman.net
http://lists.connman.net/listinfo/connman

Reply via email to