04 Sep, 2018
1 commit
-
…kernel/git/jberg/mac80211
Johannes Berg says:
====================
Here are quite a large number of fixes, notably:
* various A-MSDU building fixes (currently only affects mt76)
* syzkaller & spectre fixes in hwsim
* TXQ vs. teardown fix that was causing crashes
* embed WMM info in reg rule, bad code here had been causing crashes
* one compilation issue with fix from Arnd (rfkill-gpio includes)
* fixes for a race and bad data during/after channel switch
* nl80211: a validation fix, attribute type & unit fixes
along with other small fixes.
====================Signed-off-by: David S. Miller <davem@davemloft.net>
14 Aug, 2018
1 commit
-
One more driver is apparently broken by the recent change
to linux/platform_device.h:net/rfkill/rfkill-gpio.c: In function 'rfkill_gpio_acpi_probe':
net/rfkill/rfkill-gpio.c:82:29: error: dereferencing pointer to incomplete type 'const struct acpi_device_id'Include linux/mod_devicetable.h to get the definition of the
acpi_device_id structure.Fixes: ac3167257b9f ("headers: separate linux/mod_devicetable.h from linux/platform_device.h")
Signed-off-by: Arnd Bergmann
Signed-off-by: Johannes Berg
06 Jul, 2018
1 commit
-
Given that activating a trigger can fail, let the callback return an
indication. This prevents to have a trigger active according to the
"trigger" sysfs attribute but not functional.All users are changed accordingly to return 0 for now. There is no intended
change in behaviour.Signed-off-by: Uwe Kleine-König
Acked-by: Pavel Machek
Signed-off-by: Jacek Anaszewski
23 May, 2018
2 commits
-
Creates a new trigger rfkill-none, as a complement to rfkill-any, which
drives LEDs when any radio is enabled. The new trigger is meant to turn
a LED ON whenever all radios are OFF, and turn it OFF otherwise.Signed-off-by: João Paulo Rechi Vita
Signed-off-by: Johannes Berg -
Rename these functions to rfkill_global_led_trigger*, as they are going
to be extended to handle another global rfkill led trigger.This commit does not change any functionality.
Signed-off-by: João Paulo Rechi Vita
Signed-off-by: Johannes Berg
07 May, 2018
1 commit
-
Make sure to free the rfkill device in case registration fails during
probe.Fixes: 5e7ca3937fbe ("net: rfkill: gpio: convert to resource managed allocation")
Cc: stable # 3.13
Cc: Heikki Krogerus
Signed-off-by: Johan Hovold
Reviewed-by: Heikki Krogerus
Signed-off-by: Johannes Berg
12 Feb, 2018
1 commit
-
This is the mindless scripted replacement of kernel use of POLL*
variables as described by Al, done by this script:for V in IN OUT PRI ERR RDNORM RDBAND WRNORM WRBAND HUP RDHUP NVAL MSG; do
L=`git grep -l -w POLL$V | grep -v '^t' | grep -v /um/ | grep -v '^sa' | grep -v '/poll.h$'|grep -v '^D'`
for f in $L; do sed -i "-es/^\([^\"]*\)\(\\)/\\1E\\2/" $f; done
donewith de-mangling cleanups yet to come.
NOTE! On almost all architectures, the EPOLL* constants have the same
values as the POLL* constants do. But they keyword here is "almost".
For various bad reasons they aren't the same, and epoll() doesn't
actually work quite correctly in some cases due to this on Sparc et al.The next patch from Al will sort out the final differences, and we
should be all done.Scripted-by: Al Viro
Signed-off-by: Linus Torvalds
28 Nov, 2017
1 commit
-
Signed-off-by: Al Viro
13 Jun, 2017
1 commit
-
Switch to use managed variant of acpi_dev_add_driver_gpios() to simplify
error path and fix potentially wrong assingment if ->probe() fails.Signed-off-by: Andy Shevchenko
Signed-off-by: Johannes Berg
24 Jan, 2017
1 commit
-
There are no users of this ("vrfkill") in the tree, so it's just
dead code - remove it.This also isn't really how rfkill is supposed to be used - it's
intended as a signalling mechanism to/from the device, which the
driver (and partially cfg80211) will handle - having a separate
rfkill instance for a regulator is confusing, the driver should
use the regulator instead to turn off the device when requested.Signed-off-by: Johannes Berg
09 Jan, 2017
1 commit
-
Add a new "global" (i.e. not per-rfkill device) LED trigger, rfkill-any,
which may be useful on laptops with a single "radio LED" and multiple
radio transmitters. The trigger is meant to turn a LED on whenever
there is at least one radio transmitter active and turn it off
otherwise.Signed-off-by: Michał Kępień
Signed-off-by: Johannes Berg
20 Dec, 2016
1 commit
-
This reverts commit 73f4f76a196d7adb11a1e192bd8024fe0bc83910.
As Mike reported, and I should've seen in review, we can't call
the new LED functions, which acquire the mutex, from places like
rfkill_set_sw_state() that are documented to be callable from
any context the user likes to use. For Mike's case it led to a
deadlock, but other scenarios are possible.Reported-by: Михаил Кринкин
Signed-off-by: Johannes Berg
16 Dec, 2016
1 commit
-
A cleanup introduced a harmless warning in some configurations:
net/rfkill/core.c: In function 'rfkill_init':
net/rfkill/core.c:1350:1: warning: label 'error_input' defined but not used [-Wunused-label]This adds another #ifdef around the label to match that around the
caller.Fixes: 6124c53edeea ("rfkill: Cleanup error handling in rfkill_init()")
Signed-off-by: Arnd Bergmann
Signed-off-by: Johannes Berg
13 Dec, 2016
3 commits
-
Add a new "global" (i.e. not per-rfkill device) LED trigger, rfkill-any,
which may be useful on laptops with a single "radio LED" and multiple
radio transmitters. The trigger is meant to turn a LED on whenever
there is at least one radio transmitter active and turn it off
otherwise.This requires taking rfkill_global_mutex before calling rfkill_set_block()
in rfkill_resume(): since __rfkill_any_led_trigger_event() is called from
rfkill_set_block() unconditionally, each caller of the latter needs to
take care of locking rfkill_global_mutex.Signed-off-by: Michał Kępień
Signed-off-by: Johannes Berg -
Use a separate label per error condition in rfkill_init() to make it a
bit cleaner and easier to extend.Signed-off-by: Michał Kępień
Signed-off-by: Johannes Berg -
Simplify the two conditions gating the schedule_work() into
a single one and get rid of the additional exit point from
the function in doing so.Signed-off-by: Johannes Berg
05 Apr, 2016
1 commit
-
Using a switch to handle different ev.op values in rfkill_fop_write()
makes the code easier to extend, as out-of-range values can always be
handled by the default case.Signed-off-by: João Paulo Rechi Vita
[roll in fix for RFKILL_OP_CHANGE from Jouni]
Signed-off-by: Johannes Berg
02 Mar, 2016
1 commit
-
…inux/kernel/git/jberg/mac80211-next
Johannes Berg says:
====================
Here's another round of updates for -next:
* big A-MSDU RX performance improvement (avoid linearize of paged RX)
* rfkill changes: cleanups, documentation, platform properties
* basic PBSS support in cfg80211
* MU-MIMO action frame processing support
* BlockAck reordering & duplicate detection offload support
* various cleanups & little fixes
====================Signed-off-by: David S. Miller <davem@davemloft.net>
24 Feb, 2016
10 commits
-
Factor all assignments to rfkill_global_states[].cur into a single
function rfkill_update_global_state().Signed-off-by: João Paulo Rechi Vita
Signed-off-by: Johannes Berg -
Signed-off-by: João Paulo Rechi Vita
Signed-off-by: Johannes Berg -
Signed-off-by: João Paulo Rechi Vita
Signed-off-by: Johannes Berg -
No more users for it.
Signed-off-by: Heikki Krogerus
Signed-off-by: Johannes Berg -
This prepares the driver for removal of platform data.
Signed-off-by: Heikki Krogerus
Signed-off-by: Johannes Berg -
Helper for finding the type based on name. Useful if the
type needs to be determined based on device property.Signed-off-by: Heikki Krogerus
[modify rfkill_types array and BUILD_BUG_ON to not cause errors]
Signed-off-by: Johannes Berg -
This was scheduled to be removed in 2012 by:
commit 69c86373c6ea1149aa559e6088362d58d8ec8835
Author: florian@mickler.org
Date: Wed Feb 24 12:05:16 2010 +0100Document the rfkill sysfs ABI
This moves sysfs ABI info from Documentation/rfkill.txt to the
ABI subfolder and reformats it.This also schedules the deprecated sysfs parts to be removed in
2012 (claim file) and 2014 (state file).Signed-off-by: Florian Mickler
Signed-off-by: John W. LinvilleSigned-off-by: João Paulo Rechi Vita
Signed-off-by: Johannes Berg -
__rfkill_set_hw_state() is only one used in rfkill_set_hw_state(), and
none of them are long or complicated, so merging the two makes the code
easier to read.Signed-off-by: João Paulo Rechi Vita
Signed-off-by: Johannes Berg -
RFKILL_BLOCK_SW value have just been saved to prev, no need to check it
again in the if expression. This makes code a little bit easier to read.Signed-off-by: João Paulo Rechi Vita
Signed-off-by: Johannes Berg -
When suspended while polling is paused, polling will erroneously
resume at resume time. Fix this by tracking pause and suspend in
separate state variable and adding the necessary checks.Clarify the documentation on this as well.
Signed-off-by: Johannes Berg
26 Jan, 2016
1 commit
-
The code within wait_event_interruptible() is called with
!TASK_RUNNING, so mustn't call any functions that can sleep,
like mutex_lock().Since we re-check the list_empty() in a loop after the wait,
it's safe to simply use list_empty() without locking.This bug has existed forever, but was only discovered now
because all userspace implementations, including the default
'rfkill' tool, use poll() or select() to get a readable fd
before attempting to read.Cc: stable@vger.kernel.org
Fixes: c64fb01627e24 ("rfkill: create useful userspace interface")
Reported-by: Dmitry Vyukov
Signed-off-by: Johannes Berg
05 Jan, 2016
1 commit
-
The IDs should all be for Broadcom BCM43241 module, and
hci_bcm is now the proper driver for them. This removes one
of two different ways of handling PM with the module.Cc: Johannes Berg
Signed-off-by: Heikki Krogerus
Signed-off-by: Marcel Holtmann
10 Dec, 2015
1 commit
-
Some users of rfkill, like NFC and cfg80211, use a dynamic name when
allocating rfkill, in those cases dev_name(). Therefore, the pointer
passed to rfkill_alloc() might not be valid forever, I specifically
found the case that the rfkill name was quite obviously an invalid
pointer (or at least garbage) when the wiphy had been renamed.Fix this by making a copy of the rfkill name in rfkill_alloc().
Cc: stable@vger.kernel.org
Signed-off-by: Johannes Berg
04 Sep, 2015
1 commit
-
When switching the state of all RFKill switches of type all we need to
replicate the RFKILL_TYPE_ALL global state to all the other types global
state, so it is used to initialize persistent RFKill switches on
register.Signed-off-by: João Paulo Rechi Vita
Acked-by: Marcel Holtmann
Signed-off-by: Johannes Berg
18 Aug, 2015
1 commit
-
…etooth/bluetooth-next
Johan Hedberg says:
====================
pull request: bluetooth-next 2015-08-16Here's what's likely the last bluetooth-next pull request for 4.3:
- 6lowpan/802.15.4 refactoring, cleanups & fixes
- Document 6lowpan netdev usage in Documentation/networking/6lowpan.txt
- Support for UART based QCA Bluetooth controllers
- Power management support for Broeadcom Bluetooth controllers
- Change LE connection initiation to always use passive scanning first
- Support for new Silicon Wave USB IDPlease let me know if there are any issues pulling. Thanks.
====================Signed-off-by: David S. Miller <davem@davemloft.net>
13 Aug, 2015
1 commit
-
The GPIO subsystem provides dummy GPIO consumer functions if GPIOLIB is
not enabled. Hence drivers that depend on GPIOLIB, but use GPIO consumer
functionality only, can still be compiled if GPIOLIB is not enabled.Relax the dependency on GPIOLIB if COMPILE_TEST is enabled, where
appropriate.Signed-off-by: Geert Uytterhoeven
Acked-by: Linus Walleij
Signed-off-by: Johannes Berg
12 Aug, 2015
1 commit
-
Power management support for BCM2E39 is now performed in Bluetooth
BCM UART driver.Signed-off-by: Frederic Danis
Signed-off-by: Marcel Holtmann
29 May, 2015
1 commit
-
Since 39b2bbe3d715 (gpio: add flags argument to gpiod_get*() functions)
which appeared in v3.17-rc1, the gpiod_get* functions take an additional
parameter that allows to specify direction and initial value for output.Furthermore there is devm_gpiod_get_optional which is designed to get
optional gpios.Simplify driver accordingly.
Note this makes error checking more strict because only -ENOENT is
ignored when searching for the GPIOs which is good.Signed-off-by: Uwe Kleine-König
Signed-off-by: Johannes Berg
20 May, 2015
1 commit
-
Use dev_pm_ops instead of the legacy suspend/resume callbacks for the
rfkill class suspend and resume operations.Signed-off-by: Lars-Peter Clausen
Signed-off-by: Johannes Berg
05 Feb, 2015
1 commit
-
…inux/kernel/git/jberg/mac80211-next
Last round of updates for net-next:
* revert a patch that caused a regression with mesh userspace (Bob)
* fix a number of suspend/resume related races
(from Emmanuel, Luca and myself - we'll look at backporting later)
* add software implementations for new ciphers (Jouni)
* add a new ACPI ID for Broadcom's rfkill (Mika)
* allow using netns FD for wireless (Vadim)
* some other cleanups (various)Signed-off-by: David S. Miller <davem@davemloft.net>
03 Feb, 2015
1 commit
-
This is yet another Broadcom bluetooth chip with ACPI ID BCM2E40.
Signed-off-by: Mika Westerberg
Signed-off-by: Johannes Berg
15 Dec, 2014
1 commit
-
Pull driver core update from Greg KH:
"Here's the set of driver core patches for 3.19-rc1.They are dominated by the removal of the .owner field in platform
drivers. They touch a lot of files, but they are "simple" changes,
just removing a line in a structure.Other than that, a few minor driver core and debugfs changes. There
are some ath9k patches coming in through this tree that have been
acked by the wireless maintainers as they relied on the debugfs
changes.Everything has been in linux-next for a while"
* tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (324 commits)
Revert "ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries"
fs: debugfs: add forward declaration for struct device type
firmware class: Deletion of an unnecessary check before the function call "vunmap"
firmware loader: fix hung task warning dump
devcoredump: provide a one-way disable function
device: Add dev__once variants
ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries
ath: use seq_file api for ath9k debugfs files
debugfs: add helper function to create device related seq_file
drivers/base: cacheinfo: remove noisy error boot message
Revert "core: platform: add warning if driver has no owner"
drivers: base: support cpu cache information interface to userspace via sysfs
drivers: base: add cpu_device_create to support per-cpu devices
topology: replace custom attribute macros with standard DEVICE_ATTR*
cpumask: factor out show_cpumap into separate helper function
driver core: Fix unbalanced device reference in drivers_probe
driver core: fix race with userland in device_add()
sysfs/kernfs: make read requests on pre-alloc files use the buffer.
sysfs/kernfs: allow attributes to request write buffer be pre-allocated.
fs: sysfs: return EGBIG on write if offset is larger than file size
...