As the ICC_GET stub function returns NULL and it's valid, PCIe controller
driver must continue without returning an error. This is the case when
CONFIG_INTERCONNECT is not set.
Change-Id: I0065caf71fd790feb0dbe6b459f203e58685be95
Signed-off-by: Manoj Vishwanathan <mvishwan@codeaurora.org>
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
qcom_clk_dump function internally has sleeping calls like
mutext locks. We should not use this function in interrupt/
atomic context.
Change-Id: Ic10db12ec79158ea5a532a0de5a66a2c4a49a703
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
PCIe keeps Qactive signal asserted when link is active (L0).
It de-asserts it when link is in L1SS or D3Hot. In case of
L2, Qactive is not de-asserted, this prevents SNOC power
collapse. Fix this issue by asserting Qactive upon link
enable(L0) and de-assert it upon link disable(L2) using
PCIE20_PARF_CFG_BITS_3 register.
Change-Id: Iba8edb0360e6c6df9ffd1b65189fe8c92ca2c0b5
Signed-off-by: Hemant Kumar <quic_hemantk@quicinc.com>
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
Dump PCie clocks on failure to enter link into L0,
linkdown interrupt, and on receiving wake IRQ from device.
Change-Id: I89430b25feeb165709ac44d3af65c73b8ab4eada
Signed-off-by: Vivek Pernamitta <quic_vpernami@quicinc.com>
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
This change is to proceed PCIe RC probe even icc handles are not present
in SDX75 RUMI validations.
Currently icc changes are not mainlined and hence avoiding the issues
related to icc in PCIe code.
Change-Id: Ie66c62fae4e84cc68e08dfcd5a159dbdfaaebed1
Signed-off-by: Jyothi Kumar Seerapu <quic_jseerapu@quicinc.com>
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
Add debug support to print the PCI_L1SS_CTL1 and PCI_EXP_LNKSTA
registers during the aer interrupts.
Change-Id: I487c71bc691d70972fb7ff3c7d21b667a59a8838
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
In some devices we have 5 PCIe controllers. This change
enables the 5th PCIe controller.
Change-Id: Ifb4c03eff307afe7f1cd6204eb5baa19a8188570
Signed-off-by: Mrinmay Sarkar <quic_msarkar@quicinc.com>
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
Add support for reading tcsr configuration from device tree and
configuring tcsr register dynamically.
This change for supporting sa8195p PCIe1. The default PCIe linkage
status of PCIe1 and 2 on sa8195p is:
PCIe1: not enabled
PCIe2: x4 lane
When config the register TCSR_PCIEPHY_LINK_CONFIG to 0(default 1),
the linkage status becomes:
PCIe1: x2 lane
PCIe2: x2 lane
This change add the ability to read tcsr value from device tree.
Change-Id: Iac53f61a147a839772c8411993f3be233b142b56
Signed-off-by: Xiang Li <lixiang@codeaurora.org>
Signed-off-by: Nitesh Gupta <nitegupt@codeaurora.org>
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
Add support for QRTR to forward messages between network clusters. The
network subnet id's are attached to the QRTR subnodes in the MHI and
RPMSG/GLINK nodes.
The current forwarding decisions are done based on the net ids and are
wrapped in a single function for easier maintenance of forwarding
decisions later on. The function will return true once it determines
a subnet has no connection to another subnet.
The NEW_SERVER, DEL_SERVER, and DEL_CLIENT control messages should be
forwarded while the DATA and RESUME_TX commands should be passed along
to their destination node.
The nameservice is expected to send NEW_SERVER commands for it's entire
database instead of just the local service database with these changes.
This is to make sure new nodes get service notifications that came
earlier and were meant to be forwarded to the new node.
This change squashes the following commits from msm-4.14:
commit e5f6a6769ceb ("net: qrtr: Add forwarding support based on net id")
commit 4516ab18718d ("net: qrtr: avoid deadlock in case of recursive
lock for node list")
commit dc2d47cd12d3 ("net: qrtr: Only update pkts with broadcast node
ID")
commit 4277aebeff91 ("net: qrtr: Free skb if qrtr_node_lookup fails
during qrtr_fwd_pkt")
In addition fix minor format issues and update copyright.
Change-Id: Iaf01dd212b07dfbb13ec087ea0aae980cda7c2fd
Signed-off-by: Chris Lew <quic_clew@quicinc.com>
KASAN seems to be flagging that bool
would only be 1 byte while %du would
want to write 4 bytes leading to out
of bounds.
Change-Id: I0e43b1103b882bbd61b5a0bef231efcc3d7d1e1b
Signed-off-by: Badri Sampath <quic_badris@quicinc.com>
As QoS driver takes freq value in s32 format, updated the max
vote value to FREQ_QOS_MAX_DEFAULT_VALUE, instead of UINT_MAX.
Change-Id: I5152ac65a9513ce7cafe9f72bbffc499571a0768
Signed-off-by: Varun Garg <quic_gargv@quicinc.com>
Go through pmu library to read/request perf counters for
msm_performance usecase.
Change-Id: Idfa83c6c7f18b8a85ff13992e3ff5cd65df50c10
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
There is a requirement where slimbus slave don't expect ports
to be disconnected during stream unprepare for sample rates
other than 44.1/88.2k, which is causing mute issues.
Added new slim_stream_unprepare_disconnect_port API to support
disconnect port request from clients without freeing port memory
allocated during stream prepare.
Change-Id: Idb00a1fdf15d864cb6ee82f67c0db4777434b296
Signed-off-by: Anvesh Salveru <quic_asalveru@quicinc.com>
This reverts commit 5c4cca6534.
Since upstream IPCC driver is being used now, remove downstream
driver code.
Change-Id: Icb4bc6bb1bf5ce25b11f0e5b8d6d01d1d744e13d
Signed-off-by: Huang Yiwei <quic_hyiwei@quicinc.com>
Exit with an error from mem_buf_lend_internal() if the driver hasn't
probed.
Change-Id: Ide42166c2f850197f989a228f9139d401411a914
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
Id need to be initialized in function mem_dump_alloc.
Change-Id: Iddc3b4b09ea0a3b3554e5ab16e678240dcefe79e
Signed-off-by: Mao Jinlong <quic_jinlmao@quicinc.com>
Initialize the variable "initialized" to avoid it being used
uninitialized.
Change-Id: I9c7cbedfb0cc0f7519fbc7305cb1c4f2072f61b0
Signed-off-by: Tao Zhang <quic_taozha@quicinc.com>
IPC logging and IRQ naming depend on the name variable in the glink
data structure. Add device tree name reading code that was removed
by upstream.
Change-Id: Id1c521d94b8a3c9557273d8f8b072e7e87a1b759
Signed-off-by: Chris Lew <quic_clew@quicinc.com>