Qmuxd bridge daemon is opening /dev/gps before USB enumerated with
USB composition having GPS interface as part of it. This daemon
performs EP_LOOKUP ioctl and encounters failure. It keeps retrying
for some iterations, and later goes into sleep and doesn't perform
any IOs. This results into no GPS related IOs between daemon and
host side QMUXD driver. Hence this change sends zero length packet
for MBIM (as QBI also faces same issue) and GPS interface when
USB cable is connected and those interfaces are part of USB
composition. Both QBI and Qmuxd bridge daemon are now wait for zero
length packet as indication for change in USB cable status, and
queries using GSI_MBIM_GPS_USB_STATUS IOCTL (newly added). Based on
this IOCTL related response, both daemons performs read/write with
created control devices.
Change-Id: Ib47443fe0e473ab4e27facb3f2927b8c13966158
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
gps usb functionality is implemented using qmi packets.
User space entity sends and receives QMI packets using
misc device named /dev/gps.
Change-Id: I73af1caa9b272597909199022739390274a4b034
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Signed-off-by: Elson Roy Serrao <eserrao@codeaurora.org>
The inclusion of draw object flag for msm_perf_events_update.
Since user-space thread is triggered based on kgsl events
this will be vital to distinguish the events based on frame
states and prevent undesirable user-space thread wake-ups.
Change-Id: I28040808d6c114b718aad0e0ab63554683e77460
Signed-off-by: Aman Mehta <amanmeht@codeaurora.org>
Hyp uart is default disabled from ABL now. There is no need of
CONFIG_HH_DISABLE_UART option anymore. Hyp uart now can be controlled
using DEBUG_FS interface.
Change-Id: Ie1a0986399d30b89bf62468a23633994c8d6b11b
Signed-off-by: Murali Nalajala <mnalajal@codeaurora.org>
Hyp uart is disabled default today in ABL. Provide debugfs
interface to users when they want to enable hyp uart to
debug hypervisor and VM issues.
Change-Id: I5e2c0501ed309a65c9dff1304b2e88e0d58917ae
Signed-off-by: Murali Nalajala <mnalajal@codeaurora.org>
When memory block is logically offlined, it is still part of System RAM but
is inactive, and can be made active or Onlined anytime.
Take totalram snapshot to include offlined memory in Memtotal.
This method avoids taking device_hotplug lock to meminfo.
Fixes: dc00b6d99a ("proc/meminfo: include offlined region for mem total")
Change-Id: I2b69444e6f066e1c1928278707616840308b00d0
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
With QCOM quirks, the invalidations are agrregated to reduce map/unmap
time. In absenence of CONFIG_QCOM_IOMMU_TLBI_QUIRKS enabled, the map/unmap
latency impact time critical usecases. Hence defer TLB invalidation when
CONFIG_QCOM_IOMMU_TLBI_QUIRKS is not enabled.
Change-Id: I866b4211901f71fe054bbd9f465b4df5c7dac82c
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
In ssr handling of remote subsystem down, all rpmsg devices are removed
for that edge. If at the same time ssr down is received for other remote
subsystem, it may try to notify already down remote and end up using
invalid rpmsg device which causes use after free.
Store device state in ssr context and update this with holding a lock.
SSR notification function should also use the same lock and perform
check for validity of rpmsg device.
CRs-Fixed: 2580433
Change-Id: I339e228a527f7b6a737944d8e9e53caa31992914
Signed-off-by: Deepak Kumar Singh <deesin@codeaurora.org>
During ssr rpmsg ssr device will unregister, which can result
in use of stale device pointer in ssr callback function.
Now incrementing refcount inside ssr callback function to
prevent release of rpmsg device.
CRs-Fixed: 2551255
Change-Id: If3fc57c4635378dc6fdcb7df120c83dca0e83758
Signed-off-by: Deepak Kumar Singh <deesin@codeaurora.org>
This change propagates the missing fixes in novatek tcm touch
driver from msm-4.19 to msm-5.4.
Change-Id: Ie404c8412f7efa847b8e14965bcaf45568225502
Signed-off-by: Ravikanth Tuniki <rtunik@codeaurora.org>
Add scaling function required to read PMIC5 current ADC channels
so that channel 0xA5 (ADC5_PARALLEL_ISENSE) can use that.
Change-Id: I55ede0c736c6f350df8ac92ea8661db4129da13c
Signed-off-by: Jishnu Prakash <jprakash@codeaurora.org>