Commit graph

595592 commits

Author SHA1 Message Date
Linux Build Service Account
b60469a004 Merge "msm: jpegdma: Fix for ASAN issues in jpegdma module" 2017-12-30 20:50:07 -08:00
Pavankumar Kondeti
9c933388d8 sched: Fix spinlock recursion in sched_exit()
The exiting task's prev_window and curr_window arrays are freed
with rq->lock acquired. The kfree() may wakeup kswapd and if
kswapd wakeup needs the same rq->lock, we hit a deadlock. Fix
this issue by freeing these arrays after releasing the lock.
Since the task is already marked as exiting under lock, delaying
the freeing of the current and window arrays will not have
any side effect.

Change-Id: I3282d91ba715765e38177b9d66be32aaed989303
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2017-12-30 11:51:59 +05:30
Zhiqiang Tu
2ced86123e ARM: dts: msm: Disable iommu test device on msm8996 vplatform
Disable iommu test device since guest os has no permission
to operate cpp_fd_smmu.

Change-Id: I9641d7ceb91f5c1bf4ee2307540730689dce7b98
Signed-off-by: Zhiqiang Tu <ztu@codeaurora.org>
2017-12-28 17:34:33 +08:00
Ghanim Fodi
f9e828bd55 msm: ipa: Fix the handling of default IPA header
Default IPA header is added or deleted from the driver
directly and not by user space application. This change
prevents adding/deleting it from user application which
may cause inconsistencies in the driver. Also the change
fixes the header reset function to skip on the correct
default header.

Change-Id: Ic813433655411f1447db8b0c15efdf64038d8c26
CRs-fixed: 2151146
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
2017-12-28 10:20:41 +02:00
Will Deacon
d1128b3524 arm64: SW PAN: Update saved ttbr0 value on enter_lazy_tlb
enter_lazy_tlb is called when a kernel thread rides on the back of
another mm, due to a context switch or an explicit call to unuse_mm
where a call to switch_mm is elided.

In these cases, it's important to keep the saved ttbr value up to date
with the active mm, otherwise we can end up with a stale value which
points to a potentially freed page table.

This patch implements enter_lazy_tlb for arm64, so that the saved ttbr0
is kept up-to-date with the active mm for kernel threads.

Change-Id: I6e5c50542ff2645c46e8801685f7a43e6773c3d2
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Vinayak Menon <vinmenon@codeaurora.org>
Cc: <stable@vger.kernel.org>
Fixes: 39bc88e5e38e9b21 ("arm64: Disable TTBR0_EL1 during normal kernel execution")
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Mark Rutland <mark.rutland@arm.com>
Reported-by: Vinayak Menon <vinmenon@codeaurora.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Git-commit: d96cc49bff5a7735576cc6f6f111f875d101cec8
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2017-12-27 21:25:33 -08:00
Will Deacon
3ac2760ead arm64: SW PAN: Point saved ttbr0 at the zero page when switching to init_mm
update_saved_ttbr0 mandates that mm->pgd is not swapper, since swapper
contains kernel mappings and should never be installed into ttbr0. However,
this means that callers must avoid passing the init_mm to update_saved_ttbr0
which in turn can cause the saved ttbr0 value to be out-of-date in the context
of the idle thread. For example, EFI runtime services may leave the saved ttbr0
pointing at the EFI page table, and kernel threads may end up with stale
references to freed page tables.

This patch changes update_saved_ttbr0 so that the init_mm points the saved
ttbr0 value to the empty zero page, which always exists and never contains
valid translations. EFI and switch can then call into update_saved_ttbr0
unconditionally.

Change-Id: I664095969fbd4d0b546f30aa4c312769e708d6de
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Vinayak Menon <vinmenon@codeaurora.org>
Cc: <stable@vger.kernel.org>
Fixes: 39bc88e5e38e9b21 ("arm64: Disable TTBR0_EL1 during normal kernel execution")
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Mark Rutland <mark.rutland@arm.com>
Reported-by: Vinayak Menon <vinmenon@codeaurora.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Git-commit: 0adbdfde8cfc9415aeed2a4955d2d17b3bd9bf13
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2017-12-27 21:25:08 -08:00
Ajay Agarwal
24ecfd64c7 gpio: usbdetect: Avoid threaded IRQ handling if no change in ID
It is observed that the hard ID IRQ is enabled when the
threaded IRQ handler for the same is still running. In that
case, there are two issues. The ID LOW IRQ can come
consecutively which will increase the disable count of
vbus_irq. Then ID HIGH IRQ will not enable the vbus_irq and
peripheral mode detection will not work anymore. The second
issue is that ID HIGH IRQ is fired just before ID LOW IRQ.
This will mark usb->id_state from HIGH to LOW even while
threaded IRQ is running which will lead to host not getting
stopped and peripheral mode not working.

Fix both issues by maintaning a local copy of ID IRQ in
threaded IRQ handler and comparing it with previous ID state.
If same, then bail out.

Change-Id: If5da1f91ece9d1751d7002e64bab0e145623a92e
Signed-off-by: Ajay Agarwal <ajaya@codeaurora.org>
2017-12-23 18:33:57 -08:00
Michael Adisumarta
aabee5f38d msm: ipa: Remove unwanted gsi debug register reads
This changes removes the unwanted gsi dedug register reads, to which
IPA driver dont have access to.

Change-Id: I6efb1045275a9bdb238e6184ec676013ab1678bc
Acked-by: Jyothi Jayanthi <jyothij@qti.qualcomm.com>
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
2017-12-23 00:04:53 +05:30
Rahul Sharma
ff2dc69c5a TvTuner: Add support for TV tuner driver
Add new dummy tv tuner driver and its documentation.
Update Makefile, Kconfig and add new tuner id type to msm_ba.h

Change-Id: I14f822ad9fdf85ea7509067d536c49fd24cf1609
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
2017-12-22 07:22:16 -08:00
Rahul Sharma
720aa591f4 ADV7481: Query lane_count and settle_count from device tree
Get lane count and settle count from device tree.
Add VIDIOC_G_CSI_PARAMS ioctl to pass lane count
and settle count values to userspace.

Change-Id: Ic0e0b7b402908c9970fd1771cf9bf19627f5a5d8
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
2017-12-22 07:21:04 -08:00
Tharun Kumar Merugu
720c24578a msm: adsprpc: Use unsigned integer for length values
As the length datatype is signed, supplying a negative number
can have undesired consequences. Always use unsigned integer
types for length values.

Change-Id: Ifde2f0d35129014b976507f7723a319c53fabddf
Acked-by: Thyagarajan Venkatanarayanan <venkatan@qti.qualcomm.com>
Signed-off-by: Tharun Kumar Merugu <mtharu@codeaurora.org>
2017-12-22 17:56:46 +05:30
Yong Ding
dec36d01cb soc: qcom: hab: add some more logs
With this, it becomes clear to know it is HAB's log and
which line of which function shows the log. Moreover, it
is helpful for issue debugging with those prepared logs.

Change-Id: I9641e779f592a5be7750885228cac6374880c301
Signed-off-by: Yong Ding <yongding@codeaurora.org>
2017-12-22 18:24:13 +08:00
Linux Build Service Account
8ed108c977 Merge "ASoC: msm: qdsp6v2: Add common items needed for Instance ID" 2017-12-21 21:18:19 -08:00
Gustavo Solaira
8a446ae063 ARM: dts: msm: Increase CAN reset time on msm8996 CV2X boards
Increase the CAN controller reset time to 200ms on msm8996
CV2X boards. This is the time we expect the CAN micro-controller
will take to complete its boot up process.

Change-Id: Ib70a8ac6eb296558a42eb7d34b73a384c7b7e8c8
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
2017-12-21 10:35:02 -08:00
Linux Build Service Account
5529a30833 Merge "soc: qcom: pil: Align size of MBA and DP image to 4k" 2017-12-21 08:50:04 -08:00
Linux Build Service Account
858c4b0cd0 Merge "power: qpnp-fg-gen3: Improve ESR accuracy at cold temperature with Qnovo" 2017-12-21 08:50:03 -08:00
Kyle Yan
07e9f6994d soc: qcom: pil: Align size of MBA and DP image to 4k
Image address and size must be aligned to 4k as the SMMU works on a
4k granularity.

Change-Id: I4780aa67f09796ec0a8dd5b62da0e9a99c50e596
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
2017-12-20 23:01:07 -08:00
Linux Build Service Account
188160bd85 Merge "leds: qpnp-flash-v2: Return error code separately during current prediction" 2017-12-20 22:30:16 -08:00
Linux Build Service Account
1d6b8c1ae8 Merge "icnss: Do not send uevent when driver is unloading" 2017-12-20 22:30:15 -08:00
Linux Build Service Account
d781e6dd24 Merge "ARM: dts: msm: Enable LDO26 for CDP targets" 2017-12-20 22:30:14 -08:00
Linux Build Service Account
6f4dbe6457 Merge "usb: gadget: ffs: change gfp_flags to GFP_ATOMIC" 2017-12-20 22:30:11 -08:00
Aditya Bavanari
7448b5c257 ASoC: msm: qdsp6v2: Update audio effects driver to support Instance ID
Add support to set and get audio effects module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.

CRs-Fixed: 2151551
Change-Id: I62342d434fc5bd58c06d22913683d7d0fd602da9
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-12-21 11:27:46 +05:30
Aditya Bavanari
7a5f4a39ac ASoC: msm: qdsp6v2: Update ASM driver to support Instance ID
Add support to set and get ASM module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.

CRs_Fixed: 2151551
Change-Id: I48a0f0f856d8b8b59b7e7361fae63283e0f87948
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-12-21 11:24:22 +05:30
Aditya Bavanari
c0e1cac7ec ASoC: msm: qdsp6v2: Update dap driver to support Instance ID
Add support to set and get dap modules params with
Instance ID support for both Dolby and DS2.
Maintain support for non Instance ID set and get param
structures as well. Use common pack and set param
functions to set and get parameters to DSP instead of
handling them at an individual module level.

CRs-Fixed: 2151551
Change-Id: Ic2722cf5d686a7b10c682ca7866f7900da9d0cdb
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-12-21 11:17:53 +05:30
Aditya Bavanari
2ee870a5d5 ASoC: msm: qdsp6v2: Update ADM driver to support Instance ID
Add support to set and get ADM module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.

CRs-Fixed: 2151551
Change-Id: Ida9591e96501a2edbffe080eb8531c860bde8539
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-12-21 11:16:58 +05:30
Aditya Bavanari
36ed1afb56 ASoC: msm: qdsp6v2: Update rtac driver to support Instance ID
Add support to set and get rtac params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.

CRs-Fixed: 2151551
Change-Id: Ic07cb109b9e469dccf510f89ba9917e8c9eccbd8
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-12-21 11:11:41 +05:30
Aditya Bavanari
43f8fb6053 ASoC: msm: qdsp6v2: Update AFE driver to support Instance ID
Add support to set and get AFE module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.

CRs-Fixed: 2151551
Change-Id: I9f2cc097a0f1a99a4639bb0cd636500b41a41b1b
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-12-21 11:10:35 +05:30
Aditya Bavanari
cd9c139d62 ASoC: msm: qdsp6v2: Update voice driver to support Instance ID
Add support to set and get voice module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.

CRs-Fixed: 2151551
Change-Id: If18c89ef6e0e98419d271923387eae10d45cb7f3
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-12-21 11:09:15 +05:30
Aditya Bavanari
d17e5ec06a ASoC: msm: qdsp6v2: Update LSM driver to support Instance ID
Add support to set and get LSM module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.

CRs-Fixed: 2151551
Change-Id: I138cceb5165443da899e7c152fd6c8a05a6efe98
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-12-21 11:08:50 +05:30
Aditya Bavanari
067a92850f ASoC: msm: qdsp6v2: Add common items needed for Instance ID
Add common headers and functions needed to support instance ID.

CRs-Fixed: 2151551
Change-Id: I8a167be29cdb5c365ac957530789007e90a91a97
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2017-12-21 11:07:50 +05:30
Vijayavardhan Vennapusa
3fbe237e3c usb: gadget: Update default class subclass and protocol for rndis
This allows Host to load NDIS 6.0 driver for RNDIS over ethernet.
Design objectives of NDIS 6.0 is to enhance driver performance
and scalability. Observing higher peak tput (308Mbps --> 480Mbps)
for FTP transfer on live network. It resolves the data stall that
is being caused by the sudden transfer abort coming from the NDIS
5.0 Host driver.

Change-Id: I062d07ff3bd63b8a610166cf77714424055d962c
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2017-12-21 10:59:51 +05:30
Subbaraman Narayanamurthy
b5ef1a8168 power: qpnp-fg-gen3: Improve ESR accuracy at cold temperature with Qnovo
When the battery is in cold temperature for a certain amount of
time and device is charged with Qnovo enabled charging, ESR pulse
will fire less frequently. This along with ESR pulses not getting
qualified can cause the ESR to be less accurate. To improve ESR
accuracy, add change to apply relaxed filter coefficients once
the battery temperature starts ramping up after hitting a lower
threshold of say 6 C after charging begins.

CRs-Fixed: 2151708
Change-Id: Iff6c2ffbab1f327dfefcf1550213c37df4a8ad42
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2017-12-20 15:42:23 -08:00
Linux Build Service Account
0c6a32296a Merge "defconfig: msm8998: Enable kernel AIO support" 2017-12-20 12:37:48 -08:00
Linux Build Service Account
a5d34c6937 Merge "msm: ipa: add new IP filtering bitmaps" 2017-12-20 12:37:46 -08:00
Linux Build Service Account
a3cf98624f Merge "msm: ipa: Change error value for set quota" 2017-12-20 12:37:45 -08:00
Linux Build Service Account
86451b3a26 Merge "ARM: dts: msm: Remove blsp1_uart2 on msm8996 telematics vplatform" 2017-12-20 12:37:44 -08:00
Yuanyuan Liu
daee03cd52 icnss: Do not send uevent when driver is unloading
If modem crashed during wlan driver unloading, icnss driver
will call driver uevent callback to send FW down uevent when
it receives BEFORE_SHUTDOWN notification. If wlan driver is
de-initialized just before the callback is called, kernel will
panic as driver's context is freed. This can be avoid by not
sending uevent when wlan host driver is unloading. Instead,
icnss driver will provide an API to host driver to check if
WLAN FW is down or not.

CRs-Fixed: 2161425
Change-Id: I569fd85366522606ececeda74df85c51b9b2fc28
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
2017-12-20 10:53:14 -08:00
Rahul Sharma
ecb925ac1e ARM: dts: msm: Enable LDO26 for CDP targets
Camera bridge chip is not getting detected on CDP for automotive platform.
Defined and added regulator LDO26 which needs to be turned on for the chip
to be detected.

Change-Id: I0400bf1430d588852d4143e7b28f33927614ee90
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
2017-12-20 02:41:51 -08:00
Vijayavardhan Vennapusa
53bfc90f6e defconfig: msm8998: Enable kernel AIO support
New Android versions are using kernel AIO functionality for adb &
MTP interfaces for better performance. Hence enable CONFIG_AIO to
support same.

Change-Id: I8bfd6c631642f60390ee656e10d666766749f7b3
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2017-12-20 13:06:30 +05:30
Linux Build Service Account
e1fe906b59 Merge "msm: Array bounds check for buffer index" 2017-12-19 22:27:53 -08:00
Linux Build Service Account
cbd271f847 Merge "ARM: dts: msm: update route map for sdm660 internal codec" 2017-12-19 22:27:52 -08:00
Linux Build Service Account
9bc61112ee Merge "ALSA: pcm: use lock to protect substream runtime resource" 2017-12-19 22:27:50 -08:00
Linux Build Service Account
06acadc1d7 Merge "ALSA: pcm: remove unused variable from snd_pcm_info()" 2017-12-19 22:27:48 -08:00
Linux Build Service Account
2b22d5e4e3 Merge "ASoC: apr: Add validity check to APR port" 2017-12-19 22:27:47 -08:00
Linux Build Service Account
28c04d8c14 Merge "ASoC: msm: qdsp6v2: Set freed pointers to NULL" 2017-12-19 22:27:46 -08:00
Linux Build Service Account
6e3c381a04 Merge "ARM: dts: msm: add support for TDM interfaces on msm8996 MTP" 2017-12-19 22:27:43 -08:00
Linux Build Service Account
67e9dcf13c Merge "ASoC: sdm660_cdc: Fix pop noise when device switch" 2017-12-19 22:27:42 -08:00
Linux Build Service Account
9644b44c7d Merge "soc: qcom: glink_smem_native_xport: Send blocked signal command" 2017-12-19 22:27:40 -08:00
Linux Build Service Account
0666226cff Merge "ARM: dts: msm: Remove spi_9 and i2c_8 in msm8996 ivi vplatform" 2017-12-19 22:27:39 -08:00
Liangliang Lu
4d74c15e42 usb: gadget: ffs: change gfp_flags to GFP_ATOMIC
usb_ep_alloc_request() may sleep with current flag
GFP_KERNEL, but it is in atomic context, change
flag to GFP_ATOMIC to fix this issue.

Change-Id: Ic43a25f0a504d7fed104e636a9a614a4398820ab
Signed-off-by: Liangliang Lu <luliang@codeaurora.org>
2017-12-19 22:01:48 -08:00