diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/staging/ozwpan/ozmain.c | 2 | ||||
-rw-r--r-- | drivers/staging/ozwpan/ozpd.c | 7 | ||||
-rw-r--r-- | drivers/staging/ozwpan/ozproto.c | 11 |
3 files changed, 18 insertions, 2 deletions
diff --git a/drivers/staging/ozwpan/ozmain.c b/drivers/staging/ozwpan/ozmain.c index 61b83f86ef63..8bb7d67da4b6 100644 --- a/drivers/staging/ozwpan/ozmain.c +++ b/drivers/staging/ozwpan/ozmain.c @@ -51,6 +51,6 @@ module_exit(ozwpan_exit); MODULE_AUTHOR("Chris Kelly"); MODULE_DESCRIPTION("Ozmo Devices USB over WiFi hcd driver"); -MODULE_VERSION("1.2.3-rc9"); +MODULE_VERSION("1.2.3-rc10"); MODULE_LICENSE("GPL"); diff --git a/drivers/staging/ozwpan/ozpd.c b/drivers/staging/ozwpan/ozpd.c index e9a3de041b8c..a99d0b49b45f 100644 --- a/drivers/staging/ozwpan/ozpd.c +++ b/drivers/staging/ozwpan/ozpd.c @@ -371,6 +371,12 @@ int oz_pd_sleep(struct oz_pd *pd) { int do_stop = 0; u16 stop_apps = 0; + char mac_buf[20]; + char *envp[2]; + + snprintf(mac_buf, sizeof(mac_buf), "ID_MAC=%pm", pd->mac_addr); + envp[0] = mac_buf; + envp[1] = NULL; oz_polling_lock_bh(); if (pd->state & (OZ_PD_S_SLEEP | OZ_PD_S_STOPPED)) { oz_polling_unlock_bh(); @@ -380,6 +386,7 @@ int oz_pd_sleep(struct oz_pd *pd) if (pd->keep_alive >= OZ_KALIVE_INFINITE) oz_pd_indicate_farewells(pd); oz_pd_set_state(pd, OZ_PD_S_SLEEP); + kobject_uevent_env(&g_oz_wpan_dev->kobj, KOBJ_CHANGE, envp); } else { do_stop = 1; } diff --git a/drivers/staging/ozwpan/ozproto.c b/drivers/staging/ozwpan/ozproto.c index c116e5250f6b..cbb1335f3ce1 100644 --- a/drivers/staging/ozwpan/ozproto.c +++ b/drivers/staging/ozwpan/ozproto.c @@ -348,8 +348,17 @@ static void oz_rx_frame(struct sk_buff *skb) pd = oz_pd_find(src_addr); if (pd) { - if (!(pd->state & OZ_PD_S_CONNECTED)) + if (!(pd->state & OZ_PD_S_CONNECTED)) { + char mac_buf[20]; + char *envp[2]; + snprintf(mac_buf, sizeof(mac_buf), "ID_MAC=%pm", + pd->mac_addr); + envp[0] = mac_buf; + envp[1] = NULL; oz_pd_set_state(pd, OZ_PD_S_CONNECTED); + kobject_uevent_env(&g_oz_wpan_dev->kobj, KOBJ_CHANGE, + envp); + } getnstimeofday(¤t_time); if ((current_time.tv_sec != pd->last_rx_timestamp.tv_sec) || (pd->presleep < MSEC_PER_SEC)) { |