Age | Commit message (Collapse) | Author |
|
integration-linux-qcomlt
|
|
integration-linux-qcomlt
|
|
integration-linux-qcomlt
|
|
'qcs404-defconfig/tracking-qcomlt-qcs404-defconfig' into integration-linux-qcomlt
|
|
integration-linux-qcomlt
# Conflicts:
# drivers/gpu/drm/bridge/Kconfig
# drivers/gpu/drm/bridge/Makefile
|
|
integration-linux-qcomlt
# Conflicts:
# arch/arm64/configs/defconfig
|
|
integration-linux-qcomlt
# Conflicts:
# arch/arm64/boot/dts/qcom/sdm845.dtsi
|
|
into integration-linux-qcomlt
# Conflicts:
# arch/arm64/boot/dts/qcom/sdm845-db845c.dts
|
|
integration-linux-qcomlt
|
|
'distro.config/tracking-qcomlt-config-fragments' into integration-linux-qcomlt
|
|
'arm64-defconfig/tracking-qcomlt-arm64-defconfig' into integration-linux-qcomlt
|
|
integration-linux-qcomlt
|
|
integration-linux-qcomlt
|
|
'fixes/tracking-qcomlt-fixes-without-devfreq-reverts' into integration-linux-qcomlt
|
|
integration-linux-qcomlt
|
|
integration-linux-qcomlt
|
|
integration-linux-qcomlt
|
|
Currently, there is a single lock, the icc_lock, that used for handling all
icc_set_bw() requests, including those for unrelated paths. This means that
some request are unnecessarily serialized, which may in turn have impact on
performance.
To address this issue, we are introducing a provider specific locks.
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
|
|
The header file is not used. Drop it.
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
|
|
Add a driver for stress testing the the Qualcomm SDM845 interconnect
driver. In includes running multiple threads in a loop that are setting
random bandwidth on different paths.
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
|
|
Add a driver for stress testing the the Qualcomm MSM8916 interconnect
driver. In includes running multiple threads in a loop that are
setting random bandwidth on different paths.
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
|
|
Enable the interconnect framework and the platform drivers for 64bit
Qualcomm platforms.
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
|
|
Add nodes for the network-on-chip interconnect buses present on
MSM8916-based platforms.
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
|
|
The frequency OPP tables have helper functions to search for entries in the
table based on frequency and get the frequency values for a given (or
suspend) OPP entry.
Add similar helper functions for bandwidth OPP tables to search for entries
in the table based on peak bandwidth and to get the peak and average
bandwidth for a given (or suspend) OPP entry.
Signed-off-by: Saravana Kannan <saravanak@google.com>
|
|
Not all devices quantify their performance points in terms of frequency.
Devices like interconnects quantify their performance points in terms of
bandwidth. We need a way to represent these bandwidth levels in OPP. So,
add support for parsing bandwidth OPPs from DT.
Signed-off-by: Saravana Kannan <saravanak@google.com>
|
|
Interconnects often quantify their performance points in terms of
bandwidth. So, add opp-peak-kBps (required) and opp-avg-kBps (optional) to
allow specifying Bandwidth OPP tables in DT.
opp-peak-kBps is a required property that replaces opp-hz for Bandwidth OPP
tables.
opp-avg-kBps is an optional property that can be used in Bandwidth OPP
tables.
Signed-off-by: Saravana Kannan <saravanak@google.com>
Reviewed-by: Rob Herring <robh@kernel.org>
|
|
Add Operating State Manager (OSM) L3 interconnect provider support on
SC7180 SoCs.
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|
|
Add OSM L3 interconnect provider binding on SC7180 SoCs.
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|
|
On some Qualcomm SoCs, Operating State Manager (OSM) controls the
resources of scaling L3 caches. Add a driver to handle bandwidth
requests to OSM L3 from CPU on SDM845 SoCs.
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|
|
Add bindings for Operating State Manager (OSM) L3 interconnect provider
on SDM845 SoCs.
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|
|
Add the DT nodes for each of the Network-On-Chip interconnect
buses found on SDM845 based platform and redefine the rsc_hlos
child node as a bcm-voter device to better represent the hardware.
Signed-off-by: David Dai <daidavid1@codeaurora.org>
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|
|
In order to better represent the hardware and its different Network-On-Chip
devices, split the sdm845 provider driver into NoC specific providers.
Remove duplicate functionality already provided by the icc rpmh and
bcm voter drivers to calculate and commit bandwidth requests to hardware.
Signed-off-by: David Dai <daidavid1@codeaurora.org>
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|
|
Add bcm voter driver and add support for RPMh specific interconnect
providers which implements the set and aggregate functionalities that
translates bandwidth requests into RPMh messages. These modules provide
a common set of functionalities for all Qualcomm RPMh based interconnect
providers and should help reduce code duplication when adding new
providers.
Signed-off-by: David Dai <daidavid1@codeaurora.org>
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|
|
Boot splash screen or EFI framebuffer requires the display hardware to
operate while the Linux iommu driver probes. Therefore, we cannot simply
wipe out the SMR register settings programmed by the bootloader.
Detect which SMR registers are in use during probe, and which context
banks they are associated with. Reserve these context banks for the
first Linux device whose stream-id matches the SMR register.
Any existing page-tables will be discarded.
Heavily based on downstream implementation by Patrick Daly
<pdaly@codeaurora.org>.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
|
|
Redefine the Network-on-Chip devices to more accurately describe
the interconnect topology on Qualcomm's SDM845 platform. Each
interconnect device can communicate with different instances of the
RPMh hardware which are described as RSCs(Resource State Coordinators).
Signed-off-by: David Dai <daidavid1@codeaurora.org>
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|
|
Add YAML schemas for interconnect bcm-voters found on QCOM RPMh-based
SoCs.
Signed-off-by: David Dai <daidavid1@codeaurora.org>
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|
|
Convert the qcom,sdm845 interconnect provider binding to DT schema.
Signed-off-by: David Dai <daidavid1@codeaurora.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|
|
There are a few dummy stub functions that are not marked as static inline
yet. Currently this header file is not included in any other file outside
of drivers/interconnect/, but that might not be the case in the future.
If this file gets included and the framework is disabled, we will be see
warnings. Let's fix this in advance.
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
|
|
looks like SoC ID is not exported to sysfs for some reason.
This patch adds it!
This is mostly used by userspace libraries like SNPE.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
We support HPD interrupts on all platofrms, let's start using it.
Signed-off-by: Archit Taneja <architt@codeaurora.org>
|
|
The ENABLE field in REG_HDMI_CTRL is required to be set to detect hot plug
events on 8x96. We don't get any HPD interrupts when HDMI bridge is
disabled.
Keep it always on. Downstream also seems to do the same thing. Restrict
this quirk only to 8x96, since we're not entirely sure whether this is
a legitimate fix or not.
Signed-off-by: Archit Taneja <architt@codeaurora.org>
|
|
It can take a while for the HPD sense to come up once we've configured
it. If we call HDMI connector's detect() very soon after configuring
HPD registers, drm might think we don't have HDMI connected. Wait a
bit before we let drm use the connector funcs.
Signed-off-by: Archit Taneja <architt@codeaurora.org>
|
|
the GPU device on msm8996 requires 2 gdscs to be powered on.
With powerdomains we have a limitation wherein only one
powerdomain can be associated with a given device in DT.
So hook the 2 gdscs together so both are powered on/off when
the gpu driver needs them to.
[Amit] We use this hack until genpd allows multiple powerdomains to be
associated with a device.
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Signed-off-by: Amit Kucheria <amit.kucheria@linaro.org>
|
|
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
Not releasing the QMI handle in the various failure cases will lead to a
user after free if someone, e.g. qrtr-ns, sends a message after probe
returns and free up the associated memory.
Fixes: c44c557f2db7 ("HACK: qcom: apr: Wait for PD up notification")
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
|
|
Add support for pm_runtime with the appropriate error checks for
sdw_write/read functions, e.g. when pm_runtime is not supported.
Also expose internal functions without pm_runtime support, which are
required to perform any sort of suspend/resume operation, as well as
any enumeration tasks.
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
|
|
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
|
Wait for PD up state before proceeding to probe the apr sub-devices.
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
|