Add ufs and ufs-phy device nodes to support
ufs as storage device for SDM630 QRD platform.
CRs-Fixed: 2005015
Change-Id: If0c4edaba9285ba9a1c927e1e804427160947b11
Signed-off-by: xiaonian <xiaonian@codeaurora.org>
For some DSI panels where porch values are less, if BTA operation
does not finish in BLLP period, then fake overflow errors are
expected. So disable DSI FIFO overflow errors before triggering
BTA and enable it back once BTA acknowledgment is received for
video mode panels.
Change-Id: If63ac6435f5786c834fe797478c38a9a2f51076b
Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
Split the joint LAN_WAN producer pipe to two
pipes, one for LAN and one for WAN.
Use event based completion for the WAN pipe
instead of status based to improve UL performance.
CRs-fixed: 1098422
Change-Id: I1776a5b9dc6265dc862a2eeb9419dce34efaad8b
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
The offline_delay_ms tunable is supposed to give hysteresis
effect by delaying the CPU isolation. The current implementation
is not enforcing this correctly due to which we see a CPU is
getting isolated immediately in the next evaluation cycle.
Allow isolating a CPU only if offline_delay_ms is passed
after since the last time we isolated/unisolated/evaluated
without changing the need CPUs.
Change-Id: I9681a11dea1ffa07b2fda6cc9a40af9b453bf553
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Set the device node associated with the session while creating
the context to allow for dma operations.
Change-Id: I7937a7bd533a9be09453144e20f7ecca3f3cc0ef
Signed-off-by: Sathish Ambley <sathishambley@codeaurora.org>
Slope limit coefficient is used to define the maximum change in
battery SOC. There is a requirement to configure slope limit
coefficient based on charging status and battery temperature
threshold. Add support for it through the following properties.
- qcom,slope-limit-temp-threshold
- qcom,slope-limit-coeffs
Possibe values allowed for slope limit coefficient is 0 to 31.
Change-Id: I41eacb13734f1692a16c1b011c58a488e46515ec
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Ensure that a few of the parameters (SELECTED_PDO, REQUESTED_PDO,
RDO) are properly cleared out during hard reset and a uevent
update is sent to notify userspace clients.
Also, don't reset src_cap_id upon disconnect. This makes it a
a monotonically increasing value upon every connection so that
clients can distinguish when a new PD session is established.
Demote it to a u16 in order to have a smaller wraparound (65535).
Change-Id: I622ad1155b3680d3f616d5e9a835d4c6cbca3636
Signed-off-by: Jack Pham <jackp@codeaurora.org>
When sending a request through the 'select_pdo' sysfs file,
make sure the request has gone through and is acknowledged
by the source before returning. This allows for checking if
the request was rejected so that an error can be returned.
Rename the 'swap_complete' completion variable to 'is_ready'
so it can be reused in this context. Also add a mutex so that
select_pdo will not contend with a dual_role swap.
Change-Id: Ie8b088faa15c67915e3bd96972b4f59f0cc66afe
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Currently when 3 switcher_power_ok interrupts are seen within a
second, the driver thinks that the switcher is reverse boosting
and suspends USB input path.
However, switcher_power_ok could happen 3 times within a second
while AICL is run from a charger collapse, a valid usecase which
ends up in an USB suspended state.
Note that AICL run caused switcher_power_ok is accompanied by an
USBIN_UV interrupt. Use that to distinguish reverse boost Vs AICL
runs. In particular, reset the switcher_power_ok interrupt count
updated by storm_watch when an USBIN_UV interrupt is seen.
Change-Id: I6817c66319f9af03ac28324a8d863876fdadafb3
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Since the interrupt information for both smb2 and smb138x charger
devices are almost common, abstract it to a single smb_irq_info
struct. Also, keep an interrupt index for every interrupt which
can be used when necessary.
Change-Id: I4e42dd15a46b59c1a9c27412ca6fdff281fa71ec
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
There are some circumstances where we have to reset the storm
watch interrupt count. Add support for it.
Change-Id: Iacbeb3258d53010aab8ba881d10de773fe54dd93
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
IPC logging long mechanism was added to capture reset logic
register access log to be captured into a separate buffer so that
those logs wont obscure with main driver logs. Now that reset
sequence is moved to WLAN FW so there is no need for the IPC
logging mechanism.
CRs-fixed: 2005481
Change-Id: I1d983a5f5aa0293598303bda23f9adbc04303458
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
To force qnovo FCC and FV through parallel framework
more conveniently, batt psy is bridged to replace votable
in qnovo driver. The two properties are -
POWER_SUPPLY_PROP_CURRENT_QNOVO and
POWER_SUPPLY_PROP_VOLTAGE_QNOVO.
CRs-Fixed: 2004173
Change-Id: I40b179fe5535e0209fcdbc1cb7e64cbfdf45a14b
Signed-off-by: Harry Yang <harryy@codeaurora.org>
CURRENT_QNOVO and VOLTAGE_QNOVO allow "forcing" fast charge
current and float voltage value, implemented around votable
such that one can have previlige in FCC and FV voting.
CRs-Fixed: 2004173
Change-Id: I2df30220aa89e15c4bace9980990f227218a5bdd
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Print the ICL settled value within the icl-changed IRQ handler.
Change-Id: I5553abecfc5e32b24bef3525f532f4b3505c0757
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Currently, fixed 5V adapter voltage is used for calculating slave FCC.
When HVDCP 3.0 is used it skews the desired FCC distribution. Fix this
by using the HVDCP3 pulse count to determine the actual adapter voltage
when limiting the slave battery current.
Change-Id: Ib4735ffe7b6287a3e57e0f74eb24c13c6a2b7a5a
Signed-off-by: Fenglin Wu <fenglinw@codeaurora.org>
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
INPUT_VOLTAGE_SETTLED is the negotiated adapter voltage setting.
Change-Id: I2ac529a77e8ed007c908c4f37eea718a80bc11d3
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
The chg-state-change IRQ will be used to notify when the parallel slave
charger changes its charge state. Enable it.
Change-Id: Ia57db8ec5f2263b62217c235725ee9caa07f86e4
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Add an IRQ handler function that notifies when the slave charge state
changes.
Change-Id: I359ed08c5ad289ceeabd6fa8720a959c74b6bb5e
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
CURRENT_QNOVO - force fast charge current value
VOLTAGE_QNOVO - force float voltage value
CRs-Fixed: 2004173
Change-Id: I7569052fd2cb6d1ce9a3a8e69e79b950a6c62d57
Signed-off-by: Harry Yang <harryy@codeaurora.org>
FCC_MAX votable was introduced as an intermediate votable used by
Qnovo driver for fast charge current vote, but does not fit in
the new requirement that Qnovo force its vote value.
Remove it.
CRs-Fixed: 2004173
Change-Id: Iff8b74113550f808546d61ef864f3935fc5d61fa
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Input suspend on fake battery feature is by default enabled in the
software, add a DT property to enable/disable the feature.
Change-Id: I06bda6c72010699f4be24ff6044fe3bb248b06fb
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Signed-off-by: Harry Yang <harryy@codeaurora.org>
As per the hardware recommendation, a delay of 500 us is needed
after LMH mitigation is enabled by software and before the flash
LED is strobed. Add it.
Change-Id: Ib70efbb7267510ffb9d95c4aba8566bf6e777c0f
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>