Commit graph

874,653 commits

Author SHA1 Message Date
qctecmdr
ddbed2ec05 Merge "firmware: qcom_scm: Add trace points to scm driver" 2019-12-01 22:30:23 -08:00
qctecmdr
cd063a1b4e Merge "msm: cvp: Avoid CVP loading at boot" 2019-12-01 15:44:39 -08:00
qctecmdr
17f1121876 Merge "ANDROID: usb: gadget: configfs: Support multiple android instances" 2019-12-01 15:44:39 -08:00
qctecmdr
6c52778500 Merge "msm: cvp: Init reserved cdsp_mem" 2019-12-01 15:08:45 -08:00
qctecmdr
c65aae7a4f Merge "drivers: soc: qcom: Add snapshot of driver for FSA4480 I2C device" 2019-11-28 17:02:29 -08:00
qctecmdr
4ef89f019d Merge "iommu: dma-mapping-fast: fix iova alloc wrap" 2019-11-28 10:44:17 -08:00
qctecmdr
8852a1a921 Merge "msm: ipa: fix ipa driver compilation issue" 2019-11-28 04:13:48 -08:00
Phani Kumar Uppalapati
8aaaa4b44e drivers: soc: qcom: Add snapshot of driver for FSA4480 I2C device
This is a snapshot of driver support for FSA4480 I2C device as of
msm-4.19 commit '6037f6c5818ad4cab978a90ba45bd51aa73da497'(Add
driver for FSA4480 I2C device).

Change-Id: Iac392c82a72fe5de469fda094059ef7691772ca8
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-11-28 16:32:36 +08:00
qctecmdr
6044626a0c Merge "ALSA: pcm: use lock to protect substream runtime resource" 2019-11-27 21:40:35 -08:00
qctecmdr
432a21064d Merge "drivers: pinctrl: msm: remove redundant call to set handler" 2019-11-27 21:40:35 -08:00
qctecmdr
fe977ee3ff Merge "i2c: i2c-msm-geni: Add support to make I2C driver GKI compliant" 2019-11-27 21:40:34 -08:00
qctecmdr
e462212940 Merge "kernel: Create and export kernel headers" 2019-11-27 21:40:34 -08:00
qctecmdr
8d5b8707e7 Merge "soc: qcom: spss_utils: fix emulation logic for lahaina rumi" 2019-11-27 21:40:34 -08:00
qctecmdr
b883676a71 Merge "arm64: defconfig: Enable aop-qmp clock driver for Lahaina" 2019-11-27 21:40:34 -08:00
qctecmdr
8393ad72c2 Merge "usb: dt-bindings: Add USB QMP PHY registers definition" 2019-11-27 20:56:37 -08:00
qctecmdr
7383281882 Merge "ALSA: compress: Memset timestamp structure to zero" 2019-11-27 20:56:36 -08:00
qctecmdr
946ef014cf Merge "Asoc: Add audio backend to hwdep interface" 2019-11-27 20:56:36 -08:00
qctecmdr
14d6a78d70 Merge "kconfig: add new config AUDIO_QGKI for audio" 2019-11-27 20:56:36 -08:00
qctecmdr
f45bb46943 Merge "ALSA: compress: Add APTX format support in ALSA" 2019-11-27 20:56:35 -08:00
qctecmdr
5ec3e080e9 Merge "usb: typec: ucsi: Optimise ucsi_unregister()" 2019-11-27 20:15:18 -08:00
qctecmdr
cace7512f5 Merge "usb: typec: Remove the callback members from struct typec_capability" 2019-11-27 19:26:20 -08:00
Elliot Berman
873f25f55f firmware: qcom_scm: Add trace points to scm driver
Adding traces to find the arguments passed to secure world
and the values returned.

Change-Id: I6a90f968a05873f0ecbd4a0cc8c85d704e1d64cf
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org>
2019-11-27 14:12:24 -08:00
Elliot Berman
1ffb5f3083 soc: qcom: Remove downstream scm driver
Remove downstream scm driver as it has been deprecated in favor of
firmware/qcom_scm.c.

Change-Id: Ie056baeca1e5e305c7c77b3cec086292e4bf3caf
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2019-11-27 14:03:42 -08:00
qctecmdr
3b25b50faf Merge "defconfig: Enable qcom_scm as a module" 2019-11-27 13:17:16 -08:00
qctecmdr
1ba0f31fdc Merge "drivers: irqchip: qcom-pdc: remove SPI config in SCM" 2019-11-27 12:23:25 -08:00
George Shen
eeda4c6bcb msm: cvp: Avoid CVP loading at boot
CVP firmware has not been released to Lahaina. Loading CVP
firmware caused stability problem during kernel boot. Disable
CVP firmware loading till it's ready.

Change-Id: Iefef7a42c2a8f2cc1c20a259491b0d96248f1aa1
Signed-off-by: George Shen <sqiao@codeaurora.org>
2019-11-27 11:39:43 -08:00
Ghanim Fodi
96f8fdcbe9 msm: ipa: fix ipa driver compilation issue
Fix compilation issue due to missing parentheses.

Change-Id: Iea33d2440a8fb7954d9b4ecc36e11bdd7f312f54
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
2019-11-27 07:38:23 -08:00
Prakash Gupta
eda5e26ad1 iommu: dma-mapping-fast: fix iova alloc wrap
In case of iova_alloc bitmap search wrap, we erroneously update the
previous_next_start as 0, this causes stale tlb logic not detect wrap and
stale TLB entry issues. Fix the same.

Change-Id: Ic8c96e98abc91520f222a7dbe5024814dabd5042
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
2019-11-27 07:31:27 -08:00
Meng Wang
d15c33d652 ALSA: pcm: use lock to protect substream runtime resource
Use a spinlock to protect runtime resource in substream
against race conditions which may lead to use-after-free.

CRs-fixed: 2112713
Change-Id: I37dee68cad5eae05b21cfade3dabc0c2b79be6b8
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-11-27 14:56:21 +08:00
Meng Wang
4a7756137d ALSA: pcm: add locks for accessing runtime resource
Add spin lock to resolve race conditions while
accessing substream runtime resource.

CRs-fixed: 2112713
Change-Id: I8db743303ceb50205d62adfc02caf6ecab635d47
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-11-27 14:53:46 +08:00
Krishnankutty Kolathappilly
351d7321e8 ALSA: compress: Memset timestamp structure to zero
snd_compr_tstamp is initialized using aggregate initialization
that does not zero out the padded bytes.
Initialize timestamp structure to zero using memset to avoid this.

CRs-Fixed: 568717
Change-Id: I7a7d188705161f06201f1a1f2945bb6acd633d5d
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2019-11-26 22:40:46 -08:00
Meng Wang
efda17eac8 kconfig: add new config AUDIO_QGKI for audio
Add new config AUDIO_QGKI for audio to enable
ASOC framework enhancement.

Change-Id: I0beccc8f77d047a110001101143244392b57d383
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-11-26 22:40:41 -08:00
Banajit Goswami
4816300eff Asoc: Add audio backend to hwdep interface
Add audio backend to hwdep interface. This is to provide
ioctl interface to communicate to routing driver.
Currently codec driver uses request_firmware to get calibration data
but as this firmware file is also written by userspace process after
bootup, it is not recommended to use request_firmware. ALSA core
provides mechanism to get hardware dependent data using hwdep nodes.
Codec will use aforementioned nodes to get calibration data from
userspace.
This commit adds hwdep interface for codec calibration.

Change-Id: I9abeb9cdf3ea58d9fac13eef5d849c8aadf1bfbf
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-11-26 22:39:52 -08:00
qctecmdr
b3396c087d Merge "ALSA: uapi: add new macro SNDRV_AUDIO_QGKI" 2019-11-26 22:06:31 -08:00
qctecmdr
5723b63759 Merge "SoC: soc-core: export function to find components" 2019-11-26 22:06:30 -08:00
Rishabh Bhatnagar
2a0b0b7446 kernel: Create and export kernel headers
Create a header library which export kernel headers.
These headers are needed by modules and userspace libraries.

Change-Id: I0908e2e02ba1edfb569c5abcd0d5e1df72a40324
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
2019-11-26 15:04:54 -08:00
Lina Iyer
68f362a932 drivers: pinctrl: msm: remove redundant call to set handler
The gpiochip_add_data() sets the chained irq handler for the TLMM
summary line. Remove reundant call to set the handler again.

Change-Id: I230f21fdde880407bf84ac73669457aa062a8236
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
2019-11-26 10:33:28 -08:00
Heikki Krogerus
e435184967 usb: typec: ucsi: Optimise ucsi_unregister()
There is no need to reset the PPM when the interface is
unregistered. Quietly silencing the notifications and then
unregistering everything is enough. This speeds up
ucsi_unregister() a lot.

Change-Id: Ib309aa79ee12ebd6a0e299b64046073bd7866a24
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Tested-by: Ajay Gupta <ajayg@nvidia.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-19-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 74ce3e41274805e4a5598f4d98ee4d5160466d07
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:08 -08:00
Heikki Krogerus
d78a8b48c5 usb: typec: ucsi: New error codes
Adding new error codes to the driver that were introduced in
UCSI specification v1.1.

Change-Id: Ia9ed45ada8514866ee1a9fc474df7748eb86b10d
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Tested-by: Ajay Gupta <ajayg@nvidia.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-18-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: e716bb38edb44b6a7dd9b825f57450118b3066ae
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:07 -08:00
Heikki Krogerus
df76aa0442 usb: typec: ucsi: Remove all bit-fields
We can't use bit fields with data that is received or send
to/from the device.

Change-Id: I20467156173540cb8306ec15bdbb5ed7f17e1959
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Tested-by: Ajay Gupta <ajayg@nvidia.com>
Link: https://lore.kernel.org/r/20191104142435.29960-17-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 3cf657f07918bc2d9295bf896a71bd31e407bb0c
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:07 -08:00
Heikki Krogerus
43c6e4c137 usb: typec: ucsi: Remove struct ucsi_control
That data structure was used for constructing the commands
before executing them, but it was never really useful. Using
the structure just complicated the driver. The commands are
64-bit wide, so it is enough to simply fill a u64 variable.
No data structures needed.

This simplifies the driver considerable and makes it much
easier to for example add support for big endian systems
later on.

Change-Id: I3533a2c24c3a91ea51e2ebdefe6bc2351223ca0b
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Tested-by: Ajay Gupta <ajayg@nvidia.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-16-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 470ce43a1a810117f09aa4bcad6ca2be6b29c8d1
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:07 -08:00
Heikki Krogerus
0765951ca1 usb: typec: ucsi: Remove the old API
The drivers now only use the new API, so removing the old one.

Change-Id: I716f18549d9f3efcbd47ef51ca371d37e4a5f3df
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Tested-by: Ajay Gupta <ajayg@nvidia.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-15-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 2ede55468ca8cc236da66579359c2c406d4c1cba
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:07 -08:00
Heikki Krogerus
3884275a90 usb: typec: ucsi: ccg: Move to the new API
Replacing the old "cmd" and "sync" callbacks with an
implementation of struct ucsi_operations. The interrupt
handler will from now on read the CCI (Command Status and
Connector Change Indication) register, and call
ucsi_connector_change() function and/or complete pending
command completions based on it.

Change-Id: I9dfdc70b10544d6e65a0d289491be7cd9232e4af
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Tested-by: Ajay Gupta <ajayg@nvidia.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-14-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: e32fd989ac1c45f993fbe89ad0a89aa9ea6993d2
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:06 -08:00
Heikki Krogerus
d0d25f124e usb: typec: ucsi: acpi: Move to the new API
Replacing the old "cmd" and "sync" callbacks with an
implementation of struct ucsi_operations. The ACPI
notification (interrupt) handler will from now on read the
CCI (Command Status and Connector Change Indication)
register, and call ucsi_connector_change() function and/or
complete pending command completions based on it.

Change-Id: Ia7c8e9e87f23ce6a70a657bf0e053345caf543cc
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-13-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: f56de278e8ec963637995944156527162dcf3021
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:06 -08:00
Heikki Krogerus
9609b59d23 usb: typec: ucsi: Simplified registration and I/O API
Adding more simplified API for interface registration and
read and write operations.

The registration is split into separate creation and
registration phases. That allows the drivers to properly
initialize the interface before registering it if necessary.

The read and write operations are supplied in a completely
separate struct ucsi_operations that is passed to the
ucsi_register() function during registration. The new read
and write operations will work more traditionally so that
the read callback function reads a requested amount of data
from an offset, and the write callback functions write the
given data to the offset. The drivers will have to support
both non-blocking writing and blocking writing. In blocking
writing the driver itself is responsible of waiting for the
completion event.

The new API makes it possible for the drivers to perform
tasks also independently of the core ucsi.c, and that should
allow for example quirks to be handled completely in the
drivers without the need to touch ucsi.c.

The old API is kept until all drivers have been converted to
the new API.

Change-Id: Ica25b44b228a96adbc2bd397d74978db6074c82e
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Tested-by: Ajay Gupta <ajayg@nvidia.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-12-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: bdc62f2bae8fb0e8e99574de5232f0a3c54a27df
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:06 -08:00
Heikki Krogerus
088f52f15f usb: typec: Remove the callback members from struct typec_capability
There are no more users for them.

Change-Id: Ia8f006d7c052326188a1249117daf243066aaeaa
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-9-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 8c038ea8b65fc803cd35423b8a1ff7057dd52f8b
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:05 -08:00
Heikki Krogerus
929d75d207 usb: typec: ucsi: Start using struct typec_operations
Supplying the operation callbacks as part of a struct
typec_operations instead of as part of struct
typec_capability during port registration.

Change-Id: I51ad090a7551096558f921cf5f347d4871ea769f
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-7-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 6df475f804e62887f5d2132832ecabe6e596cd1c
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:05 -08:00
Heikki Krogerus
06d4ed6096 usb: typec: tps6598x: Start using struct typec_operations
Supplying the operation callbacks as part of a struct
typec_operations instead of as part of struct
typec_capability during port registration. After this there
is not need to keep the capabilities stored anywhere in the
driver.

Change-Id: Ib7bd4d899925522dbea297e25a50d8bdd3aa79e2
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-6-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 1007dda3be1c9f924746f892c094219be250928e
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:05 -08:00
Heikki Krogerus
84ef8818a8 usb: typec: tcpm: Start using struct typec_operations
Supplying the operation callbacks as part of a struct
typec_operations instead of as part of struct
typec_capability during port registration.

Change-Id: I6eb7c3e87c8704e4d9ccae1d6e615bb1e492fd81
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-5-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 00ec21e58dc63dd899a1e1cb3f1d44fa18ca22dd
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:04 -08:00
Heikki Krogerus
328c602a09 usb: typec: Separate the operations vector
Introducing struct typec_operations which has the same
callbacks as struct typec_capability. The old callbacks are
kept for now, but after all users have been converted, they
will be removed.

Change-Id: Idfad5265f42ee2fcf6dbd0e109ed4f98b7563cb0
Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20191104142435.29960-4-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 46310e4dade2bc3b574d540e421e3aa9f32cfd5f
Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2019-11-25 10:07:04 -08:00