From: pillair@codeaurora.org
To: ath10k@lists.infradead.org
Cc: linux-wireless@vger.kernel.org, Rakesh Pillai <pillair@codeaurora.org>
Subject: [PATCH v2 0/4] Support for STA idle mode power save(IMPS)
Date: Tue, 17 Apr 2018 17:36:57 +0530 [thread overview]
Message-ID: <1523966821-21903-1-git-send-email-pillair@codeaurora.org> (raw)
From: Rakesh Pillai <pillair@codeaurora.org>
Enable STA idle mode power save(IMPS) for WCN3990 TLV target.
In-order to support STA idle mode ps direct access to CE registers are
protected via 2 mechanism. As target can power collapse based on idle
inactivity and any target register access during that state can lead to
un-clocked access.
2) Caching SRRI/DRRI in DDR.
WN3990 has a shadow block in HW which is always on domain and allows HOST/APPS
access irrespective of power state of the target(Common subsystem(includes CE block)
might be down due to idle/inactivity).
Any operation on the shadow registers are directly reflected back in the actual
CE registers( SRWI/DRWI) once common subsystem gets up.
The shadow registers configuration is supplied via QMI message.
WC3990 has 24 shadow registers and mapping of shadow register(0-23) to CE registers(0-12)
is as following.
-----------------------------------------------------------
Shadow Register | CE | src/dst write index
-----------------------------------------------------------
0 | 0 | src
3 | 3 | src
4 | 4 | src
5 | 5 | src
7 | 7 | src
13 | 1 | dst
14 | 2 | dst
19 | 7 | dst
20 | 8 | dst
21 | 9 | dst
22 | 10 | dst
23 | 11 | dst
1) Caching SRWI/SRWI in HW shadow block.
Since shadow block allows only WRITE access, for read access(SRRI/DRRI) driver allocates
region in DDR(12CE*half WORD) which is being configured in CE UPD control register.
CE SRRI/DRRI are restored and replayed on the configured region(DDR) on each update.
HOST/APPS reads SRRI/DRRI from the DDR to make the access independent of target power state.
Changes in v2:
- Disabled the shadow_reg_support and rri_on_ddr hw params for QCA988X_HW_2_0_VERSION
- Fixed checkpatch warnings
Govind Singh (2):
ath10k: Enable SRRI/DRRI support on ddr for WCN3990
ath10k: Enable sta idle power save
Rakesh Pillai (2):
ath10k: Add hw params for shadow register support
ath10k: Add support for shadow register for WNC3990
drivers/net/wireless/ath/ath10k/ce.c | 245 +++++++++++++++++++++++++++++++--
drivers/net/wireless/ath/ath10k/ce.h | 14 ++
drivers/net/wireless/ath/ath10k/core.c | 28 ++++
drivers/net/wireless/ath/ath10k/hw.c | 9 +-
drivers/net/wireless/ath/ath10k/hw.h | 17 ++-
drivers/net/wireless/ath/ath10k/mac.c | 7 +
drivers/net/wireless/ath/ath10k/snoc.c | 3 +
7 files changed, 312 insertions(+), 11 deletions(-)
--
2.14.1
next reply other threads:[~2018-04-17 12:07 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-17 12:06 pillair [this message]
2018-04-17 12:06 ` [PATCH v2 1/4] ath10k: Add hw params for shadow register support pillair
2018-04-24 6:05 ` [v2,1/4] " Kalle Valo
2018-04-17 12:06 ` [PATCH v2 2/4] ath10k: Add support for shadow register for WNC3990 pillair
2018-04-17 12:07 ` [PATCH v2 3/4] ath10k: Enable SRRI/DRRI support on ddr for WCN3990 pillair
2018-04-17 12:07 ` [PATCH v2 4/4] ath10k: Enable sta idle power save pillair
2018-04-18 7:06 ` Sebastian Gottschall
2018-04-18 13:07 ` govinds
2018-04-18 13:16 ` Kalle Valo
2018-04-18 14:44 ` Arend van Spriel
2018-04-19 4:32 ` govinds
2018-04-19 16:36 ` Kalle Valo
2018-04-19 17:00 ` Adrian Chadd
2018-04-20 7:21 ` Sebastian Gottschall
2018-04-20 8:16 ` Arend van Spriel
2018-04-20 12:43 ` govinds
2018-04-23 15:50 ` Kalle Valo
2018-04-23 16:41 ` Adrian Chadd
2018-04-24 5:35 ` Kalle Valo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1523966821-21903-1-git-send-email-pillair@codeaurora.org \
--to=pillair@codeaurora.org \
--cc=ath10k@lists.infradead.org \
--cc=linux-wireless@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).