| /linux/include/linux/ |
| H A D | rfkill.h | 21 #include <uapi/linux/rfkill.h> 41 struct rfkill; 44 * struct rfkill_ops - rfkill driver methods 46 * @poll: poll the rfkill block state(s) -- only assign this method 52 * @query: query the rfkill block state(s) and call exactly one of the 55 * the rfkill core query your driver before setting a requested 62 void (*poll)(struct rfkill *rfkill, void *data); 63 void (*query)(struct rfkill *rfkill, void *data); 69 * rfkill_alloc - Allocate rfkill structure 73 * @ops: rfkill methods [all …]
|
| /linux/net/rfkill/ |
| H A D | core.c | 15 #include <linux/rfkill.h> 25 #include "rfkill.h" 37 struct rfkill { struct 69 #define to_rfkill(d) container_of(d, struct rfkill, dev) argument 76 /* Max rfkill events that can be "in-flight" for one data source */ 98 * the rfkill struct under their own lock, and take this lock during 99 * rfkill method calls -- which will cause an AB-BA deadlock situation. 108 static LIST_HEAD(rfkill_fds); /* list of open fds of /dev/rfkill */ 123 static void rfkill_led_trigger_event(struct rfkill *rfkill) in rfkill_led_trigger_event() argument 40 typerfkill global() argument 53 opsrfkill global() argument 140 struct rfkill *rfkill; rfkill_led_trigger_activate() local 149 rfkill_get_led_trigger_name(struct rfkill * rfkill) rfkill_get_led_trigger_name() argument 155 rfkill_set_led_trigger_name(struct rfkill * rfkill,const char * name) rfkill_set_led_trigger_name() argument 163 rfkill_led_trigger_register(struct rfkill * rfkill) rfkill_led_trigger_register() argument 171 rfkill_led_trigger_unregister(struct rfkill * rfkill) rfkill_led_trigger_unregister() argument 183 struct rfkill *rfkill; rfkill_global_led_trigger_worker() local 234 rfkill_led_trigger_event(struct rfkill * rfkill) rfkill_led_trigger_event() argument 238 rfkill_led_trigger_register(struct rfkill * rfkill) rfkill_led_trigger_register() argument 243 rfkill_led_trigger_unregister(struct rfkill * rfkill) rfkill_led_trigger_unregister() argument 262 rfkill_fill_event(struct rfkill_int_event * int_ev,struct rfkill * rfkill,struct rfkill_data * data,enum rfkill_operation op) rfkill_fill_event() argument 290 rfkill_send_events(struct rfkill * rfkill,enum rfkill_operation op) rfkill_send_events() argument 307 rfkill_event(struct rfkill * rfkill) rfkill_event() argument 327 rfkill_set_block(struct rfkill * rfkill,bool blocked) rfkill_set_block() argument 386 rfkill_sync(struct rfkill * rfkill) rfkill_sync() argument 425 struct rfkill *rfkill; __rfkill_switch_all() local 470 struct rfkill *rfkill; rfkill_epo() local 555 rfkill_set_hw_state_reason(struct rfkill * rfkill,bool blocked,enum rfkill_hard_block_reasons reason) rfkill_set_hw_state_reason() argument 587 __rfkill_set_sw_state(struct rfkill * rfkill,bool blocked) __rfkill_set_sw_state() argument 601 rfkill_set_sw_state(struct rfkill * rfkill,bool blocked) rfkill_set_sw_state() argument 628 rfkill_init_sw_state(struct rfkill * rfkill,bool blocked) rfkill_init_sw_state() argument 642 rfkill_set_states(struct rfkill * rfkill,bool sw,bool hw) rfkill_set_states() argument 708 struct rfkill *rfkill = to_rfkill(dev); name_show() local 717 struct rfkill *rfkill = to_rfkill(dev); type_show() local 726 struct rfkill *rfkill = to_rfkill(dev); index_show() local 735 struct rfkill *rfkill = to_rfkill(dev); persistent_show() local 744 struct rfkill *rfkill = to_rfkill(dev); hard_show() local 753 struct rfkill *rfkill = to_rfkill(dev); soft_show() local 765 struct rfkill *rfkill = to_rfkill(dev); soft_store() local 792 struct rfkill *rfkill = to_rfkill(dev); hard_block_reasons_show() local 811 struct rfkill *rfkill = to_rfkill(dev); state_show() local 823 struct rfkill *rfkill = to_rfkill(dev); state_store() local 862 struct rfkill *rfkill = to_rfkill(dev); rfkill_release() local 869 struct rfkill *rfkill = to_rfkill(dev); rfkill_dev_uevent() local 893 rfkill_pause_polling(struct rfkill * rfkill) rfkill_pause_polling() argument 905 rfkill_resume_polling(struct rfkill * rfkill) rfkill_resume_polling() argument 925 struct rfkill *rfkill = to_rfkill(dev); rfkill_suspend() local 935 struct rfkill *rfkill = to_rfkill(dev); rfkill_resume() local 969 rfkill_blocked(struct rfkill * rfkill) rfkill_blocked() argument 982 rfkill_soft_blocked(struct rfkill * rfkill) rfkill_soft_blocked() argument 1001 struct rfkill *rfkill; rfkill_alloc() local 1038 struct rfkill *rfkill; rfkill_poll() local 1056 struct rfkill *rfkill; rfkill_uevent_work() local 1067 struct rfkill *rfkill = container_of(work, struct rfkill, sync_work); rfkill_sync_work() local 1074 rfkill_register(struct rfkill * rfkill) rfkill_register() argument 1145 rfkill_unregister(struct rfkill * rfkill) rfkill_unregister() argument 1169 rfkill_destroy(struct rfkill * rfkill) rfkill_destroy() argument 1179 struct rfkill *rfkill; rfkill_fop_open() local 1285 struct rfkill *rfkill; rfkill_fop_write() local [all...] |
| H A D | rfkill-gpio.c | 10 #include <linux/rfkill.h> 24 struct rfkill *rfkill_dev; 32 struct rfkill_gpio_data *rfkill = data; in rfkill_gpio_set_power() local 34 if (!blocked && !IS_ERR(rfkill->clk) && !rfkill->clk_enabled) { in rfkill_gpio_set_power() 35 int ret = clk_enable(rfkill->clk); in rfkill_gpio_set_power() 41 gpiod_set_value_cansleep(rfkill->shutdown_gpio, !blocked); in rfkill_gpio_set_power() 42 gpiod_set_value_cansleep(rfkill->reset_gpio, !blocked); in rfkill_gpio_set_power() 44 if (blocked && !IS_ERR(rfkill->clk) && rfkill->clk_enabled) in rfkill_gpio_set_power() 45 clk_disable(rfkill->clk); in rfkill_gpio_set_power() 47 rfkill->clk_enabled = !blocked; in rfkill_gpio_set_power() [all …]
|
| H A D | Kconfig | 5 menuconfig RFKILL config 12 module will be called rfkill. 17 depends on RFKILL 18 depends on LEDS_TRIGGERS = y || RFKILL = LEDS_TRIGGERS 23 depends on RFKILL 24 depends on INPUT = y || RFKILL = INPUT 28 tristate "GPIO RFKILL driver" 29 depends on RFKILL 33 If you say yes here you get support of a generic gpio RFKILL
|
| H A D | Makefile | 6 rfkill-y += core.o 7 rfkill-$(CONFIG_RFKILL_INPUT) += input.o 8 obj-$(CONFIG_RFKILL) += rfkill.o 9 obj-$(CONFIG_RFKILL_GPIO) += rfkill-gpio.o
|
| H A D | input.c | 8 * If you ever run into a situation in which you have a SW_ type rfkill 10 * "rfkill-input: remove unused code". 18 #include <linux/rfkill.h> 21 #include "rfkill.h" 77 "rfkill Emergency Power Off activated\n", in __rfkill_handle_global_op() 230 handle->name = "rfkill"; in rfkill_connect() 309 .name = "rfkill",
|
| /linux/Documentation/driver-api/ |
| H A D | rfkill.rst | 2 rfkill - RF kill switch support 12 The rfkill subsystem provides a generic interface for disabling any radio 21 The rfkill subsystem has a concept of "hard" and "soft" block, which 32 The rfkill subsystem has two parameters, rfkill.default_state and 33 rfkill.master_switch_mode, which are documented in 40 The rfkill subsystem is composed of three main components: 42 * the rfkill core, 43 * the deprecated rfkill-input module (an input layer handler, being 45 * the rfkill drivers. 47 The rfkill core provides API for kernel drivers to register their radio [all …]
|
| /linux/Documentation/devicetree/bindings/net/ |
| H A D | rfkill-gpio.yaml | 4 $id: http://devicetree.org/schemas/net/rfkill-gpio.yaml# 7 title: GPIO controlled rfkill switch 15 const: rfkill-gpio 18 description: rfkill switch name, defaults to node name 21 description: rfkill radio type 37 description: configure rfkill state as blocked at boot 50 rfkill { 51 compatible = "rfkill-gpio"; 52 label = "rfkill-pcie-wlan";
|
| /linux/drivers/platform/x86/dell/ |
| H A D | dell-rbtn.c | 10 #include <linux/rfkill.h> 24 struct rfkill *rfkill; member 87 * rfkill device 90 static void rbtn_rfkill_query(struct rfkill *rfkill, void *data) in rbtn_rfkill_query() argument 99 rfkill_set_states(rfkill, state, state); in rbtn_rfkill_query() 104 /* NOTE: setting soft rfkill state is not supported */ in rbtn_rfkill_set_block() 118 if (rbtn_data->rfkill) in rbtn_rfkill_init() 123 * but rfkill interface does not support "ANY" type in rbtn_rfkill_init() 126 rbtn_data->rfkill = rfkill_alloc("dell-rbtn", dev, RFKILL_TYPE_WLAN, in rbtn_rfkill_init() 128 if (!rbtn_data->rfkill) in rbtn_rfkill_init() [all …]
|
| /linux/include/uapi/linux/ |
| H A D | rfkill.h | 30 * enum rfkill_type - type of rfkill switch. 41 * @NUM_RFKILL_TYPES: number of defined rfkill types 74 * @RFKILL_HARD_BLOCK_SIGNAL: the hardware rfkill signal is active 83 * struct rfkill_event - events for userspace on /dev/rfkill 84 * @idx: index of dev rfkill 85 * @type: type of the rfkill struct 90 * Structure used for userspace communication on /dev/rfkill, 102 * struct rfkill_event_ext - events for userspace on /dev/rfkill 103 * @idx: index of dev rfkill 104 * @type: type of the rfkill struct [all …]
|
| /linux/drivers/net/wireless/ath/ath5k/ |
| H A D | rfkill.c | 2 * RFKILL support for ath5k 41 ATH5K_DBG(ah, ATH5K_DEBUG_ANY, "rfkill disable (gpio:%d polarity:%d)\n", in ath5k_rfkill_disable() 50 ATH5K_DBG(ah, ATH5K_DEBUG_ANY, "rfkill enable (gpio:%d polarity:%d)\n", in ath5k_rfkill_enable() 69 /* configuring GPIO for input for some reason disables rfkill */ in ath5k_is_rfkill_set() 89 /* read rfkill GPIO configuration from EEPROM header */ in ath5k_rfkill_hw_start() 97 /* enable interrupt for rfkill switch */ in ath5k_rfkill_hw_start() 106 /* disable interrupt for rfkill switch */ in ath5k_rfkill_hw_stop() 112 /* enable RFKILL when stopping HW so Wifi LED is turned off */ in ath5k_rfkill_hw_stop()
|
| /linux/drivers/platform/x86/intel/ |
| H A D | oaktrail.c | 16 * 2. registers in the rfkill subsystem here: /sys/class/rfkill/rfkillX/ 36 #include <linux/rfkill.h> 87 static struct rfkill *bt_rfkill; 88 static struct rfkill *gps_rfkill; 89 static struct rfkill *wifi_rfkill; 90 static struct rfkill *wwan_rfkill; 93 /* rfkill */ 116 static struct rfkill *oaktrail_rfkill_new(char *name, enum rfkill_type type, in oaktrail_rfkill_new() 119 struct rfkill *rfkill_dev; in oaktrail_rfkill_new() 140 static inline void __oaktrail_rfkill_cleanup(struct rfkill *rf) in __oaktrail_rfkill_cleanup() [all …]
|
| /linux/arch/arm64/boot/dts/marvell/ |
| H A D | cn9132-clearfog.dts | 70 rfkill-m2-wlan { 71 compatible = "rfkill-gpio"; 76 /* rfkill-gpio inverts internally */ 81 rfkill-m2-wlan { 82 compatible = "rfkill-gpio"; 87 /* rfkill-gpio inverts internally */ 92 rfkill-m2-wwan { 93 compatible = "rfkill-gpio"; 98 /* rfkill-gpio inverts internally */ 103 rfkill-m2-gnss { [all …]
|
| /linux/drivers/platform/x86/ |
| H A D | toshiba_bluetooth.c | 19 #include <linux/rfkill.h> 32 struct rfkill *rfk; 161 /* RFKill handlers */ 182 static void bt_rfkill_poll(struct rfkill *rfkill, void *data) in bt_rfkill_poll() argument 190 * Note the Toshiba Bluetooth RFKill switch seems to be a strange in bt_rfkill_poll() 266 pr_err("Unable to allocate rfkill device\n"); in toshiba_bt_rfkill_probe() 275 pr_err("Unable to register rfkill device\n"); in toshiba_bt_rfkill_probe()
|
| H A D | eeepc-laptop.c | 25 #include <linux/rfkill.h> 166 struct rfkill *wlan_rfkill; 167 struct rfkill *bluetooth_rfkill; 168 struct rfkill *wwan3g_rfkill; 169 struct rfkill *wimax_rfkill; 550 * PCI hotplug (for wlan rfkill) 672 * Refresh pci hotplug in case the rfkill state was in eeepc_register_rfkill_notifier() 694 pr_err("Error removing rfkill notify handler %s\n", in eeepc_unregister_rfkill_notifier() 697 * Refresh pci hotplug in case the rfkill in eeepc_unregister_rfkill_notifier() 752 * Rfkill devices [all …]
|
| H A D | samsung-laptop.c | 20 #include <linux/rfkill.h> 324 struct rfkill *rfkill; member 622 static void swsmi_rfkill_query(struct rfkill *rfkill, void *priv) in swsmi_rfkill_query() argument 640 rfkill_set_sw_state(rfkill, !ret); in swsmi_rfkill_query() 1023 if (samsung->wlan.rfkill) { in samsung_rfkill_exit() 1024 rfkill_unregister(samsung->wlan.rfkill); in samsung_rfkill_exit() 1025 rfkill_destroy(samsung->wlan.rfkill); in samsung_rfkill_exit() 1026 samsung->wlan.rfkill = NULL; in samsung_rfkill_exit() 1028 if (samsung->bluetooth.rfkill) { in samsung_rfkill_exit() 1029 rfkill_unregister(samsung->bluetooth.rfkill); in samsung_rfkill_exit() [all …]
|
| H A D | asus-wmi.c | 37 #include <linux/rfkill.h> 226 struct rfkill *rfkill; member 2216 * PCI hotplug (for wlan rfkill) 2242 if (asus->wlan.rfkill) in asus_rfkill_hotplug() 2243 rfkill_set_sw_state(asus->wlan.rfkill, blocked); in asus_rfkill_hotplug() 2338 pr_err("Error removing rfkill notify handler %s\n", node); in asus_unregister_rfkill_notifier() 2403 * Rfkill devices 2426 static void asus_rfkill_query(struct rfkill *rfkill, void *data) in asus_rfkill_query() argument 2436 rfkill_set_sw_state(priv->rfkill, !result); in asus_rfkill_query() 2473 struct rfkill **rfkill = &arfkill->rfkill; in asus_new_rfkill() local [all …]
|
| H A D | asus-laptop.c | 36 #include <linux/rfkill.h> 72 "(unknown, led or rfkill). " 77 "(unknown, led or rfkill). " 222 * Same thing for rfkill 227 struct rfkill *rfkill; member 1285 rfkill_set_sw_state(asus->gps.rfkill, !value); in gps_store() 1291 * rfkill 1327 if (!rfk->rfkill) in asus_rfkill_terminate() 1330 rfkill_unregister(rfk->rfkill); in asus_rfkill_terminate() 1331 rfkill_destroy(rfk->rfkill); in asus_rfkill_terminate() [all …]
|
| /linux/drivers/net/wireless/realtek/rtl818x/rtl8187/ |
| H A D | rfkill.c | 3 * Linux RFKILL support for RTL8187 7 * Based on the RFKILL handling in the r8187 driver, which is: 18 #include "rfkill.h"
|
| /linux/arch/arm64/boot/dts/rockchip/ |
| H A D | rk3588-rock-5b.dtsi | 38 rfkill { 39 compatible = "rfkill-gpio"; 40 label = "rfkill-m2-wlan";
|
| /linux/drivers/net/wireless/broadcom/b43legacy/ |
| H A D | Makefile | 9 # b43 RFKILL button support 10 b43legacy-y += rfkill.o
|
| /linux/net/nfc/ |
| H A D | Kconfig | 7 depends on RFKILL || !RFKILL
|
| H A D | core.c | 16 #include <linux/rfkill.h> 102 if (dev->rfkill && rfkill_blocked(dev->rfkill)) { in nfc_dev_up() 1129 dev->rfkill = rfkill_alloc(dev_name(&dev->dev), &dev->dev, in nfc_register_device() 1131 if (dev->rfkill) { in nfc_register_device() 1132 if (rfkill_register(dev->rfkill) < 0) { in nfc_register_device() 1133 rfkill_destroy(dev->rfkill); in nfc_register_device() 1134 dev->rfkill = NULL; in nfc_register_device() 1150 * nfc_unregister_rfkill - unregister a nfc device in the rfkill subsystem 1156 struct rfkill *rfk = NULL; in nfc_unregister_rfkill() 1167 if (dev->rfkill) { in nfc_unregister_rfkill() [all …]
|
| /linux/Documentation/admin-guide/laptops/ |
| H A D | sony-laptop.rst | 100 RFkill control: 104 such a laptop you will find the necessary rfkill devices under 105 /sys/class/rfkill. Check those starting with sony-* in:: 107 # grep . /sys/class/rfkill/*/{state,name}
|
| /linux/drivers/net/wireless/intel/iwlwifi/mld/ |
| H A D | hcmd.h | 21 /* Devices that need to shutdown immediately on rfkill are not in iwl_mld_send_cmd() 22 * supported, so we can send all the cmds in rfkill in iwl_mld_send_cmd()
|