From 96bcbb2e4eb69065150203deaa2c13046a22af6a Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Fri, 30 Sep 2022 14:34:44 +0200 Subject: [PATCH] wireless: allow set_retry ubus notify command to trigger a wdev restart This can be used to retry bringing up a wireless device after receiving a hotplug event Signed-off-by: Felix Fietkau --- wireless.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/wireless.c b/wireless.c index bd847e7..118f5a7 100644 --- a/wireless.c +++ b/wireless.c @@ -1403,10 +1403,11 @@ wireless_device_set_retry(struct wireless_device *wdev, struct blob_attr *data) struct blob_attr *val; blobmsg_parse(&retry_policy, 1, &val, blobmsg_data(data), blobmsg_data_len(data)); - if (!val) - return UBUS_STATUS_INVALID_ARGUMENT; - - wdev->retry = blobmsg_get_u32(val); + if (val) + wdev->retry = blobmsg_get_u32(val); + else + wdev->retry = WIRELESS_SETUP_RETRY; + __wireless_device_set_up(wdev, 0); netifd_log_message(L_NOTICE, "Wireless device '%s' set retry=%d\n", wdev->name, wdev->retry); return 0; } -- 2.30.2