drivers/net/usb/hso.c
131
struct rfkill *rfkill;
drivers/net/usb/hso.c
2453
hso_net->rfkill = rfkill_alloc(hso_net->name,
drivers/net/usb/hso.c
2457
if (!hso_net->rfkill)
drivers/net/usb/hso.c
2460
if (rfkill_register(hso_net->rfkill) < 0) {
drivers/net/usb/hso.c
2461
rfkill_destroy(hso_net->rfkill);
drivers/net/usb/hso.c
2462
hso_net->rfkill = NULL;
drivers/net/usb/hso.c
3119
struct rfkill *rfk = dev2net(network_table[i])->rfkill;
drivers/net/wireless/intel/iwlegacy/3945-mac.c
2091
u32 rfkill;
drivers/net/wireless/intel/iwlegacy/3945-mac.c
2112
rfkill = il_rd_prph(il, APMG_RFKILL_REG);
drivers/net/wireless/intel/iwlegacy/3945-mac.c
2113
D_INFO("RFKILL status: 0x%x\n", rfkill);
drivers/net/wireless/intel/iwlegacy/3945-mac.c
2115
if (rfkill & 0x1) {
drivers/net/wireless/intel/iwlegacy/4965-mac.c
4426
il->isr_stats.rfkill++;
drivers/net/wireless/intel/iwlegacy/common.h
1021
u32 rfkill;
drivers/net/wireless/intel/iwlegacy/debug.c
680
il->isr_stats.rfkill);
drivers/net/wireless/intel/iwlwifi/mei/iwl-mei.h
314
void (*rfkill)(void *priv, bool blocked, bool csme_taking_ownership);
drivers/net/wireless/intel/iwlwifi/mei/main.c
1827
ops->rfkill(priv, mei->link_prot_state, false);
drivers/net/wireless/intel/iwlwifi/mei/main.c
2144
iwl_mei_cache.ops->rfkill(iwl_mei_cache.priv, false, false);
drivers/net/wireless/intel/iwlwifi/mei/main.c
754
iwl_mei_cache.ops->rfkill(iwl_mei_cache.priv,
drivers/net/wireless/intel/iwlwifi/mei/main.c
831
iwl_mei_cache.ops->rfkill(iwl_mei_cache.priv, false, false);
drivers/net/wireless/intel/iwlwifi/mei/main.c
872
iwl_mei_cache.ops->rfkill(iwl_mei_cache.priv, true, true);
drivers/net/wireless/intel/iwlwifi/mei/main.c
927
iwl_mei_cache.ops->rfkill(iwl_mei_cache.priv, false, false);
drivers/net/wireless/intel/iwlwifi/mvm/mvm.h
2652
mvm->hw_registered ? rfkill_soft_blocked(mvm->hw->wiphy->rfkill) : false;
drivers/net/wireless/intel/iwlwifi/mvm/ops.c
1190
.rfkill = iwl_mvm_mei_rfkill,
drivers/net/wireless/intel/iwlwifi/pcie/gen1_2/internal.h
67
u32 rfkill;
drivers/net/wireless/intel/iwlwifi/pcie/gen1_2/rx.c
1818
isr_stats->rfkill++;
drivers/net/wireless/intel/iwlwifi/pcie/gen1_2/trans.c
2914
"HW RF KILL switch toggled:\t %u\n", isr_stats->rfkill);
drivers/net/wireless/intel/iwlwifi/pcie/gen1_2/trans.c
3218
DEBUGFS_READ_WRITE_FILE_OPS(rfkill);
drivers/net/wireless/intel/iwlwifi/pcie/gen1_2/trans.c
3246
DEBUGFS_ADD_FILE(rfkill, dir, 0600);
drivers/net/wireless/realtek/rtlwifi/base.c
499
rtlpriv->rfkill.rfkill_state = true;
drivers/net/wireless/realtek/rtlwifi/base.c
506
rtlpriv->rfkill.rfkill_state ? "on" : "off");
drivers/net/wireless/realtek/rtlwifi/base.c
508
rtlpriv->rfkill.rfkill_state = radio_state;
drivers/net/wireless/realtek/rtlwifi/base.c
510
blocked = rtlpriv->rfkill.rfkill_state != 1;
drivers/net/wireless/realtek/rtlwifi/core.c
1698
if (unlikely(radio_state != rtlpriv->rfkill.rfkill_state)) {
drivers/net/wireless/realtek/rtlwifi/core.c
1699
rtlpriv->rfkill.rfkill_state = radio_state;
drivers/net/wireless/realtek/rtlwifi/core.c
1705
blocked = !rtlpriv->rfkill.rfkill_state;
drivers/net/wireless/realtek/rtlwifi/wifi.h
2667
struct rtl_rfkill rfkill;
drivers/platform/x86/acer-wmi.c
2364
static struct rfkill *acer_rfkill_register(struct device *dev,
drivers/platform/x86/acer-wmi.c
2369
struct rfkill *rfkill_dev;
drivers/platform/x86/acer-wmi.c
369
static struct rfkill *wireless_rfkill;
drivers/platform/x86/acer-wmi.c
370
static struct rfkill *bluetooth_rfkill;
drivers/platform/x86/acer-wmi.c
371
static struct rfkill *threeg_rfkill;
drivers/platform/x86/amilo-rfkill.c
99
static struct rfkill *amilo_rfkill_dev;
drivers/platform/x86/asus-laptop.c
1285
rfkill_set_sw_state(asus->gps.rfkill, !value);
drivers/platform/x86/asus-laptop.c
1327
if (!rfk->rfkill)
drivers/platform/x86/asus-laptop.c
1330
rfkill_unregister(rfk->rfkill);
drivers/platform/x86/asus-laptop.c
1331
rfkill_destroy(rfk->rfkill);
drivers/platform/x86/asus-laptop.c
1332
rfk->rfkill = NULL;
drivers/platform/x86/asus-laptop.c
1351
rfk->rfkill = rfkill_alloc(name, &asus->platform_device->dev,
drivers/platform/x86/asus-laptop.c
1353
if (!rfk->rfkill)
drivers/platform/x86/asus-laptop.c
1356
result = rfkill_register(rfk->rfkill);
drivers/platform/x86/asus-laptop.c
1358
rfkill_destroy(rfk->rfkill);
drivers/platform/x86/asus-laptop.c
1359
rfk->rfkill = NULL;
drivers/platform/x86/asus-laptop.c
227
struct rfkill *rfkill;
drivers/platform/x86/asus-wmi.c
2168
if (asus->wlan.rfkill)
drivers/platform/x86/asus-wmi.c
2169
rfkill_set_sw_state(asus->wlan.rfkill, blocked);
drivers/platform/x86/asus-wmi.c
226
struct rfkill *rfkill;
drivers/platform/x86/asus-wmi.c
2352
static void asus_rfkill_query(struct rfkill *rfkill, void *data)
drivers/platform/x86/asus-wmi.c
2362
rfkill_set_sw_state(priv->rfkill, !result);
drivers/platform/x86/asus-wmi.c
2399
struct rfkill **rfkill = &arfkill->rfkill;
drivers/platform/x86/asus-wmi.c
2409
*rfkill = rfkill_alloc(name, &asus->platform_device->dev, type,
drivers/platform/x86/asus-wmi.c
2412
*rfkill = rfkill_alloc(name, &asus->platform_device->dev, type,
drivers/platform/x86/asus-wmi.c
2415
if (!*rfkill)
drivers/platform/x86/asus-wmi.c
2420
rfkill_set_led_trigger_name(*rfkill, "asus-wlan");
drivers/platform/x86/asus-wmi.c
2422
rfkill_init_sw_state(*rfkill, !result);
drivers/platform/x86/asus-wmi.c
2423
result = rfkill_register(*rfkill);
drivers/platform/x86/asus-wmi.c
2425
rfkill_destroy(*rfkill);
drivers/platform/x86/asus-wmi.c
2426
*rfkill = NULL;
drivers/platform/x86/asus-wmi.c
2440
if (asus->wlan.rfkill) {
drivers/platform/x86/asus-wmi.c
2441
rfkill_unregister(asus->wlan.rfkill);
drivers/platform/x86/asus-wmi.c
2442
rfkill_destroy(asus->wlan.rfkill);
drivers/platform/x86/asus-wmi.c
2443
asus->wlan.rfkill = NULL;
drivers/platform/x86/asus-wmi.c
2455
if (asus->bluetooth.rfkill) {
drivers/platform/x86/asus-wmi.c
2456
rfkill_unregister(asus->bluetooth.rfkill);
drivers/platform/x86/asus-wmi.c
2457
rfkill_destroy(asus->bluetooth.rfkill);
drivers/platform/x86/asus-wmi.c
2458
asus->bluetooth.rfkill = NULL;
drivers/platform/x86/asus-wmi.c
2460
if (asus->wimax.rfkill) {
drivers/platform/x86/asus-wmi.c
2461
rfkill_unregister(asus->wimax.rfkill);
drivers/platform/x86/asus-wmi.c
2462
rfkill_destroy(asus->wimax.rfkill);
drivers/platform/x86/asus-wmi.c
2463
asus->wimax.rfkill = NULL;
drivers/platform/x86/asus-wmi.c
2465
if (asus->wwan3g.rfkill) {
drivers/platform/x86/asus-wmi.c
2466
rfkill_unregister(asus->wwan3g.rfkill);
drivers/platform/x86/asus-wmi.c
2467
rfkill_destroy(asus->wwan3g.rfkill);
drivers/platform/x86/asus-wmi.c
2468
asus->wwan3g.rfkill = NULL;
drivers/platform/x86/asus-wmi.c
2470
if (asus->gps.rfkill) {
drivers/platform/x86/asus-wmi.c
2471
rfkill_unregister(asus->gps.rfkill);
drivers/platform/x86/asus-wmi.c
2472
rfkill_destroy(asus->gps.rfkill);
drivers/platform/x86/asus-wmi.c
2473
asus->gps.rfkill = NULL;
drivers/platform/x86/asus-wmi.c
2475
if (asus->uwb.rfkill) {
drivers/platform/x86/asus-wmi.c
2476
rfkill_unregister(asus->uwb.rfkill);
drivers/platform/x86/asus-wmi.c
2477
rfkill_destroy(asus->uwb.rfkill);
drivers/platform/x86/asus-wmi.c
2478
asus->uwb.rfkill = NULL;
drivers/platform/x86/asus-wmi.c
5220
if (asus->wlan.rfkill) {
drivers/platform/x86/asus-wmi.c
5256
if (asus->wlan.rfkill)
drivers/platform/x86/asus-wmi.c
5259
if (asus->bluetooth.rfkill) {
drivers/platform/x86/asus-wmi.c
5262
rfkill_set_sw_state(asus->bluetooth.rfkill, bl);
drivers/platform/x86/asus-wmi.c
5264
if (asus->wimax.rfkill) {
drivers/platform/x86/asus-wmi.c
5266
rfkill_set_sw_state(asus->wimax.rfkill, bl);
drivers/platform/x86/asus-wmi.c
5268
if (asus->wwan3g.rfkill) {
drivers/platform/x86/asus-wmi.c
5270
rfkill_set_sw_state(asus->wwan3g.rfkill, bl);
drivers/platform/x86/asus-wmi.c
5272
if (asus->gps.rfkill) {
drivers/platform/x86/asus-wmi.c
5274
rfkill_set_sw_state(asus->gps.rfkill, bl);
drivers/platform/x86/asus-wmi.c
5276
if (asus->uwb.rfkill) {
drivers/platform/x86/asus-wmi.c
5278
rfkill_set_sw_state(asus->uwb.rfkill, bl);
drivers/platform/x86/classmate-laptop.c
910
static void cmpc_rfkill_query(struct rfkill *rfkill, void *data)
drivers/platform/x86/classmate-laptop.c
921
rfkill_set_sw_state(rfkill, blocked);
drivers/platform/x86/classmate-laptop.c
958
struct rfkill *rf;
drivers/platform/x86/compal-laptop.c
353
static void compal_rfkill_poll(struct rfkill *rfkill, void *data)
drivers/platform/x86/compal-laptop.c
357
rfkill_set_hw_state(rfkill, hw_blocked);
drivers/platform/x86/compal-laptop.c
751
static struct rfkill *wifi_rfkill;
drivers/platform/x86/compal-laptop.c
752
static struct rfkill *bt_rfkill;
drivers/platform/x86/dell/dell-laptop.c
551
static void dell_rfkill_update_sw_state(struct rfkill *rfkill, int radio,
drivers/platform/x86/dell/dell-laptop.c
557
int block = rfkill_blocked(rfkill);
drivers/platform/x86/dell/dell-laptop.c
563
rfkill_set_sw_state(rfkill, !!(status & BIT(radio + 16)));
drivers/platform/x86/dell/dell-laptop.c
567
static void dell_rfkill_update_hw_state(struct rfkill *rfkill, int radio,
drivers/platform/x86/dell/dell-laptop.c
571
rfkill_set_hw_state(rfkill, !(status & BIT(16)));
drivers/platform/x86/dell/dell-laptop.c
574
static void dell_rfkill_query(struct rfkill *rfkill, void *data)
drivers/platform/x86/dell/dell-laptop.c
597
dell_rfkill_update_hw_state(rfkill, radio, status, hwswitch);
drivers/platform/x86/dell/dell-laptop.c
97
static struct rfkill *wifi_rfkill;
drivers/platform/x86/dell/dell-laptop.c
98
static struct rfkill *bluetooth_rfkill;
drivers/platform/x86/dell/dell-laptop.c
99
static struct rfkill *wwan_rfkill;
drivers/platform/x86/dell/dell-rbtn.c
117
if (rbtn_data->rfkill)
drivers/platform/x86/dell/dell-rbtn.c
125
rbtn_data->rfkill = rfkill_alloc("dell-rbtn", &device->dev,
drivers/platform/x86/dell/dell-rbtn.c
127
if (!rbtn_data->rfkill)
drivers/platform/x86/dell/dell-rbtn.c
130
ret = rfkill_register(rbtn_data->rfkill);
drivers/platform/x86/dell/dell-rbtn.c
132
rfkill_destroy(rbtn_data->rfkill);
drivers/platform/x86/dell/dell-rbtn.c
133
rbtn_data->rfkill = NULL;
drivers/platform/x86/dell/dell-rbtn.c
144
if (!rbtn_data->rfkill)
drivers/platform/x86/dell/dell-rbtn.c
147
rfkill_unregister(rbtn_data->rfkill);
drivers/platform/x86/dell/dell-rbtn.c
148
rfkill_destroy(rbtn_data->rfkill);
drivers/platform/x86/dell/dell-rbtn.c
149
rbtn_data->rfkill = NULL;
drivers/platform/x86/dell/dell-rbtn.c
156
if (rbtn_data->rfkill)
drivers/platform/x86/dell/dell-rbtn.c
157
rbtn_rfkill_query(rbtn_data->rfkill, device);
drivers/platform/x86/dell/dell-rbtn.c
23
struct rfkill *rfkill;
drivers/platform/x86/dell/dell-rbtn.c
89
static void rbtn_rfkill_query(struct rfkill *rfkill, void *data)
drivers/platform/x86/dell/dell-rbtn.c
98
rfkill_set_states(rfkill, state, state);
drivers/platform/x86/eeepc-laptop.c
166
struct rfkill *wlan_rfkill;
drivers/platform/x86/eeepc-laptop.c
167
struct rfkill *bluetooth_rfkill;
drivers/platform/x86/eeepc-laptop.c
168
struct rfkill *wwan3g_rfkill;
drivers/platform/x86/eeepc-laptop.c
169
struct rfkill *wimax_rfkill;
drivers/platform/x86/eeepc-laptop.c
766
struct rfkill **rfkill,
drivers/platform/x86/eeepc-laptop.c
777
*rfkill = rfkill_alloc(name, &eeepc->platform_device->dev, type,
drivers/platform/x86/eeepc-laptop.c
780
if (!*rfkill)
drivers/platform/x86/eeepc-laptop.c
783
rfkill_init_sw_state(*rfkill, get_acpi(eeepc, cm) != 1);
drivers/platform/x86/eeepc-laptop.c
784
result = rfkill_register(*rfkill);
drivers/platform/x86/eeepc-laptop.c
786
rfkill_destroy(*rfkill);
drivers/platform/x86/eeepc-laptop.c
787
*rfkill = NULL;
drivers/platform/x86/hp/hp-wmi.c
1392
struct rfkill *rfkill;
drivers/platform/x86/hp/hp-wmi.c
1425
rfkill = rfkill_alloc(name, &device->dev, type,
drivers/platform/x86/hp/hp-wmi.c
1427
if (!rfkill) {
drivers/platform/x86/hp/hp-wmi.c
1434
rfkill2[rfkill2_count].rfkill = rfkill;
drivers/platform/x86/hp/hp-wmi.c
1436
rfkill_init_sw_state(rfkill,
drivers/platform/x86/hp/hp-wmi.c
1438
rfkill_set_hw_state(rfkill,
drivers/platform/x86/hp/hp-wmi.c
1444
err = rfkill_register(rfkill);
drivers/platform/x86/hp/hp-wmi.c
1446
rfkill_destroy(rfkill);
drivers/platform/x86/hp/hp-wmi.c
1456
rfkill_unregister(rfkill2[rfkill2_count - 1].rfkill);
drivers/platform/x86/hp/hp-wmi.c
1457
rfkill_destroy(rfkill2[rfkill2_count - 1].rfkill);
drivers/platform/x86/hp/hp-wmi.c
2271
rfkill_unregister(rfkill2[i].rfkill);
drivers/platform/x86/hp/hp-wmi.c
2272
rfkill_destroy(rfkill2[i].rfkill);
drivers/platform/x86/hp/hp-wmi.c
420
static struct rfkill *wifi_rfkill;
drivers/platform/x86/hp/hp-wmi.c
421
static struct rfkill *bluetooth_rfkill;
drivers/platform/x86/hp/hp-wmi.c
422
static struct rfkill *wwan_rfkill;
drivers/platform/x86/hp/hp-wmi.c
427
struct rfkill *rfkill;
drivers/platform/x86/hp/hp-wmi.c
945
rfkill_set_states(rfkill2[i].rfkill,
drivers/platform/x86/intel/oaktrail.c
116
static struct rfkill *oaktrail_rfkill_new(char *name, enum rfkill_type type,
drivers/platform/x86/intel/oaktrail.c
119
struct rfkill *rfkill_dev;
drivers/platform/x86/intel/oaktrail.c
140
static inline void __oaktrail_rfkill_cleanup(struct rfkill *rf)
drivers/platform/x86/intel/oaktrail.c
87
static struct rfkill *bt_rfkill;
drivers/platform/x86/intel/oaktrail.c
88
static struct rfkill *gps_rfkill;
drivers/platform/x86/intel/oaktrail.c
89
static struct rfkill *wifi_rfkill;
drivers/platform/x86/intel/oaktrail.c
90
static struct rfkill *wwan_rfkill;
drivers/platform/x86/lenovo/ideapad-laptop.c
177
struct rfkill *rfk[IDEAPAD_RFKILL_DEV_NUM];
drivers/platform/x86/lenovo/thinkpad_acpi.c
1093
struct rfkill *rfkill;
drivers/platform/x86/lenovo/thinkpad_acpi.c
1118
rfkill_set_sw_state(tp_rfk->rfkill,
drivers/platform/x86/lenovo/thinkpad_acpi.c
1136
if (rfkill_set_hw_state(tp_rfk->rfkill,
drivers/platform/x86/lenovo/thinkpad_acpi.c
1202
atp_rfk->rfkill = rfkill_alloc(name,
drivers/platform/x86/lenovo/thinkpad_acpi.c
1207
if (!atp_rfk || !atp_rfk->rfkill) {
drivers/platform/x86/lenovo/thinkpad_acpi.c
1225
rfkill_init_sw_state(atp_rfk->rfkill, sw_state);
drivers/platform/x86/lenovo/thinkpad_acpi.c
1229
rfkill_set_hw_state(atp_rfk->rfkill, hw_state);
drivers/platform/x86/lenovo/thinkpad_acpi.c
1231
res = rfkill_register(atp_rfk->rfkill);
drivers/platform/x86/lenovo/thinkpad_acpi.c
1234
rfkill_destroy(atp_rfk->rfkill);
drivers/platform/x86/lenovo/thinkpad_acpi.c
1254
rfkill_unregister(tp_rfk->rfkill);
drivers/platform/x86/lenovo/thinkpad_acpi.c
1255
rfkill_destroy(tp_rfk->rfkill);
drivers/platform/x86/msi-laptop.c
110
static struct rfkill *rfk_wlan, *rfk_bluetooth, *rfk_threeg;
drivers/platform/x86/msi-laptop.c
773
static bool msi_rfkill_set_state(struct rfkill *rfkill, bool blocked)
drivers/platform/x86/msi-laptop.c
776
return rfkill_set_hw_state(rfkill, blocked);
drivers/platform/x86/msi-laptop.c
778
return rfkill_set_sw_state(rfkill, blocked);
drivers/platform/x86/samsung-laptop.c
1023
if (samsung->wlan.rfkill) {
drivers/platform/x86/samsung-laptop.c
1024
rfkill_unregister(samsung->wlan.rfkill);
drivers/platform/x86/samsung-laptop.c
1025
rfkill_destroy(samsung->wlan.rfkill);
drivers/platform/x86/samsung-laptop.c
1026
samsung->wlan.rfkill = NULL;
drivers/platform/x86/samsung-laptop.c
1028
if (samsung->bluetooth.rfkill) {
drivers/platform/x86/samsung-laptop.c
1029
rfkill_unregister(samsung->bluetooth.rfkill);
drivers/platform/x86/samsung-laptop.c
1030
rfkill_destroy(samsung->bluetooth.rfkill);
drivers/platform/x86/samsung-laptop.c
1031
samsung->bluetooth.rfkill = NULL;
drivers/platform/x86/samsung-laptop.c
1041
struct rfkill **rfkill = &arfkill->rfkill;
drivers/platform/x86/samsung-laptop.c
1047
*rfkill = rfkill_alloc(name, &samsung->platform_device->dev,
drivers/platform/x86/samsung-laptop.c
1050
if (!*rfkill)
drivers/platform/x86/samsung-laptop.c
1054
rfkill_init_sw_state(*rfkill, blocked);
drivers/platform/x86/samsung-laptop.c
1056
ret = rfkill_register(*rfkill);
drivers/platform/x86/samsung-laptop.c
1058
rfkill_destroy(*rfkill);
drivers/platform/x86/samsung-laptop.c
1059
*rfkill = NULL;
drivers/platform/x86/samsung-laptop.c
324
struct rfkill *rfkill;
drivers/platform/x86/samsung-laptop.c
622
static void swsmi_rfkill_query(struct rfkill *rfkill, void *priv)
drivers/platform/x86/samsung-laptop.c
640
rfkill_set_sw_state(rfkill, !ret);
drivers/platform/x86/sony-laptop.c
1607
struct rfkill *rfk;
drivers/platform/x86/sony-laptop.c
179
static struct rfkill *sony_rfkill_devices[N_SONY_RFKILL];
drivers/platform/x86/toshiba_acpi.c
187
struct rfkill *wwan_rfk;
drivers/platform/x86/toshiba_acpi.c
2678
static void toshiba_acpi_wwan_poll(struct rfkill *rfkill, void *data)
drivers/platform/x86/toshiba_bluetooth.c
183
static void bt_rfkill_poll(struct rfkill *rfkill, void *data)
drivers/platform/x86/toshiba_bluetooth.c
31
struct rfkill *rfk;
drivers/platform/x86/xo1-rfkill.c
41
struct rfkill *rfk;
drivers/platform/x86/xo1-rfkill.c
61
struct rfkill *rfk = platform_get_drvdata(pdev);
include/linux/rfkill.h
100
int __must_check rfkill_register(struct rfkill *rfkill);
include/linux/rfkill.h
110
void rfkill_pause_polling(struct rfkill *rfkill);
include/linux/rfkill.h
119
void rfkill_resume_polling(struct rfkill *rfkill);
include/linux/rfkill.h
130
void rfkill_unregister(struct rfkill *rfkill);
include/linux/rfkill.h
138
void rfkill_destroy(struct rfkill *rfkill);
include/linux/rfkill.h
149
bool rfkill_set_hw_state_reason(struct rfkill *rfkill,
include/linux/rfkill.h
171
static inline bool rfkill_set_hw_state(struct rfkill *rfkill, bool blocked)
include/linux/rfkill.h
173
return rfkill_set_hw_state_reason(rfkill, blocked,
include/linux/rfkill.h
197
bool rfkill_set_sw_state(struct rfkill *rfkill, bool blocked);
include/linux/rfkill.h
213
void rfkill_init_sw_state(struct rfkill *rfkill, bool blocked);
include/linux/rfkill.h
224
void rfkill_set_states(struct rfkill *rfkill, bool sw, bool hw);
include/linux/rfkill.h
231
bool rfkill_blocked(struct rfkill *rfkill);
include/linux/rfkill.h
238
bool rfkill_soft_blocked(struct rfkill *rfkill);
include/linux/rfkill.h
249
static inline struct rfkill * __must_check
include/linux/rfkill.h
259
static inline int __must_check rfkill_register(struct rfkill *rfkill)
include/linux/rfkill.h
261
if (rfkill == ERR_PTR(-ENODEV))
include/linux/rfkill.h
266
static inline void rfkill_pause_polling(struct rfkill *rfkill)
include/linux/rfkill.h
270
static inline void rfkill_resume_polling(struct rfkill *rfkill)
include/linux/rfkill.h
274
static inline void rfkill_unregister(struct rfkill *rfkill)
include/linux/rfkill.h
278
static inline void rfkill_destroy(struct rfkill *rfkill)
include/linux/rfkill.h
282
static inline bool rfkill_set_hw_state_reason(struct rfkill *rfkill,
include/linux/rfkill.h
289
static inline bool rfkill_set_hw_state(struct rfkill *rfkill, bool blocked)
include/linux/rfkill.h
294
static inline bool rfkill_set_sw_state(struct rfkill *rfkill, bool blocked)
include/linux/rfkill.h
299
static inline void rfkill_init_sw_state(struct rfkill *rfkill, bool blocked)
include/linux/rfkill.h
303
static inline void rfkill_set_states(struct rfkill *rfkill, bool sw, bool hw)
include/linux/rfkill.h
307
static inline bool rfkill_blocked(struct rfkill *rfkill)
include/linux/rfkill.h
312
static inline bool rfkill_soft_blocked(struct rfkill *rfkill)
include/linux/rfkill.h
331
const char *rfkill_get_led_trigger_name(struct rfkill *rfkill);
include/linux/rfkill.h
342
void rfkill_set_led_trigger_name(struct rfkill *rfkill, const char *name);
include/linux/rfkill.h
344
static inline const char *rfkill_get_led_trigger_name(struct rfkill *rfkill)
include/linux/rfkill.h
350
rfkill_set_led_trigger_name(struct rfkill *rfkill, const char *name)
include/linux/rfkill.h
41
struct rfkill;
include/linux/rfkill.h
62
void (*poll)(struct rfkill *rfkill, void *data);
include/linux/rfkill.h
63
void (*query)(struct rfkill *rfkill, void *data);
include/linux/rfkill.h
79
struct rfkill * __must_check rfkill_alloc(const char *name,
include/net/bluetooth/hci_core.h
588
struct rfkill *rfkill;
include/net/cfg80211.h
6223
struct rfkill *rfkill;
include/net/cfg80211.h
8285
rfkill_pause_polling(wiphy->rfkill);
include/net/nfc/nfc.h
193
struct rfkill *rfkill;
net/bluetooth/hci_core.c
2628
hdev->rfkill = rfkill_alloc(hdev->name, &hdev->dev,
net/bluetooth/hci_core.c
2631
if (hdev->rfkill) {
net/bluetooth/hci_core.c
2632
if (rfkill_register(hdev->rfkill) < 0) {
net/bluetooth/hci_core.c
2633
rfkill_destroy(hdev->rfkill);
net/bluetooth/hci_core.c
2634
hdev->rfkill = NULL;
net/bluetooth/hci_core.c
2638
if (hdev->rfkill && rfkill_blocked(hdev->rfkill))
net/bluetooth/hci_core.c
2732
if (hdev->rfkill) {
net/bluetooth/hci_core.c
2733
rfkill_unregister(hdev->rfkill);
net/bluetooth/hci_core.c
2734
rfkill_destroy(hdev->rfkill);
net/nfc/core.c
102
if (dev->rfkill && rfkill_blocked(dev->rfkill)) {
net/nfc/core.c
1129
dev->rfkill = rfkill_alloc(dev_name(&dev->dev), &dev->dev,
net/nfc/core.c
1131
if (dev->rfkill) {
net/nfc/core.c
1132
if (rfkill_register(dev->rfkill) < 0) {
net/nfc/core.c
1133
rfkill_destroy(dev->rfkill);
net/nfc/core.c
1134
dev->rfkill = NULL;
net/nfc/core.c
1156
struct rfkill *rfk = NULL;
net/nfc/core.c
1167
if (dev->rfkill) {
net/nfc/core.c
1168
rfk = dev->rfkill;
net/nfc/core.c
1169
dev->rfkill = NULL;
net/rfkill/core.c
1001
struct rfkill *rfkill;
net/rfkill/core.c
1016
rfkill = kzalloc(sizeof(*rfkill) + strlen(name) + 1, GFP_KERNEL);
net/rfkill/core.c
1017
if (!rfkill)
net/rfkill/core.c
1020
spin_lock_init(&rfkill->lock);
net/rfkill/core.c
1021
INIT_LIST_HEAD(&rfkill->node);
net/rfkill/core.c
1022
rfkill->type = type;
net/rfkill/core.c
1023
strcpy(rfkill->name, name);
net/rfkill/core.c
1024
rfkill->ops = ops;
net/rfkill/core.c
1025
rfkill->data = ops_data;
net/rfkill/core.c
1027
dev = &rfkill->dev;
net/rfkill/core.c
1032
return rfkill;
net/rfkill/core.c
1038
struct rfkill *rfkill;
net/rfkill/core.c
1040
rfkill = container_of(work, struct rfkill, poll_work.work);
net/rfkill/core.c
1047
rfkill->ops->poll(rfkill, rfkill->data);
net/rfkill/core.c
1050
&rfkill->poll_work,
net/rfkill/core.c
1056
struct rfkill *rfkill;
net/rfkill/core.c
1058
rfkill = container_of(work, struct rfkill, uevent_work);
net/rfkill/core.c
1061
rfkill_event(rfkill);
net/rfkill/core.c
1067
struct rfkill *rfkill = container_of(work, struct rfkill, sync_work);
net/rfkill/core.c
1070
rfkill_sync(rfkill);
net/rfkill/core.c
1074
int __must_check rfkill_register(struct rfkill *rfkill)
net/rfkill/core.c
1080
if (!rfkill)
net/rfkill/core.c
1083
dev = &rfkill->dev;
net/rfkill/core.c
1087
if (rfkill->registered) {
net/rfkill/core.c
1092
rfkill->idx = rfkill_no;
net/rfkill/core.c
1096
list_add_tail(&rfkill->node, &rfkill_list);
net/rfkill/core.c
1102
error = rfkill_led_trigger_register(rfkill);
net/rfkill/core.c
1106
rfkill->registered = true;
net/rfkill/core.c
1108
INIT_DELAYED_WORK(&rfkill->poll_work, rfkill_poll);
net/rfkill/core.c
1109
INIT_WORK(&rfkill->uevent_work, rfkill_uevent_work);
net/rfkill/core.c
1110
INIT_WORK(&rfkill->sync_work, rfkill_sync_work);
net/rfkill/core.c
1112
if (rfkill->ops->poll)
net/rfkill/core.c
1114
&rfkill->poll_work,
net/rfkill/core.c
1117
if (!rfkill->persistent || rfkill_epo_lock_active) {
net/rfkill/core.c
1118
rfkill->need_sync = true;
net/rfkill/core.c
1119
schedule_work(&rfkill->sync_work);
net/rfkill/core.c
1122
bool soft_blocked = !!(rfkill->state & RFKILL_BLOCK_SW);
net/rfkill/core.c
1125
__rfkill_switch_all(rfkill->type, soft_blocked);
net/rfkill/core.c
1130
rfkill_send_events(rfkill, RFKILL_OP_ADD);
net/rfkill/core.c
1136
device_del(&rfkill->dev);
net/rfkill/core.c
1138
list_del_init(&rfkill->node);
net/rfkill/core.c
1145
void rfkill_unregister(struct rfkill *rfkill)
net/rfkill/core.c
1147
BUG_ON(!rfkill);
net/rfkill/core.c
1149
if (rfkill->ops->poll)
net/rfkill/core.c
1150
cancel_delayed_work_sync(&rfkill->poll_work);
net/rfkill/core.c
1152
cancel_work_sync(&rfkill->uevent_work);
net/rfkill/core.c
1153
cancel_work_sync(&rfkill->sync_work);
net/rfkill/core.c
1155
rfkill->registered = false;
net/rfkill/core.c
1157
device_del(&rfkill->dev);
net/rfkill/core.c
1160
rfkill_send_events(rfkill, RFKILL_OP_DEL);
net/rfkill/core.c
1161
list_del_init(&rfkill->node);
net/rfkill/core.c
1165
rfkill_led_trigger_unregister(rfkill);
net/rfkill/core.c
1169
void rfkill_destroy(struct rfkill *rfkill)
net/rfkill/core.c
1171
if (rfkill)
net/rfkill/core.c
1172
put_device(&rfkill->dev);
net/rfkill/core.c
1179
struct rfkill *rfkill;
net/rfkill/core.c
1198
list_for_each_entry(rfkill, &rfkill_list, node) {
net/rfkill/core.c
1202
rfkill_sync(rfkill);
net/rfkill/core.c
1203
if (rfkill_fill_event(ev, rfkill, data, RFKILL_OP_ADD))
net/rfkill/core.c
123
static void rfkill_led_trigger_event(struct rfkill *rfkill)
net/rfkill/core.c
127
if (!rfkill->registered)
net/rfkill/core.c
1285
struct rfkill *rfkill;
net/rfkill/core.c
130
trigger = &rfkill->led_trigger;
net/rfkill/core.c
1311
list_for_each_entry(rfkill, &rfkill_list, node)
net/rfkill/core.c
1312
if (rfkill->type == ev.type ||
net/rfkill/core.c
1314
rfkill_set_block(rfkill, ev.soft);
net/rfkill/core.c
1318
list_for_each_entry(rfkill, &rfkill_list, node)
net/rfkill/core.c
1319
if (rfkill->idx == ev.idx &&
net/rfkill/core.c
132
if (rfkill->state & RFKILL_BLOCK_ANY)
net/rfkill/core.c
1320
(rfkill->type == ev.type ||
net/rfkill/core.c
1322
rfkill_set_block(rfkill, ev.soft);
net/rfkill/core.c
140
struct rfkill *rfkill;
net/rfkill/core.c
142
rfkill = container_of(led->trigger, struct rfkill, led_trigger);
net/rfkill/core.c
144
rfkill_led_trigger_event(rfkill);
net/rfkill/core.c
149
const char *rfkill_get_led_trigger_name(struct rfkill *rfkill)
net/rfkill/core.c
151
return rfkill->led_trigger.name;
net/rfkill/core.c
155
void rfkill_set_led_trigger_name(struct rfkill *rfkill, const char *name)
net/rfkill/core.c
157
BUG_ON(!rfkill);
net/rfkill/core.c
159
rfkill->ledtrigname = name;
net/rfkill/core.c
163
static int rfkill_led_trigger_register(struct rfkill *rfkill)
net/rfkill/core.c
165
rfkill->led_trigger.name = rfkill->ledtrigname
net/rfkill/core.c
166
? : dev_name(&rfkill->dev);
net/rfkill/core.c
167
rfkill->led_trigger.activate = rfkill_led_trigger_activate;
net/rfkill/core.c
168
return led_trigger_register(&rfkill->led_trigger);
net/rfkill/core.c
171
static void rfkill_led_trigger_unregister(struct rfkill *rfkill)
net/rfkill/core.c
173
led_trigger_unregister(&rfkill->led_trigger);
net/rfkill/core.c
183
struct rfkill *rfkill;
net/rfkill/core.c
186
list_for_each_entry(rfkill, &rfkill_list, node) {
net/rfkill/core.c
187
if (!(rfkill->state & RFKILL_BLOCK_ANY)) {
net/rfkill/core.c
234
static void rfkill_led_trigger_event(struct rfkill *rfkill)
net/rfkill/core.c
238
static inline int rfkill_led_trigger_register(struct rfkill *rfkill)
net/rfkill/core.c
243
static inline void rfkill_led_trigger_unregister(struct rfkill *rfkill)
net/rfkill/core.c
262
struct rfkill *rfkill,
net/rfkill/core.c
269
ev->idx = rfkill->idx;
net/rfkill/core.c
270
ev->type = rfkill->type;
net/rfkill/core.c
273
spin_lock_irqsave(&rfkill->lock, flags);
net/rfkill/core.c
274
ev->hard = !!(rfkill->state & RFKILL_BLOCK_HW);
net/rfkill/core.c
275
ev->soft = !!(rfkill->state & (RFKILL_BLOCK_SW |
net/rfkill/core.c
277
ev->hard_block_reasons = rfkill->hard_block_reasons;
net/rfkill/core.c
278
spin_unlock_irqrestore(&rfkill->lock, flags);
net/rfkill/core.c
290
static void rfkill_send_events(struct rfkill *rfkill, enum rfkill_operation op)
net/rfkill/core.c
299
if (rfkill_fill_event(ev, rfkill, data, op)) {
net/rfkill/core.c
307
static void rfkill_event(struct rfkill *rfkill)
net/rfkill/core.c
309
if (!rfkill->registered)
net/rfkill/core.c
312
kobject_uevent(&rfkill->dev.kobj, KOBJ_CHANGE);
net/rfkill/core.c
315
rfkill_send_events(rfkill, RFKILL_OP_CHANGE);
net/rfkill/core.c
327
static void rfkill_set_block(struct rfkill *rfkill, bool blocked)
net/rfkill/core.c
333
if (unlikely(rfkill->dev.power.power_state.event & PM_EVENT_SLEEP))
net/rfkill/core.c
341
if (rfkill->ops->query)
net/rfkill/core.c
342
rfkill->ops->query(rfkill, rfkill->data);
net/rfkill/core.c
344
spin_lock_irqsave(&rfkill->lock, flags);
net/rfkill/core.c
345
prev = rfkill->state & RFKILL_BLOCK_SW;
net/rfkill/core.c
348
rfkill->state |= RFKILL_BLOCK_SW_PREV;
net/rfkill/core.c
350
rfkill->state &= ~RFKILL_BLOCK_SW_PREV;
net/rfkill/core.c
353
rfkill->state |= RFKILL_BLOCK_SW;
net/rfkill/core.c
355
rfkill->state &= ~RFKILL_BLOCK_SW;
net/rfkill/core.c
357
rfkill->state |= RFKILL_BLOCK_SW_SETCALL;
net/rfkill/core.c
358
spin_unlock_irqrestore(&rfkill->lock, flags);
net/rfkill/core.c
360
err = rfkill->ops->set_block(rfkill->data, blocked);
net/rfkill/core.c
362
spin_lock_irqsave(&rfkill->lock, flags);
net/rfkill/core.c
369
if (rfkill->state & RFKILL_BLOCK_SW_PREV)
net/rfkill/core.c
370
rfkill->state |= RFKILL_BLOCK_SW;
net/rfkill/core.c
372
rfkill->state &= ~RFKILL_BLOCK_SW;
net/rfkill/core.c
374
rfkill->state &= ~RFKILL_BLOCK_SW_SETCALL;
net/rfkill/core.c
375
rfkill->state &= ~RFKILL_BLOCK_SW_PREV;
net/rfkill/core.c
376
curr = rfkill->state & RFKILL_BLOCK_SW;
net/rfkill/core.c
377
spin_unlock_irqrestore(&rfkill->lock, flags);
net/rfkill/core.c
379
rfkill_led_trigger_event(rfkill);
net/rfkill/core.c
383
rfkill_event(rfkill);
net/rfkill/core.c
386
static void rfkill_sync(struct rfkill *rfkill)
net/rfkill/core.c
390
if (!rfkill->need_sync)
net/rfkill/core.c
393
rfkill_set_block(rfkill, rfkill_global_states[rfkill->type].cur);
net/rfkill/core.c
394
rfkill->need_sync = false;
net/rfkill/core.c
425
struct rfkill *rfkill;
net/rfkill/core.c
428
list_for_each_entry(rfkill, &rfkill_list, node) {
net/rfkill/core.c
429
if (rfkill->type != type && type != RFKILL_TYPE_ALL)
net/rfkill/core.c
432
rfkill_set_block(rfkill, blocked);
net/rfkill/core.c
470
struct rfkill *rfkill;
net/rfkill/core.c
479
list_for_each_entry(rfkill, &rfkill_list, node)
net/rfkill/core.c
480
rfkill_set_block(rfkill, true);
net/rfkill/core.c
555
bool rfkill_set_hw_state_reason(struct rfkill *rfkill,
net/rfkill/core.c
562
BUG_ON(!rfkill);
net/rfkill/core.c
564
spin_lock_irqsave(&rfkill->lock, flags);
net/rfkill/core.c
565
prev = !!(rfkill->hard_block_reasons & reason);
net/rfkill/core.c
567
rfkill->state |= RFKILL_BLOCK_HW;
net/rfkill/core.c
568
rfkill->hard_block_reasons |= reason;
net/rfkill/core.c
570
rfkill->hard_block_reasons &= ~reason;
net/rfkill/core.c
571
if (!rfkill->hard_block_reasons)
net/rfkill/core.c
572
rfkill->state &= ~RFKILL_BLOCK_HW;
net/rfkill/core.c
574
ret = !!(rfkill->state & RFKILL_BLOCK_ANY);
net/rfkill/core.c
575
spin_unlock_irqrestore(&rfkill->lock, flags);
net/rfkill/core.c
577
rfkill_led_trigger_event(rfkill);
net/rfkill/core.c
580
if (rfkill->registered && prev != blocked)
net/rfkill/core.c
581
schedule_work(&rfkill->uevent_work);
net/rfkill/core.c
587
static void __rfkill_set_sw_state(struct rfkill *rfkill, bool blocked)
net/rfkill/core.c
592
if (rfkill->state & RFKILL_BLOCK_SW_SETCALL)
net/rfkill/core.c
596
rfkill->state |= bit;
net/rfkill/core.c
598
rfkill->state &= ~bit;
net/rfkill/core.c
601
bool rfkill_set_sw_state(struct rfkill *rfkill, bool blocked)
net/rfkill/core.c
606
BUG_ON(!rfkill);
net/rfkill/core.c
608
spin_lock_irqsave(&rfkill->lock, flags);
net/rfkill/core.c
609
prev = !!(rfkill->state & RFKILL_BLOCK_SW);
net/rfkill/core.c
610
__rfkill_set_sw_state(rfkill, blocked);
net/rfkill/core.c
611
hwblock = !!(rfkill->state & RFKILL_BLOCK_HW);
net/rfkill/core.c
613
spin_unlock_irqrestore(&rfkill->lock, flags);
net/rfkill/core.c
615
if (!rfkill->registered)
net/rfkill/core.c
619
schedule_work(&rfkill->uevent_work);
net/rfkill/core.c
621
rfkill_led_trigger_event(rfkill);
net/rfkill/core.c
628
void rfkill_init_sw_state(struct rfkill *rfkill, bool blocked)
net/rfkill/core.c
632
BUG_ON(!rfkill);
net/rfkill/core.c
633
BUG_ON(rfkill->registered);
net/rfkill/core.c
635
spin_lock_irqsave(&rfkill->lock, flags);
net/rfkill/core.c
636
__rfkill_set_sw_state(rfkill, blocked);
net/rfkill/core.c
637
rfkill->persistent = true;
net/rfkill/core.c
638
spin_unlock_irqrestore(&rfkill->lock, flags);
net/rfkill/core.c
642
void rfkill_set_states(struct rfkill *rfkill, bool sw, bool hw)
net/rfkill/core.c
647
BUG_ON(!rfkill);
net/rfkill/core.c
649
spin_lock_irqsave(&rfkill->lock, flags);
net/rfkill/core.c
655
swprev = !!(rfkill->state & RFKILL_BLOCK_SW);
net/rfkill/core.c
656
hwprev = !!(rfkill->state & RFKILL_BLOCK_HW);
net/rfkill/core.c
657
__rfkill_set_sw_state(rfkill, sw);
net/rfkill/core.c
659
rfkill->state |= RFKILL_BLOCK_HW;
net/rfkill/core.c
661
rfkill->state &= ~RFKILL_BLOCK_HW;
net/rfkill/core.c
663
spin_unlock_irqrestore(&rfkill->lock, flags);
net/rfkill/core.c
665
if (!rfkill->registered) {
net/rfkill/core.c
666
rfkill->persistent = true;
net/rfkill/core.c
669
schedule_work(&rfkill->uevent_work);
net/rfkill/core.c
671
rfkill_led_trigger_event(rfkill);
net/rfkill/core.c
69
#define to_rfkill(d) container_of(d, struct rfkill, dev)
net/rfkill/core.c
708
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
710
return sysfs_emit(buf, "%s\n", rfkill->name);
net/rfkill/core.c
717
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
719
return sysfs_emit(buf, "%s\n", rfkill_types[rfkill->type]);
net/rfkill/core.c
726
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
728
return sysfs_emit(buf, "%d\n", rfkill->idx);
net/rfkill/core.c
735
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
737
return sysfs_emit(buf, "%d\n", rfkill->persistent);
net/rfkill/core.c
744
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
746
return sysfs_emit(buf, "%d\n", (rfkill->state & RFKILL_BLOCK_HW) ? 1 : 0);
net/rfkill/core.c
753
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
756
rfkill_sync(rfkill);
net/rfkill/core.c
759
return sysfs_emit(buf, "%d\n", (rfkill->state & RFKILL_BLOCK_SW) ? 1 : 0);
net/rfkill/core.c
765
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
780
rfkill_sync(rfkill);
net/rfkill/core.c
781
rfkill_set_block(rfkill, state);
net/rfkill/core.c
792
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
794
return sysfs_emit(buf, "0x%lx\n", rfkill->hard_block_reasons);
net/rfkill/core.c
811
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
814
rfkill_sync(rfkill);
net/rfkill/core.c
817
return sysfs_emit(buf, "%d\n", user_state_from_blocked(rfkill->state));
net/rfkill/core.c
823
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
839
rfkill_sync(rfkill);
net/rfkill/core.c
840
rfkill_set_block(rfkill, state == RFKILL_USER_STATE_SOFT_BLOCKED);
net/rfkill/core.c
862
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
864
kfree(rfkill);
net/rfkill/core.c
869
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
875
error = add_uevent_var(env, "RFKILL_NAME=%s", rfkill->name);
net/rfkill/core.c
879
rfkill_types[rfkill->type]);
net/rfkill/core.c
882
spin_lock_irqsave(&rfkill->lock, flags);
net/rfkill/core.c
883
state = rfkill->state;
net/rfkill/core.c
884
reasons = rfkill->hard_block_reasons;
net/rfkill/core.c
885
spin_unlock_irqrestore(&rfkill->lock, flags);
net/rfkill/core.c
893
void rfkill_pause_polling(struct rfkill *rfkill)
net/rfkill/core.c
895
BUG_ON(!rfkill);
net/rfkill/core.c
897
if (!rfkill->ops->poll)
net/rfkill/core.c
900
rfkill->polling_paused = true;
net/rfkill/core.c
901
cancel_delayed_work_sync(&rfkill->poll_work);
net/rfkill/core.c
905
void rfkill_resume_polling(struct rfkill *rfkill)
net/rfkill/core.c
907
BUG_ON(!rfkill);
net/rfkill/core.c
909
if (!rfkill->ops->poll)
net/rfkill/core.c
912
rfkill->polling_paused = false;
net/rfkill/core.c
914
if (rfkill->suspended)
net/rfkill/core.c
918
&rfkill->poll_work, 0);
net/rfkill/core.c
925
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
927
rfkill->suspended = true;
net/rfkill/core.c
928
cancel_delayed_work_sync(&rfkill->poll_work);
net/rfkill/core.c
935
struct rfkill *rfkill = to_rfkill(dev);
net/rfkill/core.c
938
rfkill->suspended = false;
net/rfkill/core.c
940
if (!rfkill->registered)
net/rfkill/core.c
943
if (!rfkill->persistent) {
net/rfkill/core.c
944
cur = !!(rfkill->state & RFKILL_BLOCK_SW);
net/rfkill/core.c
945
rfkill_set_block(rfkill, cur);
net/rfkill/core.c
948
if (rfkill->ops->poll && !rfkill->polling_paused)
net/rfkill/core.c
950
&rfkill->poll_work, 0);
net/rfkill/core.c
969
bool rfkill_blocked(struct rfkill *rfkill)
net/rfkill/core.c
974
spin_lock_irqsave(&rfkill->lock, flags);
net/rfkill/core.c
975
state = rfkill->state;
net/rfkill/core.c
976
spin_unlock_irqrestore(&rfkill->lock, flags);
net/rfkill/core.c
982
bool rfkill_soft_blocked(struct rfkill *rfkill)
net/rfkill/core.c
987
spin_lock_irqsave(&rfkill->lock, flags);
net/rfkill/core.c
988
state = rfkill->state;
net/rfkill/core.c
989
spin_unlock_irqrestore(&rfkill->lock, flags);
net/rfkill/core.c
995
struct rfkill * __must_check rfkill_alloc(const char *name,
net/rfkill/rfkill-gpio.c
106
rfkill = devm_kzalloc(&pdev->dev, sizeof(*rfkill), GFP_KERNEL);
net/rfkill/rfkill-gpio.c
107
if (!rfkill)
net/rfkill/rfkill-gpio.c
117
device_property_read_string(&pdev->dev, name_property, &rfkill->name);
net/rfkill/rfkill-gpio.c
120
if (!rfkill->name)
net/rfkill/rfkill-gpio.c
121
rfkill->name = dev_name(&pdev->dev);
net/rfkill/rfkill-gpio.c
123
rfkill->type = rfkill_find_type(type_name);
net/rfkill/rfkill-gpio.c
126
ret = rfkill_gpio_acpi_probe(&pdev->dev, rfkill);
net/rfkill/rfkill-gpio.c
131
rfkill->clk = devm_clk_get(&pdev->dev, NULL);
net/rfkill/rfkill-gpio.c
137
rfkill->reset_gpio = gpio;
net/rfkill/rfkill-gpio.c
143
rfkill->shutdown_gpio = gpio;
net/rfkill/rfkill-gpio.c
146
if (!rfkill->reset_gpio && !rfkill->shutdown_gpio) {
net/rfkill/rfkill-gpio.c
151
ret = gpiod_direction_output(rfkill->reset_gpio, true);
net/rfkill/rfkill-gpio.c
155
ret = gpiod_direction_output(rfkill->shutdown_gpio, true);
net/rfkill/rfkill-gpio.c
159
rfkill->rfkill_dev = rfkill_alloc(rfkill->name, &pdev->dev,
net/rfkill/rfkill-gpio.c
160
rfkill->type, &rfkill_gpio_ops,
net/rfkill/rfkill-gpio.c
161
rfkill);
net/rfkill/rfkill-gpio.c
162
if (!rfkill->rfkill_dev)
net/rfkill/rfkill-gpio.c
166
rfkill_init_sw_state(rfkill->rfkill_dev, true);
net/rfkill/rfkill-gpio.c
168
ret = rfkill_register(rfkill->rfkill_dev);
net/rfkill/rfkill-gpio.c
172
platform_set_drvdata(pdev, rfkill);
net/rfkill/rfkill-gpio.c
174
dev_info(&pdev->dev, "%s device registered.\n", rfkill->name);
net/rfkill/rfkill-gpio.c
179
rfkill_destroy(rfkill->rfkill_dev);
net/rfkill/rfkill-gpio.c
186
struct rfkill_gpio_data *rfkill = platform_get_drvdata(pdev);
net/rfkill/rfkill-gpio.c
188
rfkill_unregister(rfkill->rfkill_dev);
net/rfkill/rfkill-gpio.c
189
rfkill_destroy(rfkill->rfkill_dev);
net/rfkill/rfkill-gpio.c
25
struct rfkill *rfkill_dev;
net/rfkill/rfkill-gpio.c
33
struct rfkill_gpio_data *rfkill = data;
net/rfkill/rfkill-gpio.c
35
if (!blocked && !IS_ERR(rfkill->clk) && !rfkill->clk_enabled) {
net/rfkill/rfkill-gpio.c
36
int ret = clk_enable(rfkill->clk);
net/rfkill/rfkill-gpio.c
42
gpiod_set_value_cansleep(rfkill->shutdown_gpio, !blocked);
net/rfkill/rfkill-gpio.c
43
gpiod_set_value_cansleep(rfkill->reset_gpio, !blocked);
net/rfkill/rfkill-gpio.c
45
if (blocked && !IS_ERR(rfkill->clk) && rfkill->clk_enabled)
net/rfkill/rfkill-gpio.c
46
clk_disable(rfkill->clk);
net/rfkill/rfkill-gpio.c
48
rfkill->clk_enabled = !blocked;
net/rfkill/rfkill-gpio.c
67
struct rfkill_gpio_data *rfkill)
net/rfkill/rfkill-gpio.c
75
rfkill->type = (unsigned)id->driver_data;
net/rfkill/rfkill-gpio.c
96
struct rfkill_gpio_data *rfkill;
net/wireless/core.c
1109
res = rfkill_register(rdev->wiphy.rfkill);
net/wireless/core.c
1111
rfkill_destroy(rdev->wiphy.rfkill);
net/wireless/core.c
1112
rdev->wiphy.rfkill = NULL;
net/wireless/core.c
1128
rfkill_resume_polling(wiphy->rfkill);
net/wireless/core.c
1174
if (rdev->wiphy.rfkill)
net/wireless/core.c
1175
rfkill_unregister(rdev->wiphy.rfkill);
net/wireless/core.c
1242
rfkill_destroy(rdev->wiphy.rfkill);
net/wireless/core.c
1275
if (rfkill_set_hw_state_reason(wiphy->rfkill, blocked, reason))
net/wireless/core.c
1681
if (rfkill_blocked(rdev->wiphy.rfkill))
net/wireless/core.c
220
static void cfg80211_rfkill_poll(struct rfkill *rfkill, void *data)
net/wireless/core.c
565
rdev->wiphy.rfkill = rfkill_alloc(dev_name(&rdev->wiphy.dev),
net/wireless/core.c
569
if (!rdev->wiphy.rfkill) {
net/wireless/nl80211.c
15579
if (rfkill_blocked(rdev->wiphy.rfkill))
net/wireless/nl80211.c
15832
if (rfkill_blocked(rdev->wiphy.rfkill))
net/wireless/wext-compat.c
860
rfkill_set_sw_state(rdev->wiphy.rfkill, false);
net/wireless/wext-compat.c
885
if (rfkill_set_sw_state(rdev->wiphy.rfkill, true))
net/wireless/wext-compat.c
919
data->txpower.disabled = rfkill_blocked(rdev->wiphy.rfkill);