Currently, if APPS sends more than 10 requests to RPM, glink
hard interrupt service function is unable to process more than 10
acknowledgements.
Increase the loop iterations to 15 to process up to 15 acknowledgements
in the hard interrupt context.
Change-Id: Ief7385f21d5853275a2b90438181c93a01c76f78
Signed-off-by: Pranav Mahesh Phansalkar <quic_pphansal@quicinc.com>
In the host mode suspend scenario, the dwc3 core executes
dwc3_core_exit, which suspends the USB PHYs and turn off the clocks.
Later, during the dwc3-msm PM suspend, it invokes notify_disconnect to
the PHYs. As part of the SS PHY disconnect, it attempts to power down,
leading to a NOC error. To address this, a check has been added to
enable the clock during the power-down process.
Change-Id: I6040c431dea4a693a7226dc3006c099eb43bce43
Signed-off-by: Faisal Hassan <quic_faisalh@quicinc.com>
Add pwm reset support so that for each frame, period and
duty_cycle can be changed dynamically. While at it, also
update the pdm_pwm_free API with PWM disable functionality.
Change-Id: I64ecd4a8cec948d56cb89e7a5ae4b30e70cb9f3e
Signed-off-by: Kalpak Kawadkar <quic_kkawadka@quicinc.com>
TCSR_SOCCP_SLEEP_STATUS is updated when SOCCP starts wakeup process
and is not done processing the sleep request, Check the D0 state
transition by polling on SOCCP_SPARE register.
Change-Id: I7a00ec58f99ca748857e93ce4aab5a8dcc126faf
Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com>
Signed-off-by: Kamati Srinivas <quic_kamasrin@quicinc.com>
Clear the master kernel bit if the SOCCP does not honour the
APPS request for a state change.
Change-Id: I5a6747973ed87e4c7f0d9074ef8da56925d2a927
Signed-off-by: Gokul krishna Krishnakumar <quic_gokukris@quicinc.com>
Signed-off-by: Kamati Srinivas <quic_kamasrin@quicinc.com>
This reverts commit a8ce5c2552.
TCSR register read can be solely relied upon for D0 confirmation.
Change-Id: I9cb11a13313d2a9964efdc02a77b698b62268070
Signed-off-by: Kamati Srinivas <quic_kamasrin@quicinc.com>
When Slave receives sleep command from host it requires 1msec to handle
the sleep due to HW limitation. Host should wait some time >1ms after
sending sleep command and before initiating next command to slave.
Added changes to check for slave_sleep_lock and wait for 2msec to
initiate transfers from host post sleep command.
Change-Id: Id333e2acecdb0ab169565f343b27d61952fb9471
Signed-off-by: Chandana Kishori Chiluveru <quic_cchiluve@quicinc.com>
Keeping enable GPIO always high leads to higher power consumption,
even in RBSC, when the regulator is not in use. Toggle GPIO to high
state only when regulator is enabled and toggle it low after regulator
disable to avoid power consumption when the regulator is not in use.
Change-Id: Ic2f9c0ef350051776f094e55e6fb4967b0d45248
Signed-off-by: Jishnu Prakash <quic_jprakash@quicinc.com>
Add tcsrcc and gdsc-regulator modules to modules list on NEO platform,
to enable it to load during first stage init.
Change-Id: I8feb175c570abbc3e0a458615f2d1f08e0444f71
Signed-off-by: Chintan Kothari <quic_ckothari@quicinc.com>
Add support for seraph pin configuration and control
in pinctrl framework.
Change-Id: I0673e080925601ba53f142279258d79af33d3aac
Signed-off-by: Navya Vemula <quic_nvemula@quicinc.com>
Currently bootloader does the following to calculate the authentication
tag slot number.
authslot = NrMetaPages + NrCopyPages + NrSwapMapPages +
HDR_SWP_INFO_NUM_PAGES
However, with compression enabled, we cannot apply the above logic to
get the authentication slot number. So this data should be provided to
the bootloader for decryption to work.
The current implementation doesn't make use of the swap_map_pages
for restoring the hibernation image. Use the slot number of the first
swap_map_page to store the authentication tag slot number.
Change-Id: Iddfb98cc5adc7bd79c0f52f3f5d64ad282efc9b4
Signed-off-by: Nikhil V <quic_nprakash@quicinc.com>
In case of hibernation with compression enabled, 'n' number of pages
will be compressed to 'x' number of pages before being written to the
disk. Keep a note of these compressed block counts so that bootloader
can directly read 'x' pages and pass it on to the decompressor. An
array will be maintained which will hold the count of these compressed
blocks and later on written to the disk as part of the hibernation
image save process.
Change-Id: If48cd5c396eda674467b3d40c75ad3c2e91c2e5e
Signed-off-by: Nikhil V <quic_nprakash@quicinc.com>
Currently, it seems due to ffs_ep being a local struct in upstream file
the ffs_ipc_log has defined a local copy of it for it's use.
However any mismatch in this might lead of th dependent structures
being unstable or corrupted due to this ambiguity.
Fix this by aligning the local ffs_ep structure defined in upstream
and downstream files.
Change-Id: Ia52c141deb49c0beaba31a59fa88ae58f8aaf5ea
Signed-off-by: Udipto Goswami <quic_ugoswami@quicinc.com>
Due to temporary or long term pinning, offline may take longer
due to migration and pasr hal may not respond until it's complete.
Signal to stop the memory offline operation after a specified time value.
Change-Id: Ia78f71c2baf040b2a127cf731c95803cec66628a
Signed-off-by: Charan Teja Reddy <quic_charante@quicinc.com>
Signed-off-by: Pratyush Brahma <quic_pbrahma@quicinc.com>
While mem-offline tries to get section allocated memory,
it takes a zone lock to go over all pfns in the block.
As the pfn walk can take significant time, the lock can
be held for longer and interrupts would be disabled for
long (reportedly more than 1.25 ms on some targets).
This is unnecessary since approximation of the allocated
bytes should suffice. Remove the unnecessary
zone locks.
Change-Id: I8042cca7a796823d4d580623df99fad61053e0ea
Suggested-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com>
Signed-off-by: Pratyush Brahma <quic_pbrahma@quicinc.com>