* changes:
drivers: thermal: lmh-dcvs: Register the cooling device in order
ARM: dts: msm: Add a test thermal zone for SM8150
drivers: thermal: lmh-dcvsh: Add multiple clock plan support
* changes:
qbt1000: Initialize drvdata structure before usage
qbt1000: Validate FP app name before qseecom_start_app
soc: qcom: add support for fingerprint sensor driver
During the ARM PMU driver's probe, the IRQ number and state
are set when requesting for the IRQ lines. However, these
values are re-initialized when the driver tries to register
with the perf framework later. The bug prevents the driver
from re-enabling the interrupts during the CPU hotplug-on
case (or any IRQ operation thereafter), thus not triggering
any interrupt. Perf sampling events would be mainly impacted
by this as they update the samples for every overflow interrupt.
Hence, moving the initializations of the IRQ number and state
after the arm_pmu structure is allocated. The correct values
can be recorded after requesting the IRQ.
Change-Id: Ia4361a31e9e960efc7156f813c543574b197ff68
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
This fixes a warning shown when phys_addr_t is 32-bit int when compiling
with clang:
mm/memblock.c:927:15: warning: implicit conversion from 'unsigned long long'
to 'phys_addr_t' (aka 'unsigned int') changes value from
18446744073709551615 to 4294967295 [-Wconstant-conversion]
r->base : ULLONG_MAX;
^~~~~~~~~~
./include/linux/kernel.h:30:21: note: expanded from macro 'ULLONG_MAX'
#define ULLONG_MAX (~0ULL)
^~~~~
Change-Id: I23a1b8b2054ca93ed70d462285af8405fe8fe0b4
Link: http://lkml.kernel.org/r/20180319005645.29051-1-stefan@agner.ch
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Pavel Tatashin <pasha.tatashin@oracle.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Git-commit: 644d87dccdc69cf79834a72ed0c889580d6af32a
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
Signed-off-by: Charan Teja Reddy <charante@codeaurora.org>
Terminate the string, coming from userspace and containing the name
of fingerprint trusted app, with null character, to make sure kernel
memory does not leak into logs
Change-Id: I1668a64fcb6747ce3ef3b1ee6321fa5fa4a1798a
CRs-Fixed: 2029409
Signed-off-by: Abir Ghosh <abirg@codeaurora.org>
Signed-off-by: Kota Priyanka <kotap@codeaurora.org>
Fix uninitialized local variable error which might have lead to
crash.
CRs-Fixed: 2030137
Change-Id: I3fd95cb343c3175e4190c8ebfe209399db0602a6
Signed-off-by: Abir Ghosh <abirg@codeaurora.org>
Signed-off-by: Kota Priyanka <kotap@codeaurora.org>
Validate the name of the client app before passing it to
qseecom_start_app.
CRs-Fixed: 2006695
Change-Id: I9c6b16050d4f6fc94827021c7b0f2ab292452f60
Signed-off-by: Abir Ghosh <abirg@codeaurora.org>
Signed-off-by: Kota Priyanka <kotap@codeaurora.org>
The QBT1000 driver provides an API for communicating
with trustzone applications and handles firmware event
interrupts.
The driver supports the following features:
- loading and unloading trustzone applications.
- sending commands to trustzone applications.
- voting/un-voting for clocks before/after making
a trustzone call.
- receiving firmware events, signalled by interrupts,
and providing them to the driver client.
- sending a key event in response to firmware finger
detect events.
- support for multiple IPC messages.
- retry logic for CBGE interrupt handling.
- remove clocks on/off logic.
This is snapshot of the qbt1000 driver as of msm-4.4 kernel base
'd93c68b1f0bd (soc: qcom: add support for fingerprint sensor driver)' .
Change-Id: I59b4294285edab6e4916528a31d0713d06d5a072
Signed-off-by: Abir Ghosh <abirg@codeaurora.org>
Signed-off-by: Kota Priyanka <kotap@codeaurora.org>
Enable common clock framework and syscon for QCS405 device.
Change-Id: I3c0f451511fa350a53ceec2e2c25b00384a5a6fd
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Enable ST touch driver for sm8150_defconfig and sm8150-perf_defconfig.
Change-Id: I70206d9e865680a1bf5f1d5962d53f682b80a025
Signed-off-by: Chong Gu <chongu@codeaurora.org>
Currently every dsi display is probed. Optimize it by having
a main dsi device tree node and reference all available displays.
Use the command line parameters to identify which display to
select for a given target.
Change-Id: Ic88d431829b177afdc91b2282b630ea0356d886a
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
Add ssc funnel and ssc remote etm0 node for sm8150, which used to config
ssc etm hardware path when catch etm log from ssc core.
Change-Id: Ibcb6ab8cf4e48b50af6faa49cd64346e3bdb329b
Signed-off-by: Mulu He <muluhe@codeaurora.org>
Enable temperature controller (TSENS) on qcs405.
Thermal clients can read from TSENS temperature sensors,
set temperature thresholds and receive notification.
Change-Id: I1b8d5d36fbab9519bc056db8fed49cf7f8afe266
Signed-off-by: Siva Kumar Akkireddi <sivaa@codeaurora.org>
Add dl_south funnel and dl_south tpdm device node, they are new HW
introduced on sm8150 platform.
Change-Id: If8a6833c73dfd0aaee792e1bd27324dc2a607722
Signed-off-by: Mulu He <muluhe@codeaurora.org>
Since display RSCs now have their own dedicated AMC TSC,
they no longer need to repurpose a single TSC for both
wake and AMC.
Change-Id: I6aa8c32b167d58214f4965f594857d3fbc911dd7
Signed-off-by: David Dai <daidavid1@codeaurora.org>
Include an ALC node so that we can clear its
proxy vote at late_init.
Change-Id: I4b9605ec8d6ff5f71a6cc5d6494195b53bb38d80
Signed-off-by: David Dai <daidavid1@codeaurora.org>
Keep a small active only vote on system critical resources
on behalf of APPS processor.
Change-Id: I636714d96928c43790765b6968f83ed41b91f370
Signed-off-by: David Dai <daidavid1@codeaurora.org>
Currently, the TLB nodes that are used for CPUSS dumping
are named L1 TLB nodes, but they are acutally L2 TLB nodes.
Update incorrect L1 TLB node names to correct L2 TLB node
names on sm8150.
Change-Id: I26846723e88ed5a2bf5a9ca8cd655ec8ec1eab1c
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
This patch is a snapshot of smcinvoke driver taken from msm-4.9
commit a8117effbe0 (Merge "ARM: dts: msm: Disable GPU memory
pools for QCS605")
Change-Id: I9e2de0c464bc23c48ae8a5a90e289048b0c274ae
Signed-off-by: Dinesh K Garg <dineshg@codeaurora.org>
This module allows user space clients to transfer data
between external modem and host using standard file
operations.
CRs-Fixed: 2204910
Change-Id: I46af0e99a68836e50cc4da4ad3ab85e248d4af4f
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
Introduce DTS files to support APQ version of SM8150 chipset.
Change-Id: Id5af8b8973fd01fb0663f4a2fcbfdc4b2857edab
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Enable SSP suspend/resume related quirk with primary USB port
on SM8150.
Change-Id: I6a0539095f5b72ba6e325cfa4d04af0249f495ad
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
USB PHY (qmp super speed phy) is unable to consistently move between
the u3 (p3)/u0(p0) states causing controller and phy link level issues
resulting in device re-enumeration. Fix the issue by forcing qmp phy to
move to P2 state always before moving to P0 from P3 state. Forcing by
phy link state is done by enabling Ux_exit_in_Px (BIT:27) and P3ExSigP2
(BIT:10) of GUSB3PIPECTL register.
Change-Id: I1edd6c77769d3139863413eed82f2b8b98b33d42
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Add support for devicetree overlay on sdmshrike target.
Change-Id: I372d4e8d5cf2940c047c466e59bf7a918801b240
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
During addfb2 ioctl, buffer is always attached to non-secure context bank.
At commit time when the plane property tells the buffer is secure
it needs to be attached and map to the secure context bank.
This change detects the context bank type and maps the buffer accordingly.
Change-Id: Icf3697b31d5ae5d217846fbee16467af55529c86
Signed-off-by: Narendra Muppalla <NarendraM@codeaurora.org>
Update devicetree bindings for SDE RSC to match the RSC sequencer in
SM8150.
Change-Id: Ia19bc1d53497e3e5ebd8ee99bb6c56d6150977b2
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
Enable sleep stats driver to report XO and system sleep statistics from
AOSS.
Change-Id: Iee8602d5538ea13d211d24a218c6eb3702398fc4
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
The CPU cooling device registration is scheduled for later execution
during probe. Due to this, the CPU cooling devices are not created in
the same order as CPU logical numbers. This could result in unexpected
behavior for thermal-engine.
Modify the driver to acquire a lock and ensure that the cooling devices
are always registered in the same order as CPU logical numbers.
Change-Id: I67dbfa8e386480fc437425386855faf2f6ebdd5d
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
Add a sample thermal zone, which mitigates the cooling devices like
modem and display backlight for SM8150. This is a sample thermal zone,
which will be disabled by default.
Change-Id: I866b4c0c0b981960f9579501597d81cf258cd55f
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
A single LMH DCVSh hardware can mitigate CPUs with different clock plan
operating in a single voltage rail.
Add support in LMH DCVSh driver to treat individual CPU to have
different clock plan. Hence all the throttling frequencies are compared
against each individual CPUs.
Change-Id: I566985a45007bf6939fa315a9471bbba4e5df7de
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
* changes:
drivers: cpuidle: lpm-levels: Ignore sleep bias for isolated cpus
cpuidle: lpm-levels: Do not predict LPM for isolated cpus
cpuidle: lpm-levels: Correctly check if its okay to do cluster LPM
drivers: cpuidle: lpm-levels: Remove unused code