Rscc registers are only needed for gmu based targets. So move the
probe and snapshot to a6xx gmu probe and snapshot respectively.
Also, fix the rscc offset for targets which have rscc registers
part of the gmu register space.
Change-Id: I3f73e3c99838d01676f81df6bc7bd7ab3334a0fe
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Assign the gmu specific snapshot function to gpudev->snapshot instead
of creating a gmu_core_snapshot. This function will send an nmi if we
hit a gmu fault. Then, it will capture gmu snapshot followed by the generic
a6xx_snapshot as against a6xx snapshot calling the gmu snapshot.
Do the same for rgmu. This helps get rid of gmu_core_snapshot and
gmu_core_dev_snapshot() functions.
Change-Id: I0f72a930633557260b59a76f0161bcde8c5a6da2
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Remove the ones that we don't need anymore. Also, remove
KGSL_STATE_RESET as it was only needed with gmu recovery, which
now is completely target specific. Also, remove unused adreno gmu
register defines.
Change-Id: I20b8bc04714e30cd7418d81e8634e4c5079fa175
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Add gmu_fault member to kgsl device structure and remove it
from snapshot, a6xx gmu and rgmu structures. This helps in
removing snapshot function from the gmu core ops in the next
patch.
Change-Id: I5f2aba879ebf0330ef2c73d1d2fa4a2032bb6c9b
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
This helps in ultimately getting rid of gmu_core_snapshot.
Change-Id: Ie72f851ddec6ddb70d3dfa763b6c638c2f0f8775
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
On gmu targets, we may fail the boot bandwidth hfi, so
return the error all the way up.
Change-Id: I059fb18090ae6cb33af3c0b53f2a8fd5875b7e52
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Remove msm_pinctrl-* symbols from the abi list.
Bug: 158125476
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
[jstultz: Simplified to just removing the pinctrl symbols]
Signed-off-by: John Stultz <john.stultz@linaro.org>
Change-Id: I13a1d66c63b9230333fb7d96f378bf98af4a02b6
PINCTRL_MSM has been disabled in the GKI, as
patches to enable it as a module were added.
Thus, we need to re-add the PINCTRL_MSM=m to
the db845c_gki.fragment to keep things working.
(An ABI list update will also be needed)
Bug: 158125476
Signed-off-by: John Stultz <john.stultz@linaro.org>
Change-Id: I52c3dcfed6abf0d313eae764b05bf80faea8b379
PINCTRL_MSM driver can be enabled as module, so remove
PINCTRL_MSM from hidden configs.
Bug: 158125476
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
Signed-off-by: John Stultz <john.stultz@linaro.org>
Change-Id: I11c5f0265e0068a0d21711344b9a44e1b41266e1
Tweaks to allow pinctrl-msm code to be loadable as a module.
This is needed in order to support having the qcom-scm driver,
which pinctrl-msm calls into, configured as a module.
Signed-off-by: John Stultz <john.stultz@linaro.org>
Bug: 153049053
Bug: 158125476
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
Signed-off-by: John Stultz <john.stultz@linaro.org>
Change-Id: Ie5dac6955af029f0d57ad0bbcad2e235f8d5a52c
This allows us to define target specific clock and bus scaling
functions. Also, get rid of the dcvs_set function pointer
from gmu core ops.
Change-Id: I137ea0071958bfdd73a266d734e278703f0dc722
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Add IPA framework support for the following ipa clients:
ipa_wdi3
ipa_gsb
ipa_uc_offload
ipa_mhi
ipa_wigig
this comes as an addition to ipa_usb support.
Add all remaining IPA core driver API functions.
remove internal functions from ipa.h header file.
Change-Id: I03ac94c351649c7c59a3894e6e18bb504d488af9
Signed-off-by: Amir Levy <alevy@codeaurora.org>
TX FSM reset command generates TX_RESET_DONE & TX_DMA_DONE interrupt bits.
Upon receiving TX_DMA_DONE we initiate new TX transfer for the pending
bytes present in tty uart circular buffer. That leaves TX sequencer active
after reset sequence. That can result into all kinds of SMMU crash where
client initiates new TX DMA transfer without knowing that we have already
a transfer queued. This is unexpected behaviour because we expect TX
sequencer and DMA engine to go IDLE after reset.
To fix above scenario, don't handle TX_DMA_DONE upon reciving
TX_RESET_DONE.
Also, add IPC logs to get_mctrl function to get the IOS status.
Change-Id: Ib76750b5e2c6ec5bf993c341c258791e471672d2
Signed-off-by: Akash Asthana <akashast@codeaurora.org>
Some customers are using UART node in UFFI for console and using
the same node for HSUART in kernel but not as console. In this
scenario there is a possibility for null pointer access
with handle_rx while trying to stop secondary sequencer.
This change will move handle_rx initialization from port_startup to
probe function. This will help to avoid null pointer access issues.
Change-Id: Ibda592b375d14ba0c23c4b99223006b1fa53c211
Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
Signed-off-by: Akash Asthana <akashast@codeaurora.org>
Change the data type of count in kgsl_alloc_secure_pages to
correctly handle the errors from kgsl_pool_alloc_pages.
Change-Id: Ib24c351304ab864d5884be8f8bddc7f74a487031
Signed-off-by: Harshitha Sai Neelati <hsaine@codeaurora.org>
Add snapshot of the SMB1398 driver as of msm-4.19
'commit 94b7d70cfe4f7 ("power: qpnp-smb5: Do not set BC1P2_START_ON_CC
on DAM")'.
Change-Id: I70f066f8b330630ad2777bb5c9a7ecc8dbd8b9ee
Signed-off-by: Jishnu Prakash <jprakash@codeaurora.org>
preempt/irq disable events tracks and prints 4 callers (3 actual callers
and current trace event caller), who disables irqs and preemption for
longer duration. It may not be sufficient for all scenarios, so extend
these events to track 5 callers and exclude current trace event caller.
Change-Id: I464dd738a78d3a89fea62fcf4aaee9897bb03c37
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
Add Trusted touch support to lahaina MTP
Touchscreen driver. This feature enables driver to
operate in trusted touch mode in trusted virtual machine(TVM).
The primary virtual machine(PVM) lends resources such
as IO memory and touch irq to TVM prior to trusted touch
is initiated and reclaims those resources back after trusted
touch usecase finishes.The resource requirements of TVM
such as clock, regulators etc are taken care by PVM.
Change-Id: I584fa3c96796b8a34f1948847e83aac7ce913d94
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Current code doesn't have any limit on the number of invocations
to DSP. In case of Async RPC pending invocations could be large
enough to exhaust the context table. Limit number of pending
invocations to DSP per process.
Change-Id: I2ae1cbeb90381de6f00f05560aa3a71118db0cf6
Signed-off-by: Himateja Reddy <hmreddy@codeaurora.org>
Upstream commit aa8b37baac ("FROMLIST: sched/fair: Use wake_q
length as a hint for wake_wide") that is being carried in msm-5.4
kernel caused CRC checks failures when GKI boot image is used for
verification as the commit adds extra argument to select_task_rq().
Fix this issue by wrapping extra argument under CONFIG_SCHED_WALT.
Change-Id: Ie41a36a334efbcd2030f7c3caee31883ee84718e
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
Leaf changes summary: 1 artifact changed
Changed leaf types summary: 1 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable
'struct vm_fault at mm.h:418:1' changed:
type size changed from 832 to 960 (in bits)
2 data member insertions:
'unsigned long int vm_fault::vma_flags', at offset 832 (in bits) at mm.h:454:1
'pgprot_t vm_fault::vma_page_prot', at offset 896 (in bits) at mm.h:455:1
2751 impacted interfaces
Bug: 153715905
Test: build
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: Id2ba5e98a32bf00750fbbdd8f2dac2c67a6060fb
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 <ldufour@linux.vnet.ibm.com>
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
Signed-off-by: Charan Teja Reddy <charante@codeaurora.org>
(cherry picked from commit 47e3eb155848872a13ab6ef73a4d0eecac36ce66)
[surenb: kept only struct vm_fault changes and dropped the rest]
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I08dbe38f37fa3e8a0f96f71cb6b2dd8737221da5
Log packets processed by ns using ipc logging framework.
Change-Id: I08e9b8551efb4a58cf899835cfac25c1952bd4b8
Signed-off-by: Jay Jayanna <jayanna@codeaurora.org>
When del client and bye command packets are sent out, if there
is an error in sending, continue with the loop to send to the
rest of the clients. The current implementation bails out when
the send fails. This is causing dropping of these packets to
the rest of the clients.
Change-Id: If9111216061e64ba1777590edba128b011625250
Signed-off-by: Jay Jayanna <jayanna@codeaurora.org>
Current code allocates new buffer during invoke, if no free buffer
found in cached buffer list. During invoke return new buffer is
added to the cached buffer list. In Async RPC as many invocations
come in short duration, there is a chance of buffers piling up in
cached buffer list. Limit the number of buffers cached under
cached buffer list to MAX_CACHED_BUFS.
Change-Id: If62406f35397843986ae033ab2cb027ed2356fd1
Signed-off-by: Himateja Reddy <hmreddy@codeaurora.org>
There could be a potential race between these two paths below,
leading to use-after-free when accessing bio->bi_crypt_context.
f2fs_write_cache_pages
->f2fs_do_write_data_page on page#1
->f2fs_inplace_write_data
->f2fs_merge_page_bio
->add_bio_entry
->f2fs_do_write_data_page on page#2
->f2fs_inplace_write_data
->f2fs_merge_page_bio
->f2fs_crypt_mergeable_bio
->fscrypt_mergeable_bio
f2fs_write_begin on page#1
->f2fs_wait_on_page_writeback
->f2fs_submit_merged_ipu_write
->__submit_bio
The bio gets completed, calling
bio_endio
->bio_uninit
->bio_crypt_free_ctx
->use-after-free issue
Fix this by moving f2fs_crypt_mergeable_bio() check within
add_ipu_page() so that it's done under bio_list_lock to prevent
the above race.
Bug: 137270441
Link: https://lore.kernel.org/linux-f2fs-devel/1592193588-21701-1-git-send-email-stummala@codeaurora.org/
Fixes: fb710731b6 ("f2fs: add inline encryption support")
Signed-off-by: Sahitya Tummala <stummala@codeaurora.org>
Signed-off-by: Satya Tangirala <satyat@google.com>
Change-Id: I1bd2cfa430423ba2a8d7c1da505322ded097cd9e
Bug: 156527199
Test: GKI boots, and incrementalfs.ko can be loaded
Signed-off-by: Paul Lawrence <paullawrence@google.com>
Change-Id: I23ce9e34fa25ae596298b4c03a7b36dd71adba68
Added entries are bus_speed_mode, clk_status and
err_count.
Change-Id: I459c75048d737651d977f5a5c6aa5dd84553156c
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
Compress the kernel with lz4 instead of gzip. On x86 this must be
controlled explicitly by kbuild, as decompressor code is prepended
to the compressed kernel artifact.
On arm64 this option is not needed as "make Image.lz4" can be used
instead, or the Image can be compressed in a separate step.
Bug: 150391496
Change-Id: I2d0ce7f937f2a952b4310f53c8b03dc8d721b050
Signed-off-by: Alistair Delva <adelva@google.com>
Use 'lz4' instead of 'lz4c' and increase the compression level. This
also optimizes for decompression speed at this higher level.
Bug: 159285792
Test: launch_cvd -kernel_path bzImage
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: I9604cc7d1f3600dec27ceb460f7c29d977a919b1
When adreno_reset fails, BUG_ON gets triggered to collect ram dump.
Do not clear dispatcher fault bits in such case to get correct fault
information from ram dump. Clear dispatcher fault when adreno_reset
returns success.
Change-Id: I6f54d48201d5e4ea5e3358b18d2f09ec7b285624
Signed-off-by: Pankaj Gupta <gpankaj@codeaurora.org>
DEPMOD=depmod overwrites the default DEPMOD=/sbin/depmod and uses the
depmod version from PATH (coming from the hermetic toolchain).
Bug: 130657633
Signed-off-by: Matthias Maennich <maennich@google.com>
Change-Id: I73eefaa5508298bc61e9e586f981c5ddabed7656
(cherry picked from commit 82ce726a3f8d53533203189a0f2a5fa20ae4eabd)