Commit graph

883,946 commits

Author SHA1 Message Date
Vijayanand Jitta
ff60d1d2db ion: add ion pages to NR_UNRECLAIMABLE_PAGES
add the ion pages allocated through system and system secure
heaps to NR_UNRECLAIMABLE_PAGES memory counter.

Change-Id: I4bf846fcd0454a5ba0e1cad08e9b7e882f92ceac
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
[guptap@codeaurora.org: Add Kconfig entry to prevent ABI breakages in GKI]
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
2020-06-05 14:38:07 +05:30
Vijayanand Jitta
bfe3637f89 mm: introduce NR_UNRECLAIMABLE_PAGES
Introduce NR_UNRECLAIMABLE_PAGES memory counter which accounts
the pages that cannot be reclaimed under memory pressure.

Change-Id: I9afe50537b0d3c2e7ffc07916b23cce4329e3679
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
[guptap@codeaurora.org: split resident_page_types change]
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
2020-06-05 14:38:07 +05:30
Vinayak Menon
c99ba85df8 mm: add rss counter for unreclaimable pages
Add a per mm rss counter to hold the unreclaimable
pages. This can include the pages allocated by a
task and shared with hardware for DMA etc.

Change-Id: Iec77d69eca0a4f8f6e23f866c80c0143620fcaf2
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
[guptap@codeaurora.org: update resident_page_types dependency, add kconfig]
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
2020-06-05 14:38:06 +05:30
Prakruthi Deepak Heragu
64e68fd529 aarch64: ABI: Update abi snapshot for enabling CFI in enforcement mode
Update the ABI snapshot as well as the whitelist when CFI_PERMISSIVE
flag is turned off to put CFI in enforcing mode.

Change-Id: If5fcff638231ae5bc081ea018134edde804b6c78
Signed-off-by: Prakruthi Deepak Heragu <pheragu@codeaurora.org>
2020-06-01 17:21:29 -07:00
qctecmdr
bf4eaa44f7 Merge "regulator: core: avoid deadlock in QTI addition to regulator_unregister()" 2020-05-31 02:33:19 -07:00
qctecmdr
10cbadfc18 Merge "net: qrtr: Allocate workqueue before kernel_bind" 2020-05-31 02:33:18 -07:00
qctecmdr
325fc4d843 Merge "memory_dump: resolve the issue of configuring core_reg_numer" 2020-05-31 02:33:18 -07:00
qctecmdr
51b9ea9e84 Merge "mhi: core: Enable both time synchronization methods to co-exist" 2020-05-31 02:33:18 -07:00
qctecmdr
b7180d867f Merge "soc: qcom: spcom: add channel name for each txn_id print" 2020-05-31 02:33:17 -07:00
qctecmdr
9d0c2bcade Merge "msm: cvp: stop session queue when session closed" 2020-05-31 02:33:16 -07:00
qctecmdr
24999171d7 Merge "arm64: defconfig: Enable config to add QTI specific code" 2020-05-31 02:33:16 -07:00
qctecmdr
57e93d279c Merge "arm64: defconfig: Disable CONFIG_CFI_PERMISSIVE flag" 2020-05-31 02:33:16 -07:00
qctecmdr
af2d4f76fd Merge "pwm: qti-lpg: Read tick duration via device tree" 2020-05-30 04:42:14 -07:00
qctecmdr
9ee4a9e6ec Merge "PM / devfreq: icc: add support for L3 BW devices" 2020-05-30 04:42:14 -07:00
qctecmdr
af28a1662f Merge "clk: qcom: clk-alpha-pll: Add support for Lucid EVO PLL print registers" 2020-05-30 04:42:13 -07:00
Guru Das Srinagesh
fe41af3d8f pwm: qti-lpg: Read tick duration via device tree
Tick duration defines the tick duration (in microseconds) for the clock
that PPG uses which is used to program the ramp step duration for the
pattern. If unspecified, the default value is 7800 us.

Change-Id: I7cd96d74a39becffbf9a008610c0092ad2462446
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2020-05-29 12:17:20 -07:00
Amir Vajid
7e0c383b72 PM / devfreq: icc: add support for L3 BW devices
Add support for L3 bandwidth devices that vote in units
of MBPS. This includes creating OPP tables in units of
MBPS as well as requiring that these devices define a
width in DT which is used to convert the votes to Hz
before submitting them to the L3 provider.

Change-Id: I47a569f76b9e57caac57788592784921c689505b
Signed-off-by: Amir Vajid <avajid@codeaurora.org>
2020-05-28 21:27:20 -07:00
Yuanfang Zhang
376a008159 memory_dump: resolve the issue of configuring core_reg_numer
When the new core_reg_number value is the same as previous value,
writing to core_reg_number node cannot exit normally, this
change resolve this issue.

Change-Id: I6cbb301fc77a630aa9f01a68341c9510fdbd5c0f
Signed-off-by: Yuanfang Zhang <zhangyuanfang@codeaurora.org>
2020-05-29 10:26:35 +08:00
David Collins
29c128cfd2 regulator: core: avoid deadlock in QTI addition to regulator_unregister()
regulator_unregister() calls rdev_free_qti_debugfs() with the
regulator_list_mutex held.  rdev_free_qti_debugfs() then calls
regulator_put() which attempts to lock regulator_list_mutex again.
This leads to deadlock.

Modify regulator_unregister() and rdev_free_qti_debugfs() so that
mutex deadlock cannot occur.

Change-Id: I12bb4c704f7d9332e790c707aba854e224474bdb
Signed-off-by: David Collins <collinsd@codeaurora.org>
2020-05-28 17:02:13 -07:00
Chris Lew
5b40b16f3c net: qrtr: Allocate workqueue before kernel_bind
A null pointer dereference in qrtr_ns_data_ready() is seen if a client
opens a qrtr socket before qrtr_ns_init() can bind to the control port.
When the control port is bound, the ENETRESET error will be broadcasted
and clients will close their sockets. This results in DEL_CLIENT
packets being sent to the ns and qrtr_ns_data_ready() being called
without the workqueue being allocated.

Allocate the workqueue before setting sk_data_ready and binding to the
control port. This ensures that the work and workqueue structs are
allocated and initialized before qrtr_ns_data_ready can be called.

Change-Id: Ib20aec56414789905ccd80a91290fca9e3c29ead
Signed-off-by: Chris Lew <clew@codeaurora.org>
2020-05-28 14:20:36 -07:00
Guru Das Srinagesh
6d56178cb7 pwm: qti-lpg: Adapt to two-nvmem PBS triggering scheme
PM8350C PWM PPG does away with the need to directly manage the PBS
triggering via the PBS driver APIs by using a single register write to
an SDAM register instead. A PBS sequence thus triggered should be duly
cleared before next use. The existing scheme is also retained for
backward compatibility with targets that use a single-nvmem scheme.

The new PBS triggering scheme also expects a change in the way the high
and low indices pertaining to the pattern are specified.

Change-Id: I7d07dc611f98ce32cf5e8ba7de758fbbc3513f4b
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2020-05-28 13:38:17 -07:00
Konstantin Dorfman
49de023c2f soc: qcom: spcom: add channel name for each txn_id print
This change add printing of the channel name for each
sequence number print.

Change-Id: I7a5e5ac57eba9d637d48387849f1ba915096215b
Signed-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>
2020-05-28 06:37:24 -07:00
Bhaumik Bhatt
419686cc96 mhi: core: Enable both time synchronization methods to co-exist
Due to co-existence of both time synchronization methods on a
platform, it is likely that a doorbell method response can be pending
while another host client requests for time using the MMIO or
synchronous method. Wait for completion of the doorbell method and
return the local and remote times from that request as the device may
not be able to handle both requests or host is likely to end up reading
corrupted time values. Also, ensure the doorbell method request is done
while holding the bus vote so the host stays awake and receives the
response as soon as possible.

Change-Id: If876905eb523fd65f3758f13b75c035de4108d8d
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
2020-05-27 19:15:51 -07:00
Bhaumik Bhatt
453fb4d199 mhi: core: improve time synchronization events handling
Validate event ring accesses before walking special event rings and
update processing time synchronization such that a doorbell is rung and
future requests are queued until a response is received. Also, ensure
events are only processed when they are pending.

Change-Id: Ib8c9385530f822af3e53efb96b82c0f26c3438b7
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
2020-05-27 19:14:42 -07:00
Bhaumik Bhatt
16caf4dcb7 mhi: core: block fast suspends on controller device bus vote
Currently only a pending packets check is used to block fast
suspends. Since it does not exactly reflect what the core
driver intends to do, allow a bus vote to the controller device
to block fast suspends as well.

Change-Id: I31266d296e855027f6b49b2dcfe4606bb48ac221
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
2020-05-27 19:11:27 -07:00
qctecmdr
e1bdeb4100 Merge "ASoC: pcm: QGKI startup sequence for playback and capture" 2020-05-27 18:54:59 -07:00
qctecmdr
cdda674ede Merge "sched: walt: Improve the scheduler" 2020-05-27 18:54:59 -07:00
qctecmdr
f7d26b82cb Merge "bluetooth: add support for retrieving power resource values" 2020-05-27 18:54:59 -07:00
qctecmdr
0fdab7244a Merge "usb: dwc3: gadget: Rate limit ep_queue() error message" 2020-05-27 18:54:58 -07:00
qctecmdr
ac8999b71b Merge "Kconfig: Add menu choice option to reclaim virtual memory" 2020-05-27 18:54:58 -07:00
qctecmdr
fdb9672509 Merge "soc: altmode: Detect when remote subsys fails to respond" 2020-05-27 18:54:58 -07:00
qctecmdr
105ee3f8c1 Merge "aarch64: ABI: add symbols to qcom whitelist" 2020-05-27 18:54:58 -07:00
qctecmdr
a52031d060 Merge "soc: qti_battery_debug: Remove CONFIG_DEBUG_FS dependency" 2020-05-27 18:54:57 -07:00
Guru Das Srinagesh
665d78a15c pwm: qti-lpg: Support two-nvmem PPG scheme
On PMICs such as PM8350C, the lookup table containing the pattern data
is stored in a separate nvmem device from the one where the per-channel
data is stored.

Add two separate nvmems to handle this case while maintaining backward
compatibility for those targets that use only a single nvmem device.
Differentiate between the two schemes via an enum.

Change-Id: I2826a9acc8cee4d83b6cf2bf2d4d60b1ec3b67d7
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2020-05-27 18:39:07 -07:00
Siddharth Gupta
45c1f3c5da uapi: Fix QCOM headers to work with UAPI_HEADER_TEST
UAPI_HEADER_TEST ensures that all the uapi headers can be built as
standalone files which facilitates their use in the wider world. Fix
headers to use common kernel definitions.

Change-Id: Id20599d5cf1c20150ad90752bccdcf2c218b35da
Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org>
2020-05-27 14:56:27 -07:00
Satya Rama Aditya Pinapala
5b0306566e aarch64: ABI: add symbols to qcom whitelist
Change adds unmap_kernel_range, get_vm_area, and
ioremap_page_range to qcom whitelist and update the
ABI snapshot.

Change-Id: I34e3a976f68281b7937719f62379002cb7bf6d93
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2020-05-27 14:15:52 -07:00
Umesh Vats
ad03fb1739 bluetooth: add support for retrieving power resource values
Added support for retrieving and logging values for various power
resources used by bluetooth driver.

Change-Id: Ia92d6570ef93ca76fc68546e6466df80ec1cf397
Signed-off-by: Umesh Vats <uvats@codeaurora.org>
2020-05-27 09:49:46 -07:00
Hemant Kumar
e3df032c05 arm64: defconfig: Enable config to add QTI specific code
Enable PCI_QTI config flag to add QTI specific code to upstream
PCI driver.

Change-Id: Ifb066c22faddaef96eaba57c14cc56ac9e79245e
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2020-05-27 09:31:47 -07:00
Yue Ma
df93accff0 cnss2: Set no_d3hot flag to avoid PCIe framework saving config space
CNSS driver is already saving PCIe config space as part of suspend and
resume. There is no need for PCIe framework to do it again. This is
able to improve suspend/resume KPI.

Change-Id: I940959ec93c435b9fd711c5e75a8bbc40ec916ad
Signed-off-by: Yue Ma <yuem@codeaurora.org>
2020-05-27 09:31:42 -07:00
qctecmdr
17439c2c67 Merge "soc: qcom: Add VTCM handling to cdsprm driver" 2020-05-27 08:45:22 -07:00
qctecmdr
edebc0ccbb Merge "Revert "arm: dma: Allow CMA pages to not have a kernel mapping"" 2020-05-27 08:45:22 -07:00
Susheel Khiani
410c74bab1 Kconfig: Add menu choice option to reclaim virtual memory
Add menu choice options for reclaiming virtual
memory belonging to any subsystem expected to have
a lifetime of the entire system. By default virtual
memory is not reclaimed.

Change-Id: I1b8a1492062bb9532700122878618989e5148647
Signed-off-by: Neeti Desai <neetid@codeaurora.org>
Signed-off-by: Susheel Khiani <skhiani@codeaurora.org>
Signed-off-by: Zhenhua Huang <zhenhuah@codeaurora.org>
Signed-off-by: Qingqing Zhou <qqzhou@codeaurora.org>
2020-05-27 08:06:31 -07:00
Charan Teja Reddy
d18971d0d4 dma-mapping: add i/o coherency support for 32bit
Add the I/O coherency support for devices that can issue a cache
coherent transactions.

Change-Id: I01b1dca4d72395df41ac5b882dcd3fd75a682b8c
Signed-off-by: Charan Teja Reddy <charante@codeaurora.org>
Signed-off-by: Vishwanath Raju K <vishk@codeaurora.org>
Signed-off-by: Qingqing Zhou <qqzhou@codeaurora.org>
2020-05-27 23:01:54 +08:00
Bavyasritha Alahari
694724873c soc: qcom: Add VTCM handling to cdsprm driver
VTCM handling in cdsp request manager, reads the device
tree as part of platform driver registration notifier and
sends the data to guestos driver via rpmsg channel and
exposes methods to override partition mapping via
debugfs node.

Change-Id: Ie28e750f0a27f35ec114278aa0b87952ecda70f6
Acked-by: Sreekanth Gande <sgande@qti.qualcomm.com>
Signed-off-by: Bavyasritha Alahari <alahari@codeaurora.org>
2020-05-27 16:25:46 +05:30
Qingqing Zhou
cce1d3c648 Revert "arm: dma: Allow CMA pages to not have a kernel mapping"
This reverts commit 0b06cd5ca5.

The meaning of DMA_ATTR_NO_KERNEL_MAPPING changes, it will not remove
kernel mapping, just return the page pointer directly, so make 32 bit
align with 64 bit.

Change-Id: I905f2faa11681dff745191928345fef00c9ec796
Signed-off-by: Qingqing Zhou <qqzhou@codeaurora.org>
2020-05-27 18:17:19 +08:00
qctecmdr
8f9e82655d Merge "net: qrtr: Ignore ENODEV failures in ns" 2020-05-27 00:13:42 -07:00
qctecmdr
c05ee13d5e Merge "NFC: Enable NFC driver in the GKI build" 2020-05-27 00:13:42 -07:00
qctecmdr
c606037c2d Merge "mm: Remove shrink_page" 2020-05-27 00:13:41 -07:00
George Shen
917cd8adfa msm: cvp: stop session queue when session closed
There is a chance CVP application closes a session without
stopping it first. The change will ensure there is no resource
leakage in above case.

Change-Id: I2b93af11a47eda8de81f3d8c0f054e3319e48802
Signed-off-by: George Shen <sqiao@codeaurora.org>
2020-05-26 23:48:03 -07:00
Jack Pham
ad718dac47 usb: dwc3: gadget: Rate limit ep_queue() error message
In case of a soft disconnect the controller will be halted
via dwc3_gadget_run_stop(). However, a function driver might
be unaware of this and could still be continuing to call
usb_ep_queue() in a different process. Since pullups_connected
is false, this results in a dev_err() to be printed and could
happen quite frequently before the function's disconnect or
unbind callbacks are finally notified. Rate limit this error
message to avoid flooding the kernel log.

Change-Id: If5299cdfd7eee13bb51a8cf29917d9674d0a7c9b
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2020-05-26 23:33:06 -07:00