| Commit message (Collapse) | Author | Age |
| ... | |
| |\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
|
| | |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
WCN3990 is a 37 bit target and needs DMA_MAP of 37 bits.
The HTT RX datapath currently uses 32-bit address.
Refactor the HTT RX datapath to enable DMA MAP of 37 bits for WCN3990.
Fix ath10k_htt_rx_h_ppdu API usage.
CRs-Fixed: 2000491
Change-Id: I3d1505202a899796b0bfa7975844e3700326bfdf
Signed-off-by: Rakesh Pillai <pillair@codeaurora.org>
|
| |\ \ \ \ \ |
|
| | |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
WCN3990 target uses different bit filed for ce
gather support.
Populate valid src descriptor buffers and gather
flag for WCN3990 target.
CRs-Fixed: 1115328
Change-Id: Ia7e73bd3009823357bb7df06eddb4903efb47286
Signed-off-by: Govind Singh <govinds@codeaurora.org>
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Up-streamed driver uses NAPI in rx data path. Add napi
implementation in snoc layer.
CRs-Fixed: 1112504
Change-Id: I33d3405ee99233af474f8bc236c43898086f044c
Signed-off-by: Govind Singh <govinds@codeaurora.org>
|
| |/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add WCN3990 wlan module startup, power up and power down
sequence. Register interrupt handler and tasklet for each
copy engine interrupt line.
Add WCN3990 bus layer private API to configure and flush
the Tx/Rx copy engine pipe.
CRs-Fixed: 1112504
Change-Id: I9f0e2f080c8c92d0db5df465d3e79de058451b28
Signed-off-by: Govind Singh <govinds@codeaurora.org>
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
|
| |\ \ \ \ |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
WCN3990 target uses 37bit addressing mode, modify htt tx, rx,
frag descriptor and htt ring configuration.
CRs-Fixed: 1117337
Change-Id: Ie1be7b8442e62d46a66c507eaa4662244edec16c
Signed-off-by: Govind Singh <govinds@codeaurora.org>
|
| |\ \ \ \ \ |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fix QCA_WLAN_VENDOR_ATTR_FREQ attribute ID to match the official
value from the QCA vendor command definitions (qca-vendor.h)
Change-Id: I549752fe5c29de5346cf9263ccc16266cafbbecd
Signed-off-by: Lior David <liord@codeaurora.org>
|
| |\ \ \ \ \ \ |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
WCN3990 target uses following CE config.
[CE0] :host->target control and raw streams
[CE1] :target->host HTT
[CE2] :target->host WMI
[CE3] :host->target WMI
[CE4] :host->target HTT
[CE5] :ipa_uc->target control msg
[CE6] :Target autonomous HIF_memcpy
[CE7] :ce_diag, the Diagnostic Window
[CE8] :Target to uMC
[CE9] :target->host HTT
[CE10] :target->host HTT
[CE11] :target -> host PKTLOG
Add host/target CE config and services and
associated host to target callbacks.
CRs-Fixed: 1116442
Change-Id: I2ae997b4d3f2b8028fe0deaae24b19dbf178aa5a
Signed-off-by: Govind Singh <govinds@codeaurora.org>
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
WCN3990 is integrated 802.11ac chipset with SNOC
bus interface. Add snoc layer driver registration
and associated ops.
CRs-Fixed: 1112488
Change-Id: I6106c617514609bd3fe41d9bbfbd34bf0588ef36
Signed-off-by: Govind Singh <govinds@codeaurora.org>
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
|
| |\ \ \ \ \ \ \ |
|
| | |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The WCN3990 target uses 37bit addressing mode, define
separate structure for the copy engine descriptor to
support this 37bit addressing mode. The WCN3990 target
supports copy engine classification and toeplitz hash
calculation for NAPI.
CRs-Fixed: 1115328
Change-Id: I3a6d3e71e788acfab44f4c9d0f159ced351e6456
Signed-off-by: Govind Singh <govinds@codeaurora.org>
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
|
| |\ \ \ \ \ \ \ |
|
| | |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
WCN3990 target uses more fields in htt rx descriptor,
hence modify htt rx descriptor for WCN3990 target.
CRs-Fixed: 1114748
Change-Id: Iaf3f7bde2a1cfd9e6862c308e5c65447d4293323
Signed-off-by: Govind Singh <govinds@codeaurora.org>
|
| |\ \ \ \ \ \ \ |
|
| | |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This reverts commit 8e5ea69a4159 ("mac80211: Add support for beacon
report radio measurement") which is incomplete cherry-pick of
commit 7947d3e075cd ("mac80211: Add support for beacon report
radio measurement") from
git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
and due to which compilation of ath10k module is broken.
Incomplete cherry-pick means not all files of corresponding commit from
opensource repo are pulled.
CRs-Fixed: 1115991
Change-Id: Iec6aeea39e1a581c91641329fcfa85e608d60bfa
Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
|
| |\ \ \ \ \ \ \ |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
wmi service ready bitmap has changed in HL1.0 fw.
Add wmi service ready event to support svc bitmap.
CRs-Fixed: 1115986
Change-Id: Ie83878d186ebb2e4e919f75f6c87887384f79796
Signed-off-by: Govind Singh <govinds@codeaurora.org>
Signed-off-by: Rakesh Pillai <pillair@codeaurora.org>
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
|
| |\| | | | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
WMI init cmd parameters num_wds_entries, num_perrs
and skid_limit have different values for WCN3990.
Refactor the wmi init cmd for WCN3990 with appropriate values.
CRs-Fixed: 1115155
Change-Id: I6fadc8bd8e655eed589de658a036b4062c6da310
Signed-off-by: Rakesh Pillai <pillair@codeaurora.org>
|
| | |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
WCN3990 uses different wmi ops and services.
Add support for these wmi ops and services for
WCN3990 in ath10k
CRs-Fixed: 1115136
Change-Id: Id3f5f21dc4eb16e2175e570cc5c019a22b8ffb37
Signed-off-by: Rakesh Pillai <pillair@codeaurora.org>
|
| |\ \ \ \ \ \ \
| |_|_|/ / / /
|/| | | | | | |
|
| | |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The WLAN firmware writes Rx packet in the Rx ring buffer
through copy engine. The Rx ring fill level depends on
the number of mac in WLAN chipset and wcn3990 WLAN chipset
has a dual mac. Update the Rx ring buffer fill level method
to add support for wcn3990 WLAN module.
CRs-Fixed: 1115978
Change-Id: Ife7a951171e25602b74f6b389f464c38cf9af1c8
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
|
| |\ \ \ \ \ \ |
|
| | |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This reverts commit ee6143827c1f ("cfg80211: remove enum ieee80211_band")
which is incomplete cherry-pick of commit 57fbcce37be7
("cfg80211: remove enum ieee80211_band") from
git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
and due to which compilation of ath10k module is broken.
Incomplete cherry-pick means not all files of corresponding commit from
opensource repo are pulled.
Conflicts were resolved in drivers/net/wireless/ath/ath10k/htt_rx.c
CRs-Fixed: 1113043
Change-Id: Ie2f95b1524777e8eaf1436ba3e4ab3f9e6b2822e
Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
|
| |\ \ \ \ \ \ |
|
| | |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The copy engine is a host to target communication interface
between wlan firmware and wlan wcn3990 platform driver. Add copy
engine register map for wcn3990 snoc wlan module. This add support
for the copy engine source/destination ring configuration for
wcn3990 chipset.
CRs-Fixed: 1114412
Change-Id: If1a87fd9fffc62605ebc6d3fd8ed22980c5518e9
Signed-off-by: Govind Singh <govinds@codeaurora.org>
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
|
| |\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The driver uses the bus_request platform operation to
request resources from the platform for a specific bandwidth.
Currently the driver requests resources for the maximum
theoretical bandwidth, when interface is brought up.
Refine this process a bit: now the driver will request a
small amount of resources when interface is up, and will only
issue the maximum request when connected.
This mechanism will be improved further in the future to make
more refined requests based on actual bandwidth.
Change-Id: Iada383f8183338190bfb082c1128d2ea38053ebc
CRs-Fixed: 1114406
Signed-off-by: Lior David <liord@codeaurora.org>
|
| |\ \ \ \ \ \ |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Currently mac80211 does not inform the driver of the session
block ack timeout when starting a rx aggregation session.
Drivers that manage the reorder buffer need to know this
parameter.
Seeing that there are now too many arguments for the
drv_ampdu_action() function, wrap them inside a structure.
Signed-off-by: Sara Sharon <sara.sharon@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
Git-commit: 50ea05efaf3bed7dd34bcc2635a8b3f53bd0ccc1
[rsirasan@codeaurora.org: resolved conflicts in include/net/mac80211.h and
net/mac80211/agg-rx.c and not pulled changes for drivers/net/wireless/intel/ and
drivers/net/wireless/st/ since path is not maintained]
CRs-Fixed: 1112956
Change-Id: I15d86f60cd3bd33e392b313f7a4ee2fca91207d4
Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
|
| | |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This reverts commit 71384687ff94 ("mac80211: pass block ack session
timeout to to driver") which is incomplete cherry-pick.
CRs-Fixed: 1112956
Change-Id: I63fdf95d25ca5bdfa87c54cea8e9a68eae715e44
Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
|
| |\ \ \ \ \ \ |
|
| | |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Add new target type and hw version for WCN3990.
Change-Id: Iba891c8a25321d986d24120db8e0988f7df56dc5
Signed-off-by: Govind Singh <govinds@codeaurora.org>
|
| |/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Remove bus specific dependencies from CE layer to have
common CE layer across multiple targets.
Change-Id: Ieb6a80b359eed820653215bbf98148ce15634e87
Signed-off-by: Govind Singh <govinds@codeaurora.org>
|
| |\ \ \ \ \ |
|
| | |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
11ad device supports 48 bit addresses, reflect that
by setting the dma mask accordingly to be able to
map skbs using 48 bits.
HW has limitation that all vrings should share the same
msb bits out of the 48 bits address. To overcome that,
for vrings mapping use 32 bit addresses only.
Change-Id: I7f710129ba61356f7f29ec69c885f60a31246151
CRs-Fixed: 1109659
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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 <mar.kolya@gmail.com>
Fixes: 0b8e3c4ca29f ("ath10k: move cal data len to hw_params")
Cc: stable@vger.kernel.org # 4.7+
Signed-off-by: Marty Faltesek <mfaltesek@google.com>
[kvalo@qca.qualcomm.com: improve commit log and minor other changes]
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Ignore processing further in SWBA event scheduled for a vif, if mac80211
has marked the particular vif for stop beaconing and brought the vdev
down in 'ath10k_control_beaconing'. This should potentially avoid ath10k
warning/error messages while running continuous wifi down/up with max
number of vaps configured. Found this change during code walk through
and going through other beacon configuration related functions in ath10k
Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qti.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Fix to return a negative error code from the error handling case
instead of 0, as done elsewhere in function ath10k_ahb_probe() or
ath10k_ahb_resource_init().
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The (1 << x) - 1 trick won't work when you
are trying to fill up all 64 bits, so add special
case for that.
Signed-off-by: Ben Greear <greearb@candelatech.com>
[kvalo@qca.qualcomm.com: remove the sentence about moving limits]
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
They are not necessarily named in an intuitive manner,
so at least add some comments to help the next person.
Signed-off-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Signed-off-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Chipset from QCA99X0 onwards (QCA99X0, QCA9984, QCA4019 & future)
rx_hdr_status is not padded to align in 4-byte boundary. Define a
new hw_params field to handle different alignment behaviour between
different hw. This patch fixes improper retrieval of rfc1042 header
with QCA4019. This patch along with "ath10k: Properly remove padding
from the start of rx payload" will fix traffic failure in ethernet
decap mode for QCA4019.
Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qti.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Since reset_control_get() never returns NULL, we can use IS_ERR()
instead of IS_ERR_OR_NULL(). The return statements can be simpler
as well.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Use the managed variant of reset_control_get() to simplify the
failure path and the .remove callback.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Use the managed variant of clk_get() to simplify the failure path
and the .remove callback.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
|