| /linux/include/linux/ |
| H A D | rfkill.h | 41 struct rfkill; 62 void (*poll)(struct rfkill *rfkill, void *data); 63 void (*query)(struct rfkill *rfkill, void *data); 79 struct rfkill * __must_check rfkill_alloc(const char *name, 100 int __must_check rfkill_register(struct rfkill *rfkill); 111 void rfkill_pause_polling(struct rfkill *rfkill); 120 void rfkill_resume_polling(struct rfkill *rfkill); 131 void rfkill_unregister(struct rfkill *rfkill); 139 void rfkill_destroy(struct rfkill *rfkill); 150 bool rfkill_set_hw_state_reason(struct rfkill *rfkill, [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 | 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() 66 struct rfkill_gpio_data *rfkill) in rfkill_gpio_acpi_probe() argument [all …]
|
| 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 | Kconfig | 12 module will be called 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/drivers/platform/x86/dell/ |
| H A D | dell-rbtn.c | 24 struct rfkill *rfkill; member 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() 118 if (rbtn_data->rfkill) 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() 131 ret = rfkill_register(rbtn_data->rfkill); in rbtn_rfkill_init() 133 rfkill_destroy(rbtn_data->rfkill); in rbtn_rfkill_init() 134 rbtn_data->rfkill = NULL; in rbtn_rfkill_init() 145 if (!rbtn_data->rfkill) in rbtn_rfkill_exit() [all …]
|
| /linux/drivers/platform/x86/intel/ |
| H A D | oaktrail.c | 87 static struct rfkill *bt_rfkill; 88 static struct rfkill *gps_rfkill; 89 static struct rfkill *wifi_rfkill; 90 static struct rfkill *wwan_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()
|
| /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 | samsung-laptop.c | 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() 1030 rfkill_destroy(samsung->bluetooth.rfkill); in samsung_rfkill_exit() [all …]
|
| H A D | asus-wmi.c | 226 struct rfkill *rfkill; member 2242 if (asus->wlan.rfkill) in asus_rfkill_hotplug() 2243 rfkill_set_sw_state(asus->wlan.rfkill, blocked); in asus_rfkill_hotplug() 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 2483 *rfkill = rfkill_alloc(name, &asus->platform_device->dev, type, in asus_new_rfkill() 2486 *rfkill = rfkill_alloc(name, &asus->platform_device->dev, type, in asus_new_rfkill() 2489 if (!*rfkill) in asus_new_rfkill() 2494 rfkill_set_led_trigger_name(*rfkill, "asus-wlan"); in asus_new_rfkill() [all …]
|
| H A D | eeepc-laptop.c | 166 struct rfkill *wlan_rfkill; 167 struct rfkill *bluetooth_rfkill; 168 struct rfkill *wwan3g_rfkill; 169 struct rfkill *wimax_rfkill; 766 struct rfkill **rfkill, in eeepc_new_rfkill() argument 777 *rfkill = rfkill_alloc(name, &eeepc->platform_device->dev, type, in eeepc_new_rfkill() 780 if (!*rfkill) in eeepc_new_rfkill() 783 rfkill_init_sw_state(*rfkill, get_acpi(eeepc, cm) != 1); in eeepc_new_rfkill() 784 result = rfkill_register(*rfkill); in eeepc_new_rfkill() 786 rfkill_destroy(*rfkill); in eeepc_new_rfkill() [all …]
|
| H A D | toshiba_bluetooth.c | 32 struct rfkill *rfk; 182 static void bt_rfkill_poll(struct rfkill *rfkill, void *data) in bt_rfkill_poll() argument
|
| H A D | asus-laptop.c | 227 struct rfkill *rfkill; member 1285 rfkill_set_sw_state(asus->gps.rfkill, !value); in gps_store() 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() 1332 rfk->rfkill = NULL; in asus_rfkill_terminate() 1351 rfk->rfkill = rfkill_alloc(name, &asus->platform_device->dev, in asus_rfkill_setup() 1353 if (!rfk->rfkill) in asus_rfkill_setup() 1356 result = rfkill_register(rfk->rfkill); in asus_rfkill_setup() 1358 rfkill_destroy(rfk->rfkill); in asus_rfkill_setup() [all …]
|
| H A D | msi-laptop.c | 110 static struct rfkill *rfk_wlan, *rfk_bluetooth, *rfk_threeg; 773 static bool msi_rfkill_set_state(struct rfkill *rfkill, bool blocked) in msi_rfkill_set_state() argument 776 return rfkill_set_hw_state(rfkill, blocked); in msi_rfkill_set_state() 778 return rfkill_set_sw_state(rfkill, blocked); in msi_rfkill_set_state()
|
| /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/net/nfc/ |
| H A D | core.c | 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() 1156 struct rfkill *rfk = NULL; in nfc_unregister_rfkill() 1167 if (dev->rfkill) { in nfc_unregister_rfkill() 1168 rfk = dev->rfkill; in nfc_unregister_rfkill() 1169 dev->rfkill = NULL; in nfc_unregister_rfkill()
|
| /linux/drivers/net/wireless/realtek/rtl818x/rtl8187/ |
| H A D | Makefile | 2 rtl8187-objs := dev.o rtl8225.o leds.o rfkill.o
|
| /linux/arch/arm/boot/dts/broadcom/ |
| H A D | bcm4709-linksys-ea9200.dts | 45 button-rfkill { 65 linux,default-trigger = "rfkill-none";
|
| /linux/drivers/net/wireless/broadcom/b43legacy/ |
| H A D | Makefile | 10 b43legacy-y += rfkill.o
|
| /linux/net/wireless/ |
| H A D | core.c | 220 static void cfg80211_rfkill_poll(struct rfkill *rfkill, void *data) in cfg80211_rfkill_poll() argument 666 rdev->wiphy.rfkill = rfkill_alloc(dev_name(&rdev->wiphy.dev), in wiphy_new_nm() 670 if (!rdev->wiphy.rfkill) { in wiphy_new_nm() 1236 res = rfkill_register(rdev->wiphy.rfkill); in wiphy_register() 1238 rfkill_destroy(rdev->wiphy.rfkill); in wiphy_register() 1239 rdev->wiphy.rfkill = NULL; in wiphy_register() 1255 rfkill_resume_polling(wiphy->rfkill); in wiphy_rfkill_start_polling() 1301 if (rdev->wiphy.rfkill) in wiphy_unregister() 1302 rfkill_unregister(rdev->wiphy.rfkill); in wiphy_unregister() 1370 rfkill_destroy(rdev->wiphy.rfkill); in cfg80211_dev_free() [all …]
|
| /linux/drivers/net/wireless/ath/ath5k/ |
| H A D | Makefile | 16 ath5k-y += rfkill.o
|
| /linux/drivers/net/wireless/broadcom/b43/ |
| H A D | Makefile | 22 b43-y += rfkill.o
|
| /linux/include/net/nfc/ |
| H A D | nfc.h | 193 struct rfkill *rfkill; member
|
| /linux/Documentation/admin-guide/laptops/ |
| H A D | sony-laptop.rst | 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}
|