On 2017-02-01 23:06, Ben Greear wrote:
On 02/01/2017 09:27 AM, Ashok Raj Nagarajan wrote:
+static int nl80211_parse_sta_txpower_setting(struct genl_info
*info,
+ struct station_parameters *params)
+{
+ struct cfg80211_registered_device *rdev = info->user_ptr[0];
+ enum nl80211_tx_power_setting type;
+ int idx;
+
+ if (!rdev->ops->set_tx_power ||
+ !wiphy_ext_feature_isset(&rdev->wiphy,
+ NL80211_EXT_FEATURE_STA_TX_PWR))
+ return -EOPNOTSUPP;
Maybe always let a user set to default value even if the driver does
not
support setting specific values?
IMHO, having some default value in place of non-valid values may not
be the right way.
If a user or user-space script wants to always be able to initialize
things to default
values, it would be nice if it did not have to pay specific attention
to whether the
NIC supports STA_TX_PWR feature or not. Since a NIC that does not
support this feature will always
have sta TX power set to default by definition, that is why I think
you should let
the call succeed in that case.
I think it would be better/easier to handle the error cases in the
user-space scripts than at the driver here, no? NIC that doesn't support
this feature will set the tx power to the station depending on the rate
algorithm in place. So the same NIC and same station will have different
txpower depending on the environment? On the other hand, how do we
decide what constant (?) default value to be sent to userspace?
Thanks,
Ashok
Thanks,
Ben