- 11 Nov, 2021 4 commits
-
-
Martin Kepplinger authored
Add a powered state to the driver and track the state there. Don't try to do any powering twice unnecessarily. Signed-off-by:
Martin Kepplinger <martin.kepplinger@puri.sm>
-
Martin Kepplinger authored
s_stream() already ensures that the devices will only be powered for streaming. There is absolutely no need to check for that state and try to handle it during suspend and resume. Signed-off-by:
Martin Kepplinger <martin.kepplinger@puri.sm>
-
Martin Kepplinger authored
Use pm_runtime_resume_and_get() instead of pm_runtime_get_sync() see the documentation. Also make locking more readable. Signed-off-by:
Martin Kepplinger <martin.kepplinger@puri.sm>
-
Martin Kepplinger authored
Use true and false for assigning a value to a bool variable. Signed-off-by:
Martin Kepplinger <martin.kepplinger@puri.sm>
-
- 08 Nov, 2021 36 commits
-
-
Martin Kepplinger authored
Signed-off-by:
Martin Kepplinger <martink@posteo.de>
-
Martin Kepplinger authored
Fix output in success cases to be printed as debug information
-
Martin Kepplinger authored
-
Martin Kepplinger authored
-
Martin Kepplinger authored
-
Martin Kepplinger authored
-
Martin Kepplinger authored
-
-
If we don't wait a bit longer the bluetooth part of the firmware does not become active on some devices. Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
Firmware 2.0024 broke BLE Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
Use "or" so the defaults aren't overwritten Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
In a case where the RS9116 module fails to reflash load the firmware to RAM. Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
If there is a RS9116 FW file in /lib/firmware load and flash it. Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
Check the module FW version in both code paths Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
If there is no firmware file in the rootfs try loading the flash firmware Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
see commit 6417f031 ("module: remove never implemented MODULE_SUPPORTED_DEVICE")
-
By lowering the power save periods the interface is responsive during power_save. It still sufers from low throughput. Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
The original version layout seems to have changed with the driver upgrade so print out the old layout as well as the new one. Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
As suggested by Marek Vasut <marex@denx.de> the COEX test should and not an or. Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
In file included from /var/lib/dkms/rs9116/1.2.20/build/rsi_91x_hal.c:37: /var/lib/dkms/rs9116/1.2.20/build/rsi_sdio.h:44: error: "SDIO_VENDOR_ID_RSI" redefined [-Werror] #define SDIO_VENDOR_ID_RSI 0x041B In file included from /var/lib/dkms/rs9116/1.2.20/build/rsi_sdio.h:40, from /var/lib/dkms/rs9116/1.2.20/build/rsi_91x_hal.c:37: ./include/linux/mmc/sdio_ids.h:124: note: this is the location of the previous definition #define SDIO_VENDOR_ID_RSI 0x041b
-
Signed-off-by:
Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm> Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
Also drop the HW_SCAN_OFFLOAD Signed-off-by:
Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm> Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
Import the updated driver from here https://github.com/SiliconLabs/RS911X-nLink-OSD Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
Clean up in preperation for a new code drop Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
The interrupt handling of the RS911x is particularly heavy. For each RX packet, the card does three SDIO transactions, one to read interrupt status register, one to RX buffer length, one to read the RX packet(s). This translates to ~330 uS per one cycle of interrupt handler. In case there is more incoming traffic, this will be more. The drivers/mmc/core/sdio_irq.c has the following comment, quote "Just like traditional hard IRQ handlers, we expect SDIO IRQ handlers to be quick and to the point, so that the holding of the host lock does not cover too much work that doesn't require that lock to be held." The RS911x interrupt handler does not fit that. This patch therefore changes it such that the entire IRQ handler is moved to the RX thread instead, and the interrupt handler only wakes the RX thread. This is OK, because the interrupt handler only does things which can also be done in the RX thread, that is, it checks for firmware loading error(s), it checks buffer status, it checks whether a packet arrived and if so, reads out the packet and passes it to network stack. Moreover, this change permits removal of a code which allocated an skbuff only to get 4-byte-aligned buffer, read up to 8kiB of data into the skbuff, queue this skbuff into local private queue, then in RX thread, this buffer is dequeued, the data in the skbuff as passed to the RSI driver core, and the skbuff is deallocated. All this is replaced by directly calling the RSI driver core with local buffer. Signed-off-by:
Marek Vasut <marex@denx.de>
-
-
-
This is not an ERR print so move it to the INFO zone Signed-off-by:
Angus Ainslie <angus@akkea.ca>
-
When power save mode is enabled it generates a lot of noise in dmesg. Storing all this noise in the system journal is unlikely to be power efficient.
-
This seems to fix/workaround issues with WiFi connection being dropped after enabling power_save mode with some networks.
-
at least in the mainline rsi driver, this is the implemented logic.
-
-
-
Imported patch from Redpine, see: https://source.puri.sm/Librem5/linux-next/issues/69#note_73932
-
Read the version number from the flash module Signed-off-by:
Angus Ainslie (Purism) <angus@akkea.ca>
-
Refer to line 2308 in https://git.kernel.org/pub/scm/linux/kernel/git/jberg/iw.git/tree/scan.c Signed-off-by:
Angus Ainslie (Purism) <angus@akkea.ca>
-