This reverts commit fe2731211e.
By default the commit muxes the pin to a GPIO upon a request_irq()
call from the client driver. This is incorrect as the client driver
could have muxed the pin already for a different purpose. Hence,
revert this default behavior to not enforce this on the clients.
Change-Id: Ib2500f57cf7e49a7bffd3309801e42166b748db9
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
Instead of flushing whole buffer use partial cache maintenance apis
to flush only for length user passed. Introducing offset based flush,
when buffers have partial or full overlap, avoiding flush for overlap.
Change-Id: Ifcdcaab112522ee3abf842e9e305665f9a7ddd7e
Acked-by: Deepika Singh <dsi@qti.qualcomm.com>
Signed-off-by: Merugu Tharun Kumar <mtharu@codeaurora.org>
Signed-off-by: Mohammed Nayeem Ur Rahman <mohara@codeaurora.org>
Signed-off-by: Edgar Flores <edgarf@codeaurora.org>
Enable the mem-buf driver on Lahaina for QGKI configurations.
Change-Id: I97fd90588130d0b18efba946ece5e72926904e20
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Add the initial support required to share memory buffers
between VMs. This driver exposes an interface to userspace
clients to request memory to be allocated from another VM,
and added to the current VM. The VMs communicate with each
other via the use of the hypervisor message queues, as well
as utilize various facilities offered by the Haven resource
manager to manage memory that is transferred from one VM
to another.
Change-Id: I3181a1b14e61db30ed6b86752750722e24fd62e0
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Add a check to mark only cached buffers as iocoherent.
We can't enable io-coherency for uncached buffers because
of situations where hardware might snoop the cpu caches
which can have stale data.This happens primarily due to the
limitations of dma caching APIs available on arm64.
Change-Id: Iafad086d38559139cb45f6a290071ec6d58ad3a3
Signed-off-by: Urvashi Agrawal <urvaagra@codeaurora.org>
Enable the flag so that kernel panics on oops.
Change-Id: I92378f74edcfa6e6ddd1c72b387c7cf059141e13
Signed-off-by: Prakruthi Deepak Heragu <pheragu@codeaurora.org>
Add the LOCALVERSION strings for qgki, and qgki-debug
variants of Lahaina platform.
Change-Id: I95af815e9de3b906f6740b10ce4bd41de015b80d
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
When set_rate is called on unprepared clocks new vdd_level
requirement is not cached, which leads to incorrect votes
when later clk_prepare is called. Clocks may not be prepared
when clk pre change rate is called for set_rate change request,
thus cache vdd level and only apply vote during clk prepare.
Change-Id: I54d9a3c75034cd9e67e683c3f71088f2c7cd3db1
Signed-off-by: Vivek Aknurwar <viveka@codeaurora.org>
The device_caps field must be set for all but subdevs.
Fill rtc6226 device capabilities in video_device.
CRs-Fixed: 2622236
Change-Id: I3645e22dcc2f8d740385f3d661af2603fc594c2f
Signed-off-by: himta ram <hram@codeaurora.org>
Correct expression in macro ADC_TM_UPPER_MASK. Correct
calculation of value written to ADC_TM measurement enable
register.
Change-Id: I14a6f585bb0cee678aa6eee749ba3e983ba47173
Signed-off-by: Jishnu Prakash <jprakash@codeaurora.org>
Adding force no flush and invalidate flag for rpcmem_alloc
and respective attributes for remote_register_buf_attr.
Skip flush and invalidate if corresponding flag is set.
Change-Id: I5b872d1f22b082716a1fe715375c66a212fedbac
Acked-by: Deepika Singh <dsi@qti.qualcomm.com>
Signed-off-by: Tharun Kumar Merugu <mtharu@codeaurora.org>
Use unsigned int for counters and maintain consistency when using
in the datatypes.
Change-Id: Ib4f15d3e0a5971da1beaeb57dc1b827e60c94d0a
Signed-off-by: Tharun Kumar Merugu <mtharu@codeaurora.org>
Currently before staticPD on QDSP is up, remote mappings are
being removed. Instead, remove the mappings after staticPD is up.
Change-Id: I10a37b4c840dbd830f7b8897aabbf8681329b74c
Acked-by: Vishnu Karthik D <vikarthi@qti.qualcomm.com>
Signed-off-by: Tharun Kumar Merugu <mtharu@codeaurora.org>
SMMU hw voting did not tie these 2 clocks. Although these
clocks are default enabled on boot, SW needs to explicitly
make sure to keep them always enabled to keep smmu access.
These clks will automatically turn on/off along with
CX_GDSC so no power hit.
Change-Id: I4fb82589f63c0a321465e249e54f94be7e5449a3
Signed-off-by: Vivek Aknurwar <viveka@codeaurora.org>
Implemented a more efficient way of managering buffers in cvp driver
to help improve performance.
Change-Id: Ic6f9bc1bae74fc8daefdf55275239e4e6d334199
Signed-off-by: Ruofei Ma <ruofeim@codeaurora.org>
The core which induces the non-secure bite should not
proceed further. Non-secure bite is a secure interrupt
and one of the core handles and that may not be the same
core which configured the watchdog. Add forever loop
after non-secure bit programming, so that core do not
proceed further.
Change-Id: I5523ad00d47755df6eed2bfb9210b585ee22f4ed
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
Signed-off-by: Prakruthi Deepak Heragu <pheragu@codeaurora.org>
Enable FSA driver on Lahaina to support analog type-c
headset.
Change-Id: Ia95383641030c9ff56300c975ffd35a96abcdac5
Signed-off-by: Meng Wang <mengw@codeaurora.org>
When WALT and CFI are enabled, weak symbols which points to NULL
are causing issues like global structures becoming NULL due to
compiler/linker treatment of these symbols.
Provide proper stub definition for all such weak symbols to avoid
issues until compiler/linker gets fixed.
Change-Id: I3dce047393521681e663a0ad254b07e9769e0265
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
MEM_NOTIFY is useful for sending VMs notifications about
memory that has been shared with them, as well as sending
owners of memory an indication that a VM has released memory
that they own, so add support for it.
Change-Id: I65bf0d000c8b3850f04c85eec70692728314b26d
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Relying on hyp_assign for sharing memory is not sufficient,
as there are certain cases where hyp_assign is not applicable
for sharing memory (e.g. I/O memory). Add support for the MEM_SHARE
and MEM_LEND operations for sharing/lending memory with other
VMs respectively.
Change-Id: I7de502385a045f073540fa30c164b3410f6b5bd0
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
The MEM_ACCEPT call is required for VMs to map the
memory represented by a handle into their RM managed
page-tables, so add support for it.
Change-Id: I669ebd8298af405ca586a5721b26c4e19ffe39aa
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
The MEM_RELEASE/MEM_RECLAIM RM calls are required to unmap memory
from the RM managed page-tables of VMs, as well as for VMs that
own memory to reclaim it respectively, so add support for it.
Change-Id: I6b8025cb08067331deb9cc89ec1d36c94c959c59
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>