Re: [v3] ath10k: cache calibration data when the core is stopped

2016-10-13 Thread Kalle Valo
Kalle Valo  wrote:
> From: Marty Faltesek 
> 
> Commit 0b8e3c4ca29f ("ath10k: move cal data len to hw_params") broke 
> retrieving
> the calibration data from cal_data debugfs file. The length of file was always
> zero. The reason is:
> 
> static ssize_t ath10k_debug_cal_data_read(struct file *file,
>   char __user *user_buf,
>   size_t count, loff_t *ppos)
> {
> struct ath10k *ar = file->private_data;
> void *buf = file->private_data;
> 
> 
> This is obviously bogus, private_data cannot contain both struct ath10k and 
> the
> buffer. Fix it by caching calibration data to ar->debug.cal_data. This also
> allows it to be accessed when the device is not active (interface is down).
> 
> The cal_data buffer is fixed size because during the first firmware probe we
> don't yet know what will be the lenght of the calibration data. It was 
> simplest
> just to use a fixed length. There's a WARN_ON() in
> ath10k_debug_cal_data_fetch() if the buffer is too small.
> 
> Tested with qca988x and firmware 10.2.4.70.56.
> 
> Reported-by: Nikolay Martynov 
> Fixes: 0b8e3c4ca29f ("ath10k: move cal data len to hw_params")
> Cc: sta...@vger.kernel.org # 4.7+
> Signed-off-by: Marty Faltesek 
> [kv...@qca.qualcomm.com: improve commit log and minor other changes]
> Signed-off-by: Kalle Valo 

Patch applied to ath-current branch of ath.git, thanks.

f67b107d4ced ath10k: cache calibration data when the core is stopped

-- 
https://patchwork.kernel.org/patch/9369685/

Documentation about submitting wireless patches and checking status
from patchwork:

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches



Re: [v3] ath10k: cache calibration data when the core is stopped

2016-10-11 Thread Kalle Valo
Kalle Valo  wrote:
> From: Marty Faltesek 
> 
> Commit 0b8e3c4ca29f ("ath10k: move cal data len to hw_params") broke 
> retrieving
> the calibration data from cal_data debugfs file. The length of file was always
> zero. The reason is:
> 
> static ssize_t ath10k_debug_cal_data_read(struct file *file,
>   char __user *user_buf,
>   size_t count, loff_t *ppos)
> {
> struct ath10k *ar = file->private_data;
> void *buf = file->private_data;
> 
> 
> This is obviously bogus, private_data cannot contain both struct ath10k and 
> the
> buffer. Fix it by caching calibration data to ar->debug.cal_data. This also
> allows it to be accessed when the device is not active (interface is down).
> 
> The cal_data buffer is fixed size because during the first firmware probe we
> don't yet know what will be the lenght of the calibration data. It was 
> simplest
> just to use a fixed length. There's a WARN_ON() in
> ath10k_debug_cal_data_fetch() if the buffer is too small.
> 
> Tested with qca988x and firmware 10.2.4.70.56.
> 
> Reported-by: Nikolay Martynov 
> Fixes: 0b8e3c4ca29f ("ath10k: move cal data len to hw_params")
> Cc: sta...@vger.kernel.org # 4.7+
> Signed-off-by: Marty Faltesek 
> [kv...@qca.qualcomm.com: improve commit log and minor other changes]
> Signed-off-by: Kalle Valo 

There were few checkpatch warnings, I fixed those in the pending branch.

drivers/net/wireless/ath/ath10k/debug.c:1472: code indent should use tabs where 
possible
drivers/net/wireless/ath/ath10k/debug.c:1504: code indent should use tabs where 
possible
drivers/net/wireless/ath/ath10k/debug.c:1504: please, no spaces at the start of 
a line
drivers/net/wireless/ath/ath10k/debug.c:1505: code indent should use tabs where 
possible
drivers/net/wireless/ath/ath10k/debug.c:1505: please, no spaces at the start of 
a line

-- 
https://patchwork.kernel.org/patch/9369685/

Documentation about submitting wireless patches and checking status
from patchwork:

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches