The MEM_QCOM_LOOKUP_SGL RM call is required to retrieve
handles for memparcels created through hyp assign. Thus,
add support for it in the RM driver.
Change-Id: Ib854187daffa13a44c948111ef560c3479f2590c
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Expose the label used for the mem-buf message queue.
Change-Id: I6f7c7629f9f6a4aefaea65653187ba210ef6ceb8
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
The memparcel handles are standard in the haven interface,
so expose them to the rest of the kernel.
Change-Id: Id8eafd5f3fe0f1403b9b76b9a0176c11d6546707
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
This change reverts commit 5e33579a6a ("devfreq: Do not allow tunable
updates when device is suspended") and commit db4f4a0933 ("PM/devfreq:
Do not switch governors from sysfs when device is suspended").
Userspace updates to sysfs nodes like governor and polling_interval are
currently not allowed when there is a non-zero suspend count. This
requirement existed in the past due to hardware dependencies in some
devfreq drivers. However, these hardware dependencies should be handled
by the relevant devfreq drivers rather than the devfreq framework so
remove the suspend count checks in these devfreq framework sysfs APIs.
Change-Id: I8010b519d72784a6b90955acc7899c1a520aa7e7
Signed-off-by: Amir Vajid <avajid@codeaurora.org>
Incorrect error check and return value in guestvm_load_start causes
kernel to loop this function indefinitely.
Change-Id: I483cc084b4caa02c3478abcc856123dfa14216e9
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
With USB spoof connect functionality, eud hardware is generating
interrupt with status register updated with VBUS present and TX
buffer empty. Current eud ISR expects to have only single event
generated with each interrupt. It doesn't handle received valid
events. Fix this ISR logic to handle multiple events.
Change-Id: I819b8a7f5be5b32753467495416103b690a4a83e
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
The change involes support for 3.4 Mhz and modified clk values for 400 Khz
to support NFC enumeration. Also changed open drain frequency to be used
from i2c clk freq passed from DTSI.
Change-Id: Iee75cfcd630e905b10bff790de84b1da2efdc042
Signed-off-by: Subramanian Ananthanarayanan <skananth@codeaurora.org>
Currently the Soong logic doesn't kick in if a change updates
headers but doesn't update gen_headers_arm*.bp files for
incremental builds. Fix the issue by making inputs to the
kernel_headers.py script as variables instead of a list.
Change-Id: I9737f6d655848458bfda70b8c6f4d9aa896a98fc
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
On newer kernels, memory allocated by dma_alloc_attrs() is
expected to be zeroed out upon allocation. The allocation
paths in fastmap do not currently account for this new
requirement, so update them to zero out memory, unless
the client explicitly asks for memory to not be zeroed out.
Change-Id: I5c7fa81ab4b8fa98890036082883769ab12443c6
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
While investigating hardware issue, disabling CVP power collapse
to unblock CVP clients' integration tests.
Change-Id: I463e6216d390296ff958abb7382de4829f87e386
Signed-off-by: George Shen <sqiao@codeaurora.org>
Currently qti_flash_led_switch_brightness_set() is used to enable or
disable switch. Split it into separate APIs to enable and disable
switch. This will make it easier to control switches which is required
for implementing slow-sync flash feature.
Change-Id: I668ab872d1d646f97ed8fbfba4dfca6b4db5bc70
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
Enable QMI service driver used to support ADSP tunneling of
USB host mode audio.
Change-Id: I5632e2918a87441d717e5d7a0e5a8242bd4d607e
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Change the map_pcm_format() helper to return a snd_pcm_format_t
instead of a plain int to fix the following sparse warnings:
sound/usb/usb_audio_qmi_svc.c:1135:26: expected restricted
snd_pcm_format_t [usertype] pcm_format
subs->pcm_format = pcm_format;
sound/usb/usb_audio_qmi_svc.c:1135:26: got int [assigned] pcm_format
subs->pcm_format = pcm_format;
sound/usb/usb_audio_qmi_svc.c:1135:26: warning: incorrect type in
assignment (different base types)
subs->pcm_format = pcm_format;
sound/usb/usb_audio_qmi_svc.c:962:24: expected int
return SNDRV_PCM_FORMAT_S8;
sound/usb/usb_audio_qmi_svc.c:962:24: got restricted snd_pcm_format_t
[usertype]
return SNDRV_PCM_FORMAT_S8;
sound/usb/usb_audio_qmi_svc.c:962:24: warning: incorrect type in return
expression (different base types)
return SNDRV_PCM_FORMAT_S8;
... and so on.
For these warnings:
sound/usb/usb_audio_qmi_svc.c:559:47: expected unsigned short
[usertype] usb_audio_spec_revision
resp->usb_audio_spec_revision =
sound/usb/usb_audio_qmi_svc.c:559:47: got restricted __le16 [usertype]
bcdADC
resp->usb_audio_spec_revision =
sound/usb/usb_audio_qmi_svc.c:559:47: warning: incorrect type in
assignment (different base types)
resp->usb_audio_spec_revision =
Fix these by passing the bcdADC value through le16_to_cpu before
assigning to the usb_audio_spec_revision member.
Change-Id: I0be5848846be7e29566a7854c5190634bce4347d
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Since CONFIG_USB_F_FS_IPC_LOGGING was never explicitly set, despite
the "default IPC_LOGGING" in its Kconfig, it is prone to getting
disabled when performing a make config/menuconfig with the fragmented
configs. Fix this once and for all by explicitly marking it =y
in lahaina_debug.config.
Change-Id: I68c9a39ea2a0d0116f4685314daf717802af8481
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Charger firmware sends some battery related events with a generic
notification opcode. Handle such notifications as well to send
events up to the userspace.
Change-Id: Ia35fb7dbe56183d3c7c7a66b5f387b94072e6ed0
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
QBG device context dump length has been increased to 598 words in
the charger firmware. Increase the length to support upto 4KB.
Change-Id: I4a0a28044a54cdbde146101384f5a1ccf73b1562
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Cover console specific functionality under driver defined defconfig.
This helps to enable/disable console in a primary/secondary image based
on need.
Currently on GKI based kernel, SERIAL_CORE_CONSOLE seem to enable console
functionality which is not as expected. This change makes perf image to
work without Serial console.
Change-Id: I571dfd70b280189a9fd741db1e97ef3e650343f8
Signed-off-by: Mukesh Kumar Savaliya <msavaliy@codeaurora.org>
Enable DYNAMIC_DEBUG which is useful for debugging.
Change-Id: I93adcbba62380721751e58931d182729790b29b9
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
The SCM driver depends on shmbridge to make calls to the TZ. This
change enables shmbridge by default if CONFIG_QCOM_SCM is set.
Change-Id: I56a2cf35d5621f9b7ca4e8b3e854671e8d40071c
Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org>
This change is to make sure UART doesn't turn on/off clocks for
console usecase. HSUART tries to store firmware version for debug
purpose which needs clocks to be ON, hence keep reading of FW
version only for HSUART.
Change-Id: I95025872852df3eb5b8252dfe1cc6f5be95586be
Signed-off-by: Mukesh Kumar Savaliya <msavaliy@codeaurora.org>
The current implementation always uses rpmh_write_async, which doesn't
wait for completion. That's fine for disable requests since there's no
immediate need for the clocks and they can be disabled in the
background. However, for enable requests we need to ensure the clocks
are actually enabled before returning to the client. Otherwise, clients
can end up accessing their HW before the necessary clocks are enabled,
which can lead to bus errors.
Use the synchronous version of this API (rpmh_write) for enable requests
in the active set to ensure completion.
Completion isn't required for sleep/wake sets, since they don't take
effect until after we enter sleep. All rpmh requests are automatically
flushed prior to entering sleep.
Change-Id: I3d3261159bb30e4e149f4cb6b3e9d60b018a5d5e
Signed-off-by: Mike Tipton <mdtipton@codeaurora.org>
After commit 3c996ff8858 ("ANDROID: serdev: add platform device
support") landed, we started seeing boot panics on HiKey960/HiKey.
After some debugging I found the patch is passing a serdev_device->dev
pointer to match(), which expects the dev pointer to be
contained in a platform_device structure instead. When it uses
container_of, it ends up miscast and we get bad values.
Alistair suggested this fix which seems to avoid the issue.
Signed-off-by: John Stultz <john.stultz@linaro.org>
Bug: 146517987
Change-Id: I6354aeb4008fff85264a3c848c6c95fb8ca5b07a
Git-commit: 515764a925
Git-repo: https://android.googlesource.com/kernel/common
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
Add code to update dev value in tsens struct which
will be compared in thermal framework to check whether
the device pointer is matching with thermal zone or not.
Change-Id: Ic7605034e48585bcb25641306c1703b8399b4e0e
Signed-off-by: Ajay Prathi <aprathi@codeaurora.org>
Linux kernel lockup case can be either due to RSC interrupt
pending at GIC unable to service or due to completion did not
get a chance to run and finish.
Currently rpmh debug only prints pending IRQ status at GIC.
Add completion status as well to rpmh debug information.
Change-Id: Iaee639f744be19c2cffb701547623c19bdabfb30
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
Add rgmu_init() to load firmware for RGMU
based targets.
Change-Id: I49d250db70b49e220ce4292e12b6cb852686e678
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
Update interrupt names to have "flash" prefix so that all the
interrupts for flash LED can be monitored easily.
Change-Id: Ib7c17ea48110461823702c8d11b7554ddebbbb26
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Widgets power up/down sequence in dapm is specific
to platform. Change makes msm specific changes to the
sequence.
Change-Id: I5b501b5dc1b167e339c95fbbc7b5fc72dc9bdb89
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
The command in init.qcom.rc to load CVP firmware will take
effect with this change.
Change-Id: Ib45c77c8f34a12a9c01b462847cf2fc25ae1452d
Signed-off-by: George Shen <sqiao@codeaurora.org>
Due to an error in the specification of the multiple compatible strings
in the match table, nodes defined with compatible string "adc-tm5-iio"
failed to probe. Fix this.
Also change the compilation recipe in the Makefile to prevent generation
of multiple kernel modules.
Change-Id: I6cf544b202dfb0773215aeaeae8a12bae5b79dde
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
Codec should be started before the CPU to ensure that there is no data
loss during playback.Current sequence enables the CPU first followed by
codec.This change updates the sequence prevent any playback data loss.
Also, squash the below change to fix possible NULL pointer dereference
issue
ASoC: pcm: Check for capture path in all codec_dais
During soc_pcm_prepare, check for capture path for all
the codec_dais instead of the last codec_dai. This is
will help to set pcm start event for all the codec dais
that has capture_active set to high. Change checks for
all the codec_dais capture_active bit to set start stream
event.
Change-Id: I3f1b457ecd169f6ecc42e15f2151ede9cdbd580d
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>