This reverts commit dbc6a7199e.
By moving the SS_PHY resume to before enabling clocks, this has
the added benefit of improving the QMP SS PHY LFPS handshake
response by about 1.5-2.0ms and thus decreases overall resume time.
However, for QSCRATCH-based PHYs care must be taken to ensure
that the USB3 controller master clock is turned on or else its
usb_phy_set_suspend() routine will encounter unclocked register access.
Two previous changes, commit e6572b0 "clock: msm: Add
gcc_usb30_master_clk to USB HS/SS PHY devices", and commit c7852f6c
"usb: phy-msm-ssusb: Add USB3 core clock" allow the QSCRATCH SS PHY
driver to now properly handle set_suspend() being called even when
the USB3 hasn't yet enabled its clocks. Thus we can now move the
usb_phy_set_suspend() back to its previous spot.
Change-Id: I12323c6b8304d4ed35adf7e5ecb40c50116be704
Signed-off-by: Jack Pham <jackp@codeaurora.org>
This PHY uses QSCRATCH registers which technically belong
in the USB3 controller IO space, therefore reads/writes to
them require the USB 3 master clock to be turned on. Since
the init() and set_suspend() routines could be executed while
the controller is in low power mode, explicity turn on the
clocks in order to guarantee clocked register access.
Change-Id: I4f61ab0afb70c991b29d69df93cfd49b9fb83aa8
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Current code put usb2 phy into autosuspend mode and poll for IN_L2
pwr_event to be set while putting device into LPM on receiving SUSPEND
event. There is a possible race that arises when gadget events are
processed before the resume routine has disabled the USB2 PHY autosuspend.
Some of the gadget events issue endpoint commands which may time out since
the PHY is still autosuspended. Fix this issue by using available check
where it calls dwc3_gadget_usb2_phy_suspend() API to disable usb2 phy
autosuspend, and ignore hsphy_auto_suspend_disable platform specific
variable.
Also add error messages where this failure case is checked.
CRs-Fixed: 680990
Change-Id: Iebc48e10ea5bc9f90e17ad21f0fec620f5c57211
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
configure an i2c controller on BLSP1 QUP2 for zirc
Change-Id: Ic433b60f1d777a14799e192a4b7333759bd0c79c
Signed-off-by: Ankit Gupta <ankgupta@codeaurora.org>
Enable the driver that supports the MSM8994 LiQUID docking
station. This will allow the USB Hub and Ethernet ports
found on the dock to be when the tablet is inserted.
Change-Id: I5181f2ad3ba7cec5dd4035a29248f71d3481d974
Signed-off-by: Jack Pham <jackp@codeaurora.org>
This change adds a few more APIs to the phy_ops structure:
advertise_quirks - an API for setting the phy quirks
suspend - an API for the implementation of
phy suspend sequence
resume - an API for implementation of phy resume sequence
Change-Id: Idc76e7aef7fa1029f4d9d8baedae869346992da8
Signed-off-by: Yaniv Gardi <ygardi@codeaurora.org>
This would allow using BIMC bwmon hardware with the bw_hwmon devfreq
governor to scale the CPU BW vote.
Change-Id: Ie4f0c51e143c3736ed30519c39fffdcfc2b69eec
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Enable the static DDR BW voting for the corresponding cpufreq for msm
8936 and 8939.
Change-Id: Icabf9ea1b79274ea1fd005074397b056760e482d
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Crashes are observed during bootup due to unclocked access of Panic
control registers. Take care of the same by enabling appropriate clocks.
Change-Id: Ic8df1f9c3c3928b9a3e9b21d63a5d9bba4f2152c
Signed-off-by: Vishnuvardhan Prodduturi <vproddut@codeaurora.org>
During ramdump collection, the modem subsystem needs the MBA to be
loaded again. The allocation of memory done during that time is not
currently being freed and as a result, the common CMA area is getting
filled up.
Explicitly free the allocation area before bringing down the subsystem.
CRs-Fixed: 686515
Change-Id: I28b0ed381c2ad5ee1fcfacea4913184167af9815
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Currently, OCP hold is set to zero by default which is
preventing the PA from holding the shutdown state.
Set this bit to enable OCP hold by default. Once hold is set
PA would shut down immediately during overcurrent and hold
that state unless SPKR_PA_EN bit is toggled.
Change-Id: Ib37edddea5a4a34f5f6d046d3bf3baa835598d89
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
USB UICC cards are supported on MSM8974. Add 1 lun to expose the user
partition in mass storage function.
Change-Id: Iebe50e6eb0d0f934e7e4e10b024ebe5c3cfb6721
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
Callback notifications lock the channel status to prevent clients from
unregistering their callback function and other information while it is
in use during a notification. However, in some scenarios, clients use
the notification context to call back into bam_dmux which can result in
lock recursion.
Avoid the issue by caching the callback information, and then unlocking
the channel state before invoking the client's callback.
CRs-Fixed: 690328
Change-Id: I764b1c21c2254c9c72ee329dc671f9a1afb648a2
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
Remove round-robin entry from ETMv4 dt nodes since these
are not applicable for ETMv4
Change-Id: Ia6b69387f547c12b3020cf6657b3de4f4423b090
Signed-off-by: Xiaogang Cui <xiaogang@codeaurora.org>