Commit Graph

398 Commits

Author SHA1 Message Date
Zhen Kong 1aaa82aefa qseecom: Add a new smc cmd to check RPMB key provision status
A new smc cmd is added to check RPMB key provision status

Change-Id: I50411bf9ae7f31589be34d7b5aaf48f2c12f0018
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2019-07-27 22:10:55 +02:00
LuK1337 18aceede84 Merge tag 'LA.BR.1.3.6-03910-8976.0' of https://source.codeaurora.org/quic/la/kernel/msm-3.10 into HEAD
"LA.BR.1.3.6-03910-8976.0"

Change-Id: I16643fc055aa2965fe5903396a8e5158c42cf1bc
2017-05-26 13:28:48 +02:00
Satya Durga Srinivasu Prabhala 81cf5b0c4d soc: qcom: remove debugfs interface from ssr
As debugfs interface is intended to test the respective ssr, remove
from the driver to make sure it won't be available by default.

CRs-Fixed: 2025661
Change-Id: I6af9a8333c8028611f889cc2f9b0beb37ef12c9b
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
2017-04-25 03:51:55 -07:00
LuK1337 4e71469c73 Merge tag 'LA.BR.1.3.6-03510-8976.0' into HEAD
Change-Id: Ie506850703bf9550ede802c13ba5f8c2ce723fa3
2017-04-18 12:11:50 +02:00
LuK1337 fc9499e55a Import latest Samsung release
* Package version: T713XXU2BQCO

Change-Id: I293d9e7f2df458c512d59b7a06f8ca6add610c99
2017-04-18 03:43:52 +02:00
Zhen Kong 6c3d41026e qseecom: whitelist support for kernel client and listener
Add whitelist support for listener to send modified resp to TZ;
also add whitelist support for kernel client; and change the method
to check whitelist feature.

Change-Id: I0030b0008d6224cda3fdc1f80308a7e9bcfe4405
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
Signed-off-by: Mallikarjuna Reddy Amireddy <mamire@codeaurora.org>
2017-01-03 14:29:15 +05:30
Lingutla Chandrasekhar c182ffa63a soc: qcom: add support to append suffix to socinfo
Some targets may share same msm-id, but they can have
different product name.
To differentiate them, add support to append suffix to soc_id_string.

Change-Id: Id0272cc4bd776c9872680a218f445160125d6faf
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
2016-12-21 21:38:59 -08:00
Zhen Kong 63f1abfad2 qseecom: support whitelist memory for qseecom_send_modfd_cmd
qseecom_send_modfd_cmd converts ION buffer's virtual address to
scatter gather(SG) list and then sends them to TA by populating
SG list into message buffer. As the physical memory address in
SG list is used directly by TA, this allows a malicious TA to
access/corrupt arbitrary physical memory and may lead to the
process gaining kernel/root privileges. Thus, make changes to
have the QSEEComm driver passing a list of whitelist buffers
that is allowed to be mapped by TA, and the QSEE kernel, in turn,
should add checks to the register_shared_buffer syscall to make
sure the shared buffers an application is mapping falls within
one of these whitelist buffers.

CRs-fixed: 1021945
Change-Id: I776ead0030cad167afcf41ab985db7151a42d126
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2016-09-08 19:52:38 +05:30
Deepak Katragadda b43eede378 soc: qcom: ssr: Wait for smp2p ack after sending sysmon shutdown message
After sending a sysmon shutdown request to the SSCTL service on the
subsystem, wait for the service to set a shutdown_ack smp2p bit in
addition to sending the indication message back.

CRs-Fixed: 987855
Change-Id: I231607a8ade983c9a2c2c0a39d53023ced6e81fb
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
2016-03-18 18:41:51 +05:30
Zhen Kong e253be4346 qseecom: Add re-entrancy changes
QSEE OS level scm_call operations will fail if there is any blocked
TZ app due to waiting on a listener. Driver needs to first check if
no app is blocked before sending QSEE OS level scm call, if there
are any then wait until all apps are unblocked.

Change-Id: Ie7fb4a9fb78adedcb223308cd11335bf6a48296e
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2016-03-01 16:08:59 +05:30
Avaneesh Kumar Dwivedi 59f7d316a6 soc: qcom: pil-mss: Add scm call to inform TZ of modem area
Add support to make scm_calls to TZ to inform modem start
address and size so that TZ can unmap this range to avoid
speculative access.

Change-Id: I4640ddab56991522870e9879d17fe5732dc40223
Signed-off-by: Avaneesh Kumar Dwivedi <akdwived@codeaurora.org>
2016-01-07 15:29:55 +05:30
Junjie Wu d6e56a4f37 qcom: core_ctl_helper: Add wrapper for CPU hotplug
Different kernel version needs to use different kernel APIs for
hotplug. Add wrapper for CPU hotplug so that external module can be
used across different kernel releases.

Use cpu_up/cpu_down() API for CPU hotplug.

Change-Id: Ib36a875027f67b96e2d108de8b7d902978e50005
Signed-off-by: Junjie Wu <junjiew@codeaurora.org>
2015-12-04 11:39:08 -08:00
Dinesh K Garg f90dd6c0d9 qseecom: handle HW FDE key operations asynchronously
Key management operations for HW FDE that take long processing time
in secure environment, secure environment will send pending operation
response so that non-secure side can request further processing at a
later time. This would prevent non-secure components from starving for
secure processing time. This would also prevent non-secure WDT to bark.

Change-Id: I823c06b712fcdcecac30d886c6d1aa01ada56bd0
Signed-off-by: Dinesh K Garg <dineshg@codeaurora.org>
2015-10-13 00:56:32 -07:00
Deepak Katragadda 2c4cca425c soc: qcom: ssr: Wait for smp2p ack after sending sysmon shutdown message
After sending a sysmon shutdown request to the SSCTL service on the
subsystem, wait for the service to set a shutdown_ack smp2p bit in
addition to sending the indication message back.

Change-Id: I231607a8ade983c9a2c2c0a39d53023ced6e81fb
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
2015-08-23 20:54:58 -07:00
Mahesh Sivasubramanian 04c58e4455 qcom: msm-pm: Partial goods support for sleep status driver
On certains devices, some of the CPUs within the apps subsystem are not
functional and might be removed from the CPU possible map. To handle this
dynamic list of CPUs, sleep driver shouldn't make any assumptions with
regards to the logical mapping of the CPU.

Remove the assumption on how physical CPUs are mapped onto logical CPUs and
populate create a reference of sleep status driver in the corresponding
CPU phandles. When the sleep status driver is probed, it would probe
iterating the list of possble CPUs.

CRs-fixed: 756327
Change-Id: I3afe8c9afd26000ab08f0e0c2703f2ce9e15f374
Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
Signed-off-by: Murali Nalajala <mnalajal@codeaurora.org>
Signed-off-by: Srinivas Rao L <lsrao@codeaurora.org>
2015-08-11 15:05:44 +05:30
Taniya Das 4827db8134 clk: qcom: Add support for spm event pll management
SPM event will be asserted/de-asserted when SR2 PLL is disabled/enabled.
This is required so as the SPM hardware could take care of turning on/off
the PLL when APSS moves to low power mode.

Change-Id: Ic6aa18e47eb352a3582f5e278d7bd99e02bdbcfd
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2015-08-09 20:32:41 -07:00
Archana Sathyakumar ddfac78378 lpm-levels: Add L3 flag to the smc call
For L3 level collapse, the secure level OS needs a flag to clear the
vote to keep L3 active. Send this flag along with L2 flag in the smc
call.

Change-Id: I79794465ff725fb0d37c3519a37a0f8cb04ed441
Signed-off-by: Archana Sathyakumar <asathyak@codeaurora.org>
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
2015-07-27 16:48:39 +05:30
Linux Build Service Account addde89c2d Merge "soc: qcom: tracer_pkt: Add support for tracer packet" 2015-06-23 13:30:22 -07:00
Linux Build Service Account f11510ce8a Merge "clk: qcom: Support multiple safe frequency for clocks" 2015-06-20 18:58:07 -07:00
Taniya Das e753dc6232 clk: qcom: clock-pll: Add support for HF and SR PLL
Support HF/SR pll ops to initialize/enable/roundrate/setrate/disable. Also
modify SR pll enable code to initialize pll and add loop for pll locking.

Associate pll data which would need to be modified at runtime with respect
to VCO or config control.

Change-Id: I2dd42c7beb5635a78389ade777fbccae4261e1bb
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2015-06-19 23:08:35 +05:30
Karthikeyan Ramasubramanian dcddd4390d soc: qcom: tracer_pkt: Add support for tracer packet
Add support for tracer packet to profile the performance of
inter-processor communication protocols.

Change-Id: I1ad7b3e40464932637f306d7984f940e7fb740bf
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
2015-06-18 13:21:08 -07:00
Abhimanyu Kapur ece92055e4 ARM: dts: msm: Add support for MDM californium
Add initial set of device tree files and config options
required to build mdm californium.

Change-Id: Iba62d2685f720ad6d9f152e7924b26981923aaf7
Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org>
2015-06-17 11:23:44 -07:00
Linux Build Service Account 3820842663 Merge "qcom: clock-gcc-8952: Set test-control values" 2015-06-13 04:47:36 -07:00
Arun KS 4a63c4ef60 clk: qcom: clock-alpha-pll: Add test control programming
PLLs may require programming test control and config control
interfaces. Add support to program relevant registers.

Change-Id: Ib43237e59748da649f7757b97927faa7d650c8e8
Signed-off-by: Arun KS <arunks@codeaurora.org>
2015-06-11 09:12:43 +05:30
Venkatesh Yadav Abbarapu 2c6d3ebb50 ARM: dts: msm: Add support for MDMFERMIUM
Add initial set of device tree and board files to build
the mdmfermium target.

Change-Id: I9a0e90ea4e815f1fbbcd2a2ba1c5ab98f4a1c614
Signed-off-by: Venkatesh Yadav Abbarapu <vabbar@codeaurora.org>
2015-06-09 11:04:12 +05:30
Srinivas Ramana 048a4d4317 msm: socinfo: Add socinfo for msm8956
Add SOC information like Chip ID, macros and dummy
socinfo definitions for msm8956.

Change-Id: Ica7c6d8c56b439a105a68d3931ee2c5ba96f527d
Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
2015-06-07 23:15:16 +05:30
Vikram Mulukutla 3bda20b220 soc: qcom: subsystem_restart: Support minimized ramdumps
It is useful to retrieve small memory areas from a device
when performing a subsystem restart. For example, shared
memory may contain logging information that can help
triage a problem. Implementations may choose to dump such
memory sections when the enable_mini_ramdumps flag is set.

Change-Id: I217ceed0a5d1ba3130757428b5f48cba4d1203ad
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
2015-06-04 17:38:56 -07:00
Linux Build Service Account 71d8956700 Merge "soc: qcom: glink: Add notify_remote_rx_intent callback support" 2015-06-04 08:59:26 -07:00
Linux Build Service Account 8e98f6d5b5 Merge "iommu: msm: Introduce AARCH64 page table format" 2015-06-04 04:37:42 -07:00
Chintan Pandya f879574c6c iommu: msm: Introduce AARCH64 page table format
Some clients can generate 48/49 bit virtual address.
Support those clients by AARCH64 page table format.

Change-Id: Ic8d9a12e990f13ffebd6be6c81506d6bcc421f05
Signed-off-by: Chintan Pandya <cpandya@codeaurora.org>
2015-06-03 18:49:21 +05:30
Arun Kumar Neelakantam 89272719f9 soc: qcom: glink: Add notify_remote_rx_intent callback support
In some cases local clients transmit the data without GLINK_TX_REQ_INTENT
flag and fails if remote client not queued the matching rx_intent.

Add callback support to notify the local clients when remote client queue
an RX intent so that the client can track the remote intents.

CRs-Fixed: 847641
Change-Id: I649a054324ae7ed758a849345f41e3e26137f1f1
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
2015-06-03 14:20:48 +05:30
Srinivas Rao L 11f4d90145 soc: cpu_pwr_ctl: Add 8976 cpu retention ldo configure support
Add support to configure the performance cluster cpu retention
ldo voltage. This value needs to be configured when a core is
coldbooted. The core will then be able to enter retention at
the programmed retention voltage.

Change-Id: Idf46c31edfb2be7ce364070baea5550048301a14
Signed-off-by: Srinivas Rao L <lsrao@codeaurora.org>
2015-05-29 11:37:00 +05:30
Linux Build Service Account c3f4ce9f0a Merge "soc: qcom: glink_pkt: Add auto-intent queuing support" 2015-05-24 23:59:49 -07:00
Shashank Mittal 616f519e25 qcom: common_log: add support to dump VSENSE registers
Allocate memory to dump VSENSE registers at the time of crash.

Change-Id: Ibd896873bc40b723071c66ca7cf1a4bc9b38ad5e
Signed-off-by: Shashank Mittal <mittals@codeaurora.org>
2015-05-22 13:29:08 -07:00
Linux Build Service Account a786cf8c0f Merge "msm: camera: add logic for sensor compatibility issue" 2015-05-21 19:57:09 -07:00
Arun Kumar Neelakantam 26f9bd495d soc: qcom: glink_pkt: Add auto-intent queuing support
Glink_pkt driver clients have to call the new IOCTL to queue an intent
to receive the data from remote side.

To ensure compatibility with smd_pkt clients add auto-intent queuing
in the read() call when glink_pkt client fails to queue an intent.

Change-Id: Iee8fca114f47921788c19d40247a768038985daa
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
2015-05-21 14:44:12 +05:30
Wei Ding c1aa5f2974 msm: camera: add logic for sensor compatibility issue
Add logic to fix same sensor at one board compatibility
issue.

Change-Id: I6c6721e8ff890feaf2d618c8170e346367a68c28
Signed-off-by: Wei Ding <weiding@codeaurora.org>
2015-05-19 19:40:50 +08:00
Linux Build Service Account 4d85e116c7 Merge "soc: qcom: scm-mpu: Add an API to unlock the kernel text region" 2015-05-18 19:47:05 -07:00
Linux Build Service Account 9fdedde7a5 Merge "clk: qcom: clock-local2: Add get_parent for display clocks" 2015-05-14 01:57:52 -07:00
Patrick Daly 9ced33893e soc: qcom: scm-mpu: Add an API to unlock the kernel text region
The cpaccess driver writes to the kernel text section during normal
operation. Add an API to disable any protection of this region by the
scm-mpu driver.

Protection is not reenabled after cpaccess operations since this is
expected to be an uncommon usecase.

Change-Id: I83caa906b94f4a522a203c1170f1d913681fc704
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
2015-05-13 19:12:14 -07:00
Linux Build Service Account fc61163db5 Merge "ARM: dts: msm: Remove mdmferrum changes" 2015-05-12 14:01:51 -07:00
Venkatesh Yadav Abbarapu 67756de31c ARM: dts: msm: Remove mdmferrum changes
Remove the mdmferrum changes as they are not applicable
anymore.

Change-Id: Ifbe0a3a1b8e17dcf414f9412c343835cedef0f62
Signed-off-by: Venkatesh Yadav Abbarapu <quicvenkat@codeaurora.org>
2015-05-12 12:11:17 +05:30
Shashank Mittal db8c7d4df4 qcom: memory_dump: add support to dump DCC data.
Data Capture and Compare (DCC) is a DMA engine, to capture or to
perform CRC over configuration data or system memory.

Add ids for DCC registers and sram data.

Change-Id: If76ef1325b1be623626742b0f0172a1675f21d63
Signed-off-by: Shashank Mittal <mittals@codeaurora.org>
2015-05-11 18:25:17 -07:00
Pushkar Joshi bbee98c8ab clk: qcom: clock-local2: Add get_parent for display clocks
On some hardware, the display byte and pixel clocks can have multiple
parents and we can switch between them dynamically. To support this
add a new set of ops. Also implement the get_parent for these clocks
so that handoff code can dynamically set the parent for these clocks
instead of relying on the parent field to be set up explicitly when
definining the structures for those clocks. On hardware which does not
support dynamically switching parents, the old set of ops can still be
used.

Change-Id: Ia076652124df40fa5a62d0f7041b5afed121aae9
Signed-off-by: Pushkar Joshi <pushkarj@codeaurora.org>
2015-05-07 19:17:24 -07:00
Ian Maund cd50d4cdb5 Update target name references for 8976
With the official announcement of 8976, remove all references to its
internal code name, and replace them with 8976.

Change-Id: I6d507418e5259908addedf2975e391200b4e0c83
Signed-off-by: Ian Maund <imaund@codeaurora.org>
Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
2015-04-29 15:07:39 +05:30
Linux Build Service Account e4e3cb1731 Merge "clk: qcom: clock-pll: Panic if a variable rate PLL fails to lock" 2015-04-25 12:17:48 -07:00
Linux Build Service Account cf4162e5d8 Merge "soc: qcom: smem: Add TZ and SPSS processor IDs" 2015-04-24 14:50:15 -07:00
Linux Build Service Account 53c1e54743 Merge "soc: qcom: smem: Add SMEM items for SMP2P on TZ, and IPA SMEM item" 2015-04-24 14:50:15 -07:00
Linux Build Service Account 36785b35af Merge "soc: qcom: glink: modify the Signal get APIs prototype" 2015-04-24 08:20:55 -07:00
Vikram Mulukutla 435a8997a4 clk: qcom: clock-pll: Panic if a variable rate PLL fails to lock
Occasionally, variable rate PLLs may fail to achieve a lock, and the
output frequency may not match what software expects after configuring
an L value for a certain frequency. If the PLL fails to lock, that is,
the lock detection bit does not go high even after waiting for the
mandated amount of time, record additional PLL debug information in the
kernel log and then panic.

Change-Id: Ib913d7620ef9d1fc94a1c353e528f558c3117d81
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
Signed-off-by: Pushkar Joshi <pushkarj@codeaurora.org>
2015-04-23 16:21:22 -07:00