Commit graph

884,325 commits

Author SHA1 Message Date
qctecmdr
6a326ce1dc Merge "msm: adsprpc: Check size with length passed by client" 2020-06-08 04:30:43 -07:00
qctecmdr
bf2d916a9f Merge "soc: qcom: smd-rpm: Support new clocks resources" 2020-06-08 04:30:43 -07:00
qctecmdr
d2340decfd Merge "msm: kgsl: Make GPU core initialization consistent across the list" 2020-06-08 04:30:42 -07:00
qctecmdr
240ed0260c Merge "power: supply: qcom: Add snapshot of SMB5 charger driver" 2020-06-08 04:30:42 -07:00
Naveen Yadav
b3cf25f2a8 interconnect: qcom: Fix the link error on 32bit architecture
Update the bcm_div function to use do_div() to prevent compiler
from generating undefined reference to `__aeabi_uldivmod' warnings
on 32bit architecture.

Change-Id: Iba37b5f286e76b0ce903b6e0e0344e9659b0004f
Signed-off-by: Naveen Yadav <[email protected]>
2020-06-08 16:52:23 +05:30
Preeti Nagar
55c09c9b96 RTIC: Move selinux_state to a separate 4k
We need to relocate selinux_state to a separate 4k page
to enable EL2 Hypervisor to monitor changes to this
variable using ARM stage 2 MMU. We will avoid getting
page faults from un-related data as the MMU granularity
is configured to 4k.

Change-Id: I7d0e5c9eae0a2a65ca9db73e85283e164e20c11c
Signed-off-by: Preeti Nagar <[email protected]>
2020-06-08 15:49:07 +05:30
Jishnu Prakash
58bfbabe9e power: supply: qcom: Add snapshot of SMB5 charger driver
Add snapshot of qpnp-smb5 charger driver from msm-4.19
as of commit 1bb7bbeb1d09("sched: Fix compilation errors
with !WALT").

Change-Id: Ie7c99bea8887dcb97244e43e7984e2a82d1e5526
Signed-off-by: Jishnu Prakash <[email protected]>
2020-06-08 02:17:27 -07:00
Gaurav Kohli
9f397e5f90 defconfig: Update initial defconfig fragments for Holi
Update initial defconfig fragments, such as holi_GKI.config,
holi_QGKI.config, and holi_debug.config, for the holi platform.

Change-Id: I20640db3169a4316b66ef0b8f34856c83020ae60
Signed-off-by: Gaurav Kohli <[email protected]>
Signed-off-by: Yogesh Lal <[email protected]>
2020-06-08 13:14:35 +05:30
Fenglin Wu
327de86822 input: qcom-hv-haptics: update drive waveform data format
Use 2's complement data format for driving pattern waveform because
the pattern/FIFO samples used in the driver are all having unsigned
data type.

Change-Id: Ib0f7c1c7fe272068177237821debbd3cc1ad4ec8
Signed-off-by: Fenglin Wu <[email protected]>
2020-06-08 15:10:57 +08:00
Fenglin Wu
e3ff6ae4a0 input: qcom-hv-haptics: detect 5V variant and update gain setting
PM8350B has a variant which only supports haptics with Vmax up to 5V.
Detect this variant and update Vmax settings accordingly to make sure
the gain setting change can be correctly reflected.

Change-Id: I916fba21d8a441b9e95edeef5af715d451ba70cf
Signed-off-by: Fenglin Wu <[email protected]>
2020-06-08 15:02:27 +08:00
qctecmdr
85a774ce52 Merge "aarch64: ABI: Update the QCOM whitelist" 2020-06-07 23:35:40 -07:00
qctecmdr
323d9afcfe Merge "soc: qcom: mem-buf: Align allocation sizes to MHP subsection size" 2020-06-07 23:35:39 -07:00
Mohammed Nayeem Ur Rahman
ad1583f391 msm: adsprpc: Check size with length passed by client
Check whether size of fd is greater than or equal to
length passed by client. If its not checked here, client
might access unmapped address on dsp.

Change-Id: I4e176f32b0f263e2f7bf648e03b4ca904479527b
Acked-by: Deepika Singh <[email protected]>
Signed-off-by: Mohammed Nayeem Ur Rahman <[email protected]>
2020-06-07 23:07:32 -07:00
Shyam Kumar Thella
3be2db0032 power: supply: Add snapshot of QPNP QG driver and its dependencies
Add snapshot of the qpnp-qg driver as of msm-4.19
'commit 7bbb67403d95 ("Merge: msm_geni_serial: Correct the DMA RX
interrupt logic")'.

Change-Id: If8df8bc75705676006be7172c20469baa1c1dae6
Signed-off-by: Shyam Kumar Thella <[email protected]>
2020-06-08 11:26:57 +05:30
Suren Baghdasaryan
e89b2b7f5b ANDROID: GKI: mm: add struct vm_fault fields for SPECULATIVE_PAGE_FAULTS
Two new fields in the struct vm_fault can't easily be excluded using
CONFIG_SPECULATIVE_PAGE_FAULTS. Add them as padding to reduce the
ABI diff between vendors which use SPECULATIVE_PAGE_FAULTS and ACK. This
allows vendors to pick the SPECULATIVE_PAGE_FAULTS feature and still be
ABI compatible with ACK.

Bug: 153715905
Test: build
Signed-off-by: Laurent Dufour <[email protected]>
Signed-off-by: Vinayak Menon <[email protected]>
Signed-off-by: Charan Teja Reddy <[email protected]>
(cherry picked from commit 47e3eb155848872a13ab6ef73a4d0eecac36ce66)
[surenb: kept only struct vm_fault changes and dropped the rest]
Signed-off-by: Suren Baghdasaryan <[email protected]>
Change-Id: I08dbe38f37fa3e8a0f96f71cb6b2dd8737221da5
Git-commit: a1db93d3a956eae02646e3269f5bb6f3c6fdc7c9
Git-Repo: https://android.googlesource.com/kernel/common/
Signed-off-by: Vinayak Menon <[email protected]>
Signed-off-by: Mukesh Ojha <[email protected]>
2020-06-08 10:46:23 +05:30
Isaac J. Manjarres
f400169d69 soc: qcom: mem-offline: Restore page table mappings properly in online path
On newer kernels, a feature was added to adjust the linear alias
mappings of pages mapped within the vmalloc space such that the
mappings are consistent with respect to each other (i.e. if the
memory is mapped as R/O in the vmalloc space, then the linear
mapping's permission attributes should also reflect a R/O mapping).
This is known as the rodata full feature.

This sort of protection is not feasible with block mappings, as block
mappings do not allow access control at a page granule, so when this
feature is enabled, or debug pagealloc is active, the kernel will not
use block mappings.

The logic in the memory offlining driver is not aware of the rodata_full
feature and when the memory is being onlined after being offlined,
it blindly assumes that if debug pagealloc is disabled, it can restore
the block mappings for the memory that is being onlined. This leads to
inconsistencies, as the memory is actually mapped without block
mappings, which ultimately results in the page table mapping not being
restored from the time at which the memory was offlined.

Thus, when onlining memory online the memory without block mappings if
the rodata full feature is enabled and debug page alloc is disabled.
Otherwise, restore the mappings using block mappings.

Change-Id: I56a3d3754deb62e0a894a14b06eaab522e6f0a05
Signed-off-by: Isaac J. Manjarres <[email protected]>
2020-06-07 20:13:28 -07:00
Edgar Flores
37fd13294c msm: adsprpc: ignoring error messages for duplicate RPC respond packets
Ignoring duplicate packets in high concurrency scenarios when using
early_wake feature. This will avoid system restart since duplicate
packets are causing many error messages to be send to kernel logs.

Change-Id: I214d415c6df016268459bb5dad33e73d20dac925
Signed-off-by: Edgar Flores <[email protected]>
2020-06-07 19:42:15 -07:00
qctecmdr
cb9b03954c Merge "usb: dwc3: debugfs: Add LPM check for ep_info_register" 2020-06-07 19:33:15 -07:00
qctecmdr
f23a376aa5 Merge "soc: qcom: qti_battery_debug: Add NULL check" 2020-06-07 19:33:15 -07:00
qctecmdr
e2e7b603cc Merge "msm: cvp: poll on cvp lpi status during power down" 2020-06-07 19:33:14 -07:00
qctecmdr
c7786668e6 Merge "arm64: defconfig: change VA bits to 39 from 48" 2020-06-07 19:33:14 -07:00
qctecmdr
94e4bc29fa Merge "defconfig: lahaina: Enable AMOLED ECM driver" 2020-06-07 19:33:14 -07:00
qctecmdr
6d688f0472 Merge "haven: irq: Support lending from other domains" 2020-06-07 19:33:14 -07:00
qctecmdr
abc354e684 Merge "leds: qti-flash: Do not enable flash without the timeout" 2020-06-07 19:33:13 -07:00
qctecmdr
7505c36e78 Merge "cpuidle: lpm_levels: Wakeup biased cpu" 2020-06-07 19:33:13 -07:00
Taniya Das
fa45c0de3a soc: qcom: smd-rpm: Support new clocks resources
Add the clock resource ids required to vote from the smd rpm clock
driver.

Change-Id: Ic224d83ea2aacabd26450498b626ebfc687aad04
Signed-off-by: Taniya Das <[email protected]>
2020-06-07 16:36:51 +05:30
Taniya Das
54d68c324d dt-bindings: clock: Update the SMD-RPM clock ID
Add and update new clock IDs for SMD rpm clocks.

Change-Id: I46b711ef26fb3995372009a917f6252d4ec87e98
Signed-off-by: Taniya Das <[email protected]>
2020-06-07 16:36:45 +05:30
Rajesh Kemisetti
67e92d19e3 msm: kgsl: Make GPU core initialization consistent across the list
Add missing base reference for GPUs to make them consistent
across the list.

Change-Id: Iaaf9ce83fc21d18f5aea573cabe4c99b1454fc76
Signed-off-by: Rajesh Kemisetti <[email protected]>
Signed-off-by: Deepak Kumar <[email protected]>
2020-06-07 11:47:02 +05:30
Raghavendra Rao Ananta
6b2f5048ba aarch64: ABI: Update the QCOM whitelist
Update the QCOM whitelist file with additional symbols and
regenerate the snapshot accordingly.

Change-Id: I09c9c91d9d0d1c5bafcb54bd4893f7554c4b8e49
Signed-off-by: Raghavendra Rao Ananta <[email protected]>
2020-06-06 07:57:13 -07:00
Prakruthi Deepak Heragu
21b3dfffb4 tracing: Remove unnecessary DEBUG_FS dependency
As of commit <a5f1397e4b> ("Revert "BACKPORT: tracing: Remove
unnecessary DEBUG_FS dependency""), DEBUG_FS was selected by TRACING.
Remove DEBUG_FS dependency in Tracing kconfig. CONFIG_DEBUG_FS will now
be enabled in QGKI config. Also update the whitelist and abi snapshot.

Change-Id: I8c9e9fb6b97173d6e62f6090712642f18d842888
Signed-off-by: Prakruthi Deepak Heragu <[email protected]>
2020-06-05 19:52:25 -07:00
Jack Pham
090d777fe3 usb: dwc3: debugfs: Add LPM check for ep_info_register
Prevent unclocked access if this debugfs parameter is
attempted to be read when USB controller is powered off.

Change-Id: I5a563ea75807d95f0d6d6c5b037db48681d89625
Signed-off-by: Jack Pham <[email protected]>
2020-06-05 18:28:56 -07:00
Chris Lew
5080da6767 net: qrtr: Handle error from skb_put_padto
skb_put_padto() will free the skb if it fails to add the requested
padding to the skb. Drop the packet if we are unable to allocate a new
skb with the requested padding.

Change-Id: I5503c99679c7e6ecf767d3f632d72da5315988f1
Signed-off-by: Chris Lew <[email protected]>
2020-06-05 18:02:13 -07:00
Anirudh Raghavendra
d71700364d msm:adsprpc: Fix 32 bit error in capability API
Fixed 32 bit error in capability API which was causing a
failure in async tests. Also fixed returned errno value.

Change-Id: I7aa5514bd9e755c512c371645a2b927943aca943
Signed-off-by: Anirudh Raghavendra <[email protected]>
2020-06-05 16:48:26 -07:00
Guru Das Srinagesh
1b68d5edc0 soc: qcom: qti_battery_debug: Add NULL check
Ensure that valid memory is allocated for the array of all votables
before an attempt is made to populate it.

Change-Id: I9a0c3e35e345a88560e39d47484348b6c476628d
Signed-off-by: Guru Das Srinagesh <[email protected]>
2020-06-05 15:19:43 -07:00
Patrick Daly
58e71e6912 iommu: arm-smmu: Add support for new attributes
Increase client control of iommu fault handling by allowing
separate configuration of the HUPCF and CFCFG bits.

Change-Id: Ifc6071775f171ecfe60a9f0824491536b3295ec4
Signed-off-by: Patrick Daly <[email protected]>
Signed-off-by: Isaac J. Manjarres <[email protected]>
2020-06-05 15:19:42 -07:00
Isaac J. Manjarres
6476e65d66 soc: qcom: mem-buf: Fix error handling when releasing memory
When releasing memory, notify the owner of the memory that it
can be reclaimed only if the recipient VM has successfully
released the memory. There is also no reason to continue
to hold onto the mem-buf descriptor memory if a failure
occurs when relinquishing the memory, so free those structures
as well, independent of the result of the relinquish operation.
While we're here, touch up some of the error logging in the
error paths as well.

Change-Id: I29bb1774507fd75f206c0537b6007182b4d6cb48
Signed-off-by: Isaac J. Manjarres <[email protected]>
2020-06-05 14:54:24 -07:00
Raghavendra Rao Ananta
beb519f70a haven: dbl: Fix use-after-free in tx/rx unregister
The hh_dbl_tx_unregister() and hh_dbl_rx_unregister() functions
tries to dereference client_desc in pr_debug(), which would
have already been freed if the tx/rx's counterpart was unregistered.
Hence, move the pr_debug() statements right before the section
where kfree() is called on client_desc to avoid use-after-free.

Change-Id: I183b0a3df0665ab90a85e0907b39641cd19f4923
Signed-off-by: Raghavendra Rao Ananta <[email protected]>
2020-06-05 14:40:44 -07:00
Isaac J. Manjarres
dbe59ab3f8 soc: qcom: mem-buf: Do not free memory if hyp_assign() fails
The state of memory--with respect to access control--is unknown
when a hyp_assign() call fails because the underlying SCM call
fails. In these cases, it is not safe to access the memory, so
we should not free it back to the system.

Change-Id: I992225cdd5f26fbba60d2966d051d026326cd593
Signed-off-by: Isaac J. Manjarres <[email protected]>
2020-06-05 14:33:21 -07:00
Isaac J. Manjarres
8340c9f96e soc: qcom: mem-buf: Align allocation sizes to MHP subsection size
The allocation code hot-adds the memory from another VM through
the memory hotplug code to create the S1 CPU MMU mappings. The memory
hotplug code can only add memory at a subsection granule, meaning
that all memory requests must be subsection size aligned. Thus,
enforce all allocation requests to be subsection size aligned.

Change-Id: Ia4d3294e36265f0bd956fa42670f2ac8d6974908
Signed-off-by: Isaac J. Manjarres <[email protected]>
2020-06-05 14:32:52 -07:00
Subbaraman Narayanamurthy
4c9179cd12 defconfig: lahaina: Enable AMOLED ECM driver
AMOLED ECM (Embedded Current Measurement) driver helps measure
the display current for OLED panels. Enable it.

Change-Id: I94d729dbfa8b46792afd424333a0bf9c106ffef1
Signed-off-by: Subbaraman Narayanamurthy <[email protected]>
2020-06-05 13:55:16 -07:00
Elliot Berman
f7c7a20027 haven: irq: Support lending from other domains
Client drivers may lend IRQs with knowledge of only their GPIO interrupt
number, which would not directly have an underlying GIC hwirq. Thus,
tweak RM's understanding of IRQs to be aware of IRQ domains. Now, the
irq backed by GPIO will be translated to GIC domain.

Change-Id: I191d9e072b14f4501f5bbeb5d5263f50e0eef8c1
Signed-off-by: Elliot Berman <[email protected]>
2020-06-05 13:48:40 -07:00
Jeevan Shriram
cab5940348 include: linux: remove unused APIs when CORESIGHT is disabled
Remove unused apis when the config CORESIGHT is disabled to avoid
compilation error.

Change-Id: I1a05d26d8f07fc70c3f061c5d5debe1f4fb7edaa
Signed-off-by: Jeevan Shriram <[email protected]>
2020-06-05 12:15:31 -07:00
Srinivas Rao L
2c212faa23 cpuidle: lpm_levels: Wakeup biased cpu
If a biased cpu entered shallowest LPM state and
there are no wakeups for it, can stay in the shallowest
state for long.

Program wakeup for the biased CPU to wakeup after the
expected bias window is completed, so that the cpu can
enter a deeper state.

Change-Id: Ic92c779f0f8b1fa85aa8b3afa68d075f8d5d7dd6
Signed-off-by: Srinivas Rao L <[email protected]>
2020-06-05 23:57:27 +05:30
qctecmdr
28cf0d0908 Merge "kernel: sound: update codec options with block size" 2020-06-05 08:56:45 -07:00
qctecmdr
ca65ecc5c8 Merge "config: Enable TOS and DSCP target support" 2020-06-05 08:56:44 -07:00
qctecmdr
51baf5ad2c Merge "clk: qcom: clk-rcg2: Add support to print rcg's CMD_DFSR register" 2020-06-05 05:06:33 -07:00
qctecmdr
86bb23c4e5 Merge "dwc3: gadget: Don't block doorbell before halting USB controller" 2020-06-05 05:06:32 -07:00
qctecmdr
a455d70f08 Merge "dwc3-msm: Move override usb speed functionality outside edev check" 2020-06-05 05:06:32 -07:00
qctecmdr
65fbcfac6f Merge "usb: dwc3: gsi: Disable GSI wrapper on clearing run_stop" 2020-06-05 05:06:28 -07:00
qctecmdr
5313030298 Merge "sched: Compile cpu_isolated_mask in SCHED_WALT only" 2020-06-05 05:06:27 -07:00