Clear the deep color bits in the HDMI controller in case
the mode does not need OR support deep color.
Change-Id: I77a5cd74bc90c249d8902437a7b87a07259a2c35
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
Restrict printing of kernel virtual addresses in SPS driver.
In debug code, %p is used to print virtual addresses of
kernel objects, which can be exploited by attackers. It is
replaced with %pK, which hides these values if kptr_restrict
is set (default on Android).
Change-Id: I57585fa655abc01b2e8d694c8f31b7617bbf4ec7
Signed-off-by: Jishnu Prakash <jprakash@codeaurora.org>
Check the credit update flag has enabled for the pipe
before setting the flag for credit report update request
on the wcn3990 WLAN module.
CRs-Fixed: 2141924
Change-Id: Ic628fa49934c110b7abccefb45a2a354dc462791
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
(from https://patchwork.kernel.org/patch/10058587/)
proc->files cleanup is initiated by binder_vma_close. Therefore
a reference on the binder_proc is not enough to prevent the
files_struct from being released while the binder_proc still has
a reference. This can lead to an attempt to dereference the
stale pointer obtained from proc->files prior to proc->files
cleanup. This has been seen once in task_get_unused_fd_flags()
when __alloc_fd() is called with a stale "files".
The fix is to always use get_files_struct() to obtain struct_files
so that the refcount on the files_struct is used to prevent
a premature free. proc->files is removed since we get it every
time.
Bug: 69164715
Change-Id: I6431027d3d569e76913935c21885201505627982
Signed-off-by: Todd Kjos <tkjos@google.com>
Git-commit: 1d6b43334b45144beb0dc8236f9eb3b6cf3b2995
Git-repo: https://android.googlesource.com/kernel/common
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
When doing WLAN SSR tests on Rome PCIe platform, system hang
is observed. After debugging, setting D3hot to PCIe link when
suspending leads to the hang.
Setting D3hot is a new change, which is added for Napier platform.
But this code path shares with legacy Rome platform. In previous
implementations for Rome PCIe platforms, setting D3hot to link
is not needed.
Fix is to set D3hot for Napier specific platforms.
Change-Id: Ia6bcb1b898204c0a8fd63355dd1f0808021182c4
CRs-Fixed: 2145090
Signed-off-by: Jia Ding <jiad@codeaurora.org>
Fix the divider programming of DisplayPort PLL with the correct
value. Without this, display doesn't up fine with certain
resolutions on some sinks when link rate is 5.4 GHz.
Change-Id: I7c5a452a9df757240a1c6c3d371bd46a16f98efd
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
msm8953 uses a new version of csid. Adding new
configuration file and making necessary driver changes.
Change-Id: I5c0ce7f43a4ccd55bd18461bc910e4dcb0c23bb0
Signed-off-by: Shankar Ravi <rshankar@codeaurora.org>
If return is inside the if condition, rc value is returned
only for that case. Hence shifting the return rc statement
outside the if loop, to return the value of rc for all cases.
Change-Id: I2f96cd0d301f580c0e7019746bade4e125661a36
CRs-Fixed: 1076948
Signed-off-by: Samyukta Mogily <smogily@codeaurora.org>
Currently GSI driver is clearing Doorbell to GSI in gsi_suspend(),
when it receives function suspend and notifying suspend to GSI in work
queue context. In ipa_suspend_work_handler(), driver is first checking
whether GSI wrapper is ready to suspend before doing xdci_suspend(). This
check fails if function resume received before ipa_suspend_work_handler()
gets chance to run. Due to this, state machine still stays at CONNECTED
state. When function resume is received, state machine is not handling
resume event and results in not ringing Doorbell to GSI. This eventually
causes data stall. Hence fix the issue by ringing Doorbell to GSI if in
case check for suspend fails in ipa_suspend_work_handler.
Change-Id: Ifbc03b7edde6e1be23c326118e89f805b148f9ff
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
The minium value of u32 is zero instead of -1. -1 will become the
largest value in u32.
Change-Id: I20fcab7d5912d6da7c4afe1ec7a86333767b0bf1
Signed-off-by: Camus Wong <camusw@codeaurora.org>
Parameter mdss_mdp_plane_sizes must be cleared to 0 before returning
under an error condition, otherwise caller function will use the
uninitialized mdss_mdp_plane_sizes values and caused incorrect
operation.
Change-Id: I856b17ce9e917cc450040463ec34b7309d34b9b5
Signed-off-by: Benjamin Chan <bkchan@codeaurora.org>
Add device tree files needed to support MSM8996 based
mizar platform.
Change-Id: Ife6c6659b981b37c6b9d9cbb0a0c106488f1e07f
Signed-off-by: Bharathraj Nagaraju <snbraj@codeaurora.org>
Some userspace modules expect USB driver to send event to userspace, when
usb device enumeration failure with device descriptor read errors.
Add USB_DEVICE_ERROR uevent in the USB driver to explicitly send the ERROR
uevent for such case.
Change-Id: I7128869ff0700ab90d4c949de24cd03c5c90e22e
Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
Current path to query field info: SOF ISR -> tasklet -> query thread
with high priority -> ba driver -> adv7481.
Pass field type to user space if they are valid after verification.
Change-Id: Id9926236389200446092dc9abb688ee1f83ab0c3
Signed-off-by: Andy Sun <bins@codeaurora.org>
When reg update isn't issued for given settings current
buffer is marked as drop buffer. To avoid such drop bu-
ffers, reconfigure same buffer to next SOF and propaga-
te that error to MCT and IFACE modules and make sure
request frame is delayed by one SOF Frame.
Change-Id: Iaec5eef3f26f941cc54825d40815c047ccebb3bc
Signed-off-by: Lokesh Kumar Aakulu <lkumar@codeaurora.org>
During reset isp HW, don't set stripe_rd reload bit, otherwise
it might cause iommu page fault, which actually is a fasle alarm.
CRs-Fixed: 2135311
Change-Id: I9be0400640edbf687ecfe08edcfdc1c7f7de25b6
Signed-off-by: Gaoxiang Chen <gaochen@codeaurora.org>
Take the bind lock when we dump information about sparse memory
allocations through the debugfs node.
Change-Id: I955d64d06a259a2bbe4d85a33d68887ee01aad07
Signed-off-by: Lynus Vaz <lvaz@codeaurora.org>
Currently, Rconn is configured once in fg_hw_init() if it is not
configured already. However, if the driver loads the profile
later, it will overwrite the Rconn value configured during
fg_hw_init. To fix this problem, configure Rconn after handling
battery profile loading.
Usually the Rconn configuration is setup differently from what
the profile has for it. We check if the profile in SRAM is bit
to bit matching with the profile in device tree. We may come
across a mismatch for Rconn configuration and conclude that the
profile isn't matching. Fix this by initializing the Rconn
configuration in the profile read from device tree to the value
read from SRAM.
CRs-Fixed: 2142441
Change-Id: I2b7ac8cd6efe811527c29bc5cd0fa43b77da7b15
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Share memory with kernel and user and update latest
kernel sof frame id.
Change-Id: Ie35132ffb9bd0298483b451b3333b3b2e3bb32ac
Signed-off-by: Lokesh Kumar Aakulu <lkumar@codeaurora.org>
Add mutex unlock in function audio_effects_shared_ioctl
at appropriate place to prevent use after free.
CRs-Fixed: 2123291
Change-Id: Ie0d321dc8cc20a295d102a44faea7e5710834932
Signed-off-by: Tanya Dixit <tdixit@codeaurora.org>
sg_ioctl could be spammed by requests, leading to a double free in
__free_pages. This protects the entry points of sg_ioctl where the
memory could be corrupted by a double call to __free_pages if multiple
requests are happening concurrently.
Bug:35644812
Change-Id: Ie13f65beb6974430f90292e2742841b26aecb8b1
Signed-off-by: Robb Glasser <rglasser@google.com>
Git-commit: 22d8e80738b5ce8784d59b48b0b051a520da4bec
Git-repo: https://android.googlesource.com/kernel/msm
[srkupp@codeaurora.org: Resolved trivial conflicts]
Signed-off-by: Srinivasa Rao Kuppala <srkupp@codeaurora.org>
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
qmi_send_req_wait expects timeout argument to be passed in ms and not
in jiffies. Update the call in service-locator to pass in the correct
argument.
Change-Id: Ib2f8deedf2fb2a561c30b0c8511bb1edd5a37361
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
ENOMSG is not a real failure return code for qmi_recv_msg. Instead ENOMSG
signifies that we have finished reading the entirety of the message buffer.
Update the error condition to print errors only when any error message
other than ENOMSG is returned.
Change-Id: Id6b42df182cb02f2cbffaae9698363b7dafce4e4
Signed-off-by: Kyle Yan <kyan@codeaurora.org>