Johannes Berg johan...@sipsolutions.net writes:
Now the subject should no longer say mac80211: :)
It did have a change to mac80211.h as well, but IMHO that should be in a
separate patch.
--
Kalle Valo
___
ath9k-devel mailing list
On Tuesday 06/11 at 21:55 +0200, Johannes Berg wrote:
Now the subject should no longer say mac80211: :)
However... given that ieee80211_get_tx_rates() actually *copies* the
rates into the parameter, I guess it should do the rcu_read_lock()
internally. I guess I wasn't paying attention
Copying the rate table should be done in an RCU read-side critical
section.
Signed-off-by: Calvin Owens jcalvinow...@gmail.com
---
net/mac80211/rate.c | 4
1 file changed, 4 insertions(+)
diff --git a/net/mac80211/rate.c b/net/mac80211/rate.c
index d3f414f..090d9b0 100644
---
On 2013-06-12 10:00 AM, Calvin Owens wrote:
Copying the rate table should be done in an RCU read-side critical
section.
I think this approach is wrong. The sta entry is also under RCU
protection (no locking for read access in that part of the code.
In a normal driver tx path, no extra
This reduces number of allocations and simplifies
memory managemnt.
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/core.c | 28
drivers/net/wireless/ath/ath10k/core.h |2 +-
drivers/net/wireless/ath/ath10k/htc.c
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/mac.c |4
1 file changed, 4 insertions(+)
diff --git a/drivers/net/wireless/ath/ath10k/mac.c
b/drivers/net/wireless/ath/ath10k/mac.c
index def1e68..4867f30 100644
---
This includes 2 patches from my previous patchset
that had conflicts. It is now rebased and should
apply cleanly on the github master branch.
Michal Kazior (6):
ath10k: embed HTC struct inside ath10k
ath10k: embed HTT struct inside ath10k
ath10k: improve locking
ath10k: abort scan
Add more lockdep asserts and a few conf_mutex
locks. It's better to be on the safe side.
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/mac.c | 57 +++--
1 file changed, 55 insertions(+), 2 deletions(-)
diff --git
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/wmi.c |6 ++
1 file changed, 6 insertions(+)
diff --git a/drivers/net/wireless/ath/ath10k/wmi.c
b/drivers/net/wireless/ath/ath10k/wmi.c
index 681e941..b7e7e45 100644
---
This reduces number of allocations and simplifies
memory managemnt.
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/core.c | 12 ++--
drivers/net/wireless/ath/ath10k/core.h |7 +++
drivers/net/wireless/ath/ath10k/htt.c| 25
ath10k_pci_process_ce() is used to process
completions. Only one thread can do that though.
If one thread starts handling completions then the
other one (i.e. possibly PCI shutdown) would exit
immediatelely and free up memory while completions
are being processed leading to corruption.
Split logic that prepares the device for BMI
phase/cleans up related resources.
This is necessary for ath10k to be able to restart
hw on the fly without reloading the module.
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/hif.h | 20 ++
Enables code reuse for proper hw reconfiguration
that is in turn required for proper
suspend/hibernation/wowlan support.
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/core.c | 44 +++-
drivers/net/wireless/ath/ath10k/core.h
This is a respin of my patchset that addresses
hibernation issues.
This is also groundwork for proper hw recovery
that I'm going to post soon.
I addressed review comments and some bugs I've
found along.
Note: this is not based on master branch but on my
latest 'ath10k: fixes' patches. Split for
Regulatory domain notification hook can be called
regardless of the hw state (i.e. before start
mac80211 callback).
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/core.h |7 +++
drivers/net/wireless/ath/ath10k/mac.c | 26
This is necessary for hw reconfiguration to work.
Since mac80211 is not calling remove_interface()
is such case we must reset free_vdev_map.
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/core.c |4 ++--
1 file changed, 2 insertions(+), 2
This is necessary if we want to be able to restart
hw on-the-fly.
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/bmi.c |6 ++
drivers/net/wireless/ath/ath10k/bmi.h |1 +
drivers/net/wireless/ath/ath10k/core.c |2 ++
3 files changed, 9
This is necessary for proper hw reconfiguration
and to avoid memory leaks.
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/mac.c | 16
1 file changed, 16 insertions(+)
diff --git a/drivers/net/wireless/ath/ath10k/mac.c
Split up fw-related and hw-related suspension code.
Although we don't advertise WoW support to
mac80211 yet it's useful to keep the code in
suspend/resume hooks.
At this point there's no need to keep pci pm ops.
In case of WoW mac80211 calls ath10k_suspend()
which should take care of entering
This fixes suspend-to-disk. The hardware is now
re-initialized upon freeze/thaw properly.
This also makes suspend/resume re-initialize the
hardware as WoWLAN support is not done yet.
With some little work it should be possible to
support hw reconfiguration for hw/fw recovery.
HW must be
ath10k handles some hw configuration per-vdev
(i.e. per-vif). When resuming/restarting hw
configuration vdevs may not be re-added yet.
Setting vdev params for non existent vdevs crashes
the firmware.
The parameters are updated when interface is
re-added.
Signed-off-by: Michal Kazior
Different FW versions may provide different
functions thus mean different hw capabilities
advertised to mac80211.
It is safe to swap firmware files on disk during
driver/device runtime without worries.
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
There's one issue I've noticed. When associated
to WPA network tx is discarded by the firmware
after recovery (no idea why, yet). This can be
fixed in a follow up patch perhaps.
Note: this is not based on master branch. It is
based on my latest 'ath10k: fixes' and 'ath10k:
device setup refactor'.
This can be useful to test FW crash handling.
Signed-off-by: Michal Kazior michal.kaz...@tieto.com
---
drivers/net/wireless/ath/ath10k/wmi.c | 19 +++
drivers/net/wireless/ath/ath10k/wmi.h | 19 +++
2 files changed, 38 insertions(+)
diff --git
Restart the hardware if FW crashes.
If FW crashes during recovery we leave the
hardware in a wedged state to avoid recursive
recoveries.
When in wedged state userspace may bring
interfaces down (to issue stop()) and then bring
one interface (to issue start()) to reload
hardware manually.
Michal Kazior michal.kaz...@tieto.com writes:
This includes 2 patches from my previous patchset
that had conflicts. It is now rebased and should
apply cleanly on the github master branch.
Michal Kazior (6):
ath10k: embed HTC struct inside ath10k
ath10k: embed HTT struct inside ath10k
26 matches
Mail list logo