Commit graph

879,352 commits

Author SHA1 Message Date
Isaac J. Manjarres
6d728c9921 arm64: defconfig: Enable CMA optimizations for genericarmv8-64
Enable the CMA optimizations for the genericarmv8-64
configuration.

Change-Id: Ib65684f4d3c89d7a6bf9961d6538cbeb84cec638
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
2020-03-19 14:37:50 -07:00
Isaac J. Manjarres
2b35e4dcac mm/Kconfig: Relax CMA optimization dependencies
The CMA performance optimizations depend on QGKI, which
prevents them from being enabled on configurations that don't
have a notion of GKI and QGKI. Thus, remove this dependency.
This shouldn't cause any problems with the ABI surface with
respect to GKI targets as the configs still have to be enabled
explicitly anyway.

Change-Id: I1bea32ccf23e485f491dfb27422f83d0919aedd6
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
2020-03-19 14:35:27 -07:00
qctecmdr
ad8b0e3fc3 Merge "msm: kgsl: Finish up probe cleanups" 2020-03-18 19:19:21 -07:00
qctecmdr
816c0efa14 Merge "defconfig: lahaina: Enable GPU driver" 2020-03-17 19:37:11 -07:00
qctecmdr
cf314fc5c9 Merge "msm: cvp: Disable CVP_DBG traces by default" 2020-03-17 19:37:10 -07:00
qctecmdr
22de23501b Merge "wil6210: Add support for 11ad platform driver" 2020-03-17 19:37:10 -07:00
qctecmdr
5c91c43dcd Merge "net: qrtr: mhi: Set mhi driver data before registering with qrtr" 2020-03-17 19:37:10 -07:00
qctecmdr
9829d2c4b3 Merge "defconfig: Disable fastrpc driver from kernel image" 2020-03-17 19:37:09 -07:00
qctecmdr
262793ca89 Merge "msm: kgsl: Use booleans for power control features" 2020-03-17 13:33:00 -07:00
Edgar Flores
ca8a9670fa defconfig: Disable fastrpc driver from kernel image
Disable fastrpc driver from Lahaina kernel image.

Change-Id: Iee1594be32934dc93b932107f8a16062f1a1e068
Signed-off-by: Edgar Flores <edgarf@codeaurora.org>
2020-03-17 12:26:39 -07:00
qctecmdr
2fdb6c48bd Merge "msm: cvp: Reduce CVP dmabuf mapping overhead" 2020-03-17 09:20:19 -07:00
qctecmdr
93e87a288c Merge "arm64: kpti: force off kpti" 2020-03-17 09:20:18 -07:00
qctecmdr
2248785891 Merge "scsi: ufs-qcom: Add one vendor specific sysfs group" 2020-03-17 09:20:18 -07:00
qctecmdr
c160f5998e Merge "arm64: defconfig: Enable ION support on genericarmv8-64_defconfig" 2020-03-17 09:20:18 -07:00
Alexei Avshalom Lazar
5a5260fe01 wil6210: Add support for 11ad platform driver
Platform driver used to handle msm specific platform
requirement for 11ad chipset connected to msm platform.

Change-Id: I13c5b5a76bc17393e486c400bdfb90e4ef89e270
CRs-Fixed: 2143032
Signed-off-by: Alexei Avshalom Lazar <ailizaro@codeaurora.org>
[liord@codeaurora.org: SPDX license, checkpatch errors]
Signed-off-by: Lior David <liord@codeaurora.org>
2020-03-17 08:32:32 -07:00
qctecmdr
c101c53524 Merge "clk: qcom: lahaina: Add sync_state callbacks" 2020-03-17 06:50:39 -07:00
qctecmdr
9e370393b3 Merge "arm64: defconfig: Enable QTI_IOMMU_SUPPORT only on target configurations" 2020-03-17 04:27:28 -07:00
qctecmdr
f2c2ad2be1 Merge "interconnect: qcom: Fix uninitialized tcs_cmd::wait" 2020-03-17 04:27:28 -07:00
qctecmdr
8cd651ce9c Merge "usb: gadget: f_diag: Expose DLOAD pid/serial entries to configfs" 2020-03-17 04:27:27 -07:00
qctecmdr
a7d9ad8821 Merge "msm: kgsl: Enable apb clock before isdb register writes" 2020-03-17 04:27:27 -07:00
Can Guo
a0289684e3 scsi: ufs-qcom: Add one vendor specific sysfs group
Add one vendor specific sysfs group to support additional sysfs nodes,
such as err_state and power_mode.

Change-Id: Ia69909fc3838a054221191259a015067dd962008
Signed-off-by: Can Guo <cang@codeaurora.org>
2020-03-17 01:56:13 -07:00
Vinayak Menon
1edf9722d4 arm64: kpti: force off kpti
Since most of the CPUs aren't prone to meltdown,
force off the kpti feature. Enable on required
targets.

Change-Id: If78c70bcaeac2b157a901e5036190aaf9e5aabf6
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2020-03-16 23:46:49 -07:00
qctecmdr
fafcdeebed Merge "trace: Add warning threshold for irqsoff time" 2020-03-16 22:55:50 -07:00
qctecmdr
d1f345796a Merge "scsi: ufs-qcom: Configure LPM timer settings" 2020-03-16 22:55:50 -07:00
qctecmdr
f0e348558a Merge "msm: kgsl: Fix to record NR_KERNEL_MISC_RECLAIMABLE in page units" 2020-03-16 22:55:49 -07:00
George Shen
b1d298dc7a msm: cvp: Reduce CVP dmabuf mapping overhead
To reduce computation overhead in searching and matching un-used
or used CVP iommu mappings.

Change-Id: I57f2849c1fcd81d534bb55f24b51b66d3b321cb4
Signed-off-by: George Shen <sqiao@codeaurora.org>
2020-03-16 20:21:57 -07:00
qctecmdr
d3fc7ea1c3 Merge "leds: qti-flash: Add support for on_time and off_time parameters" 2020-03-16 20:03:19 -07:00
qctecmdr
b2d9f86807 Merge "haven: doorbell: Add neuron and qrtr labels" 2020-03-16 20:03:18 -07:00
qctecmdr
2c406b9ecf Merge "sched/fair: Change PELT half-life to 8ms" 2020-03-16 20:03:18 -07:00
Jordan Crouse
9cfc90b482 defconfig: lahaina: Enable GPU driver
Enable the GPU driver and the dependent QFPROM driver.

Change-Id: Ic0dedbadf13a34d778bec51151d1c9f00e29a258
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 13:08:47 -06:00
Mohammed Mirza Mandayappurath Manzoor
3c339456eb msm: kgsl: Enable apb clock before isdb register writes
KGSL must enable the apb clock before accessing QDSS register space.

Change-Id: I4fb20741c54ef665bf2652c13c4c87fd9b0b3329
Signed-off-by: Mohammed Mirza Mandayappurath Manzoor <mmandaya@codeaurora.org>
2020-03-16 12:05:56 -07:00
George Shen
7bb1a82ce9 msm: cvp: Disable CVP_DBG traces by default
It caused tracing spam in kernel log.

Change-Id: Iaddb5e95138638b6dbfe63e51eb14db80a202c9d
Signed-off-by: George Shen <sqiao@codeaurora.org>
2020-03-16 10:35:02 -07:00
Jay Jayanna
d7067f6740 net: qrtr: mhi: Set mhi driver data before registering with qrtr
The original design was to not send anything from qrtr-mhi until
a packet was received from the remote side. This would leave
enough time for the probe function to set up the driver_date.

With the new requirement to queue a hello packet (for Linux to
Linux communication), we may see the hello packet being scheduled
and sent before we can return and set the drvdata.

The changes to address the above requirement brings in a
possibility that driver_data in mhi layer is NULL sometimes.
Check device pointer for NULL in ul callback and return if
it is NULL.

Move the setting of driver data before registering it as an
endpoint with the qrtr framework.

Change-Id: Ida94d95485d2432f38e6cb0c82fa21af7bc73af3
Signed-off-by: Jay Jayanna <jayanna@codeaurora.org>
2020-03-16 10:29:32 -07:00
Jordan Crouse
0f9ebd5579 msm: kgsl: Finish up probe cleanups
Do the last bits needed to make the probes defer capable. Fix a few more
device_node reference counts and fix up the probe failure unwind paths.

Change-Id: Ic0dedbadd6f4c9b46a02e9b6ea0b145c81b50520
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 09:51:55 -06:00
Jordan Crouse
fb77ada179 msm: kgsl: Handle a defer from IOMMU
of_dma_configure() will return -EPROBE_DEFER if the IOMMU driver isn't
set up yet. Propagate that error all the way back to probe.

Change-Id: Ic0dedbad3bdda6516386f6eeff485065f83aee9b
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 09:51:55 -06:00
Jordan Crouse
53aa77773b msm: kgsl: Cleanup the adreno SOC HW probe
The code to probe the sometimes used HW revision only needs to live in
adreno.c and we don't need to store a persistent member in adreno_device.
Localize all the code and pass the HW revision into the functions that
need it.

Change-Id: Ic0dedbaddafe258f6b6510f68867cff636963315
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 09:51:54 -06:00
Jordan Crouse
565c37064c msm: kgsl: Move context aware scaling to the scaling code
Context aware (CA) scaling is excluisvely a pwrscale concept so move all
the probing there.  This is mostly just a cut-and-paste except that the
speed_bin needs to move from Adreno to the kgsl_device so it can be
accessed from the pwrscale code.

Change-Id: Ic0dedbad54983ecf8b59b9a62991be6b4f26b242
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 09:51:53 -06:00
Jordan Crouse
9f1c0af630 msm: kgsl: Use the GPU platform device when it is appropriate
Throughout the history of the driver the GPU platform device and the
KGSL pseudo device have been used somewhat interchangeably which is
bad. The platform device should be used whenever dealing with hardware
or kernel resources so that we can get proper cleanup during probe.

While it is still okay to use the pseudo device for log messages,
using the platform device for log messages having to do with
resources is better since you can make a more direct correlation
between the log message and the device tree entry.

Change-Id: Ic0dedbad1fe2fd4d75ff738fc3942c7b20125683
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 09:51:53 -06:00
Jordan Crouse
ed253b59c0 msm: kgsl: Use booleans for power control features
Currently we use a bitmask for the power control features (SPTP, ACD, LM,
etc).  Move to individual booleans for each feature instead. Booleans
are less unweidly to use and require less if () statements.

Additionally if we properly use the Adreno feature flags when setting
and/or modifying the booleans we can get rid of the feature flag checks in
the rest of the code and use the control booleans as they are intended.

And finally, move some of the target specific control features to the
target specific code. This ensures that the target specific code can
control the feature and the other targets don't accidentally specify
the wrong state through sysfs. For example, if SPTP power collapse is
only available for a5xx then the sysfs file should only ever return
false for the other targets.

Change-Id: Ic0dedbad1828ae9163a1a1357828156cb3281914
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 09:51:52 -06:00
Jordan Crouse
8152ccc95e msm: kgsl: Fixup the GMU probe
Clean up the GMU probe to use standard functions and proper reference to
make it more defer tolerant.

Change-Id: Ic0dedbad7c561e24c07053ea3b19ef62e34621cb
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 09:51:52 -06:00
Jordan Crouse
76f54bf67f msm: kgsl: Fixup the RGMU probe
Fix the RGMU probe to use standard helper functions and do proper
reference counting.

Change-Id: Ic0dedbadf5af14338de83cd9041674cc6f1ea304
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 09:51:51 -06:00
Jordan Crouse
05fb678662 msm: kgsl: Move hw_isidle to target specific code
Currently, there is a custom hw_isidle function defined for a6xx but the
function pointer is removed in a6xx_start for non GMU/RGMU a6xx targets
which has the effect of falling back to the generic adreno_hw_isidle
function which confused at least two of us before we figured out what
was happening.

Instead of having a generic adreno_hw_isidle function except for a6xx, add
a hw_isidle function hook for all targets and do the GMU check in the
a6xx specific function. This also has the advantage of moving a a540
specific hack into the a5xx code and removes one of two usages of the
gpucore specific busy mask and the other is in soft fault detect.
Arguably we should get rid that too but for now we can just hardcode
the mask in there and remove the busy mask from the gpucore struct.

And finally it looks like adreno_isidle isn't used as a function hook,
so remove it from the device function tables and mark it static.

Change-Id: Ic0dedbad47fa5dee0e5d903a8f9dd9bf7230b759
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 09:51:51 -06:00
Jordan Crouse
c744ab5d9c msm: kgsl: Clean up the reset and soft reset paths
a6xx added a new function hook and path for doing a GPU reset that fell
back to the default reset path for a610 but a610 purposely skipped
soft reset and the hard reset path is very similar to that used by
GMU/RGMU enabled devices except for one little bit.

Furthermore, if a610 skipped soft reset then there are no a6xx targets
that do soft reset so there is no reason to have an a6xx specific
soft reset path. And further to that, there isn't any reason to have
any a6xx specific functions (like oob) in the generic soft reset path.

Make the a6xx reset support all a6xx targets, remove unused infrastructure
from the rest of the generic code and cleanup the generic functions
to be a little bit easier to understand.

Change-Id: Ic0dedbadd3570fe148a464ff0dc647d91099ae09
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-03-16 09:51:50 -06:00
Jishnu Prakash
108427ae28 leds: qpnp: Add snapshot of vibrator LDO driver
This is a snapshot of the vibrator LDO driver as of msm-4.19
'commit c527cd5c987ac (Merge "mhi: cntrl: qcom: allow printing
large strings to IPC logs")' with the following modifications:
	- Replace snprintf with scnprintf.

Change-Id: Id58fbcc33607c309366104fe72282c09c86a3227
Signed-off-by: Jishnu Prakash <jprakash@codeaurora.org>
2020-03-15 08:19:03 -07:00
qctecmdr
058b861752 Merge "usb: dwc3: gadget: update the return value of pullup function" 2020-03-15 03:11:03 -07:00
qctecmdr
baa8778afd Merge "cnss_nl: Add new attributes for cld80211 attr list" 2020-03-15 03:11:03 -07:00
qctecmdr
d9918c71df Merge "NFC: Add timeout when waiting for responses in probe" 2020-03-15 03:11:03 -07:00
qctecmdr
99a3ac3183 Merge "msm: ipa3: Updating SRAM locations for lito" 2020-03-15 03:11:02 -07:00
qctecmdr
f8c0f9b08b Merge "msm: kgsl: Move event groups to the KGSL device" 2020-03-15 00:41:45 -07:00
qctecmdr
2da77626ea Merge "platform: msm: Add snapshot of msm_11ad driver" 2020-03-15 00:41:45 -07:00