This reverts commit 09e03e5113
("Perf: arm64: fix disable of pmu irq during hotplug")
This change is being reverted so that it can be replaced
by equivalent functionality from upstream.
CRs-Fixed: 1008368
Change-Id: Ie3140289f1f4dd2bdf0c3fdb315369d763d53b22
Signed-off-by: Jeremy Gebben <jgebben@codeaurora.org>
This reverts commit 6470f7956a
("Perf: arm64: restore registers after reset")
This change is being reverted so that it can be replaced
by equivalent functionality from upstream.
CRs-Fixed: 1008368
Change-Id: Ieaa6da68173aaf31c8a38bce64f1bc46bae957c4
Signed-off-by: Jeremy Gebben <jgebben@codeaurora.org>
This reverts commit 182eeb0c0d
("Perf: arm64: stop counters when going into hotplug")
This change is being reverted so that it can be replaced
by equivalent functionality from upstream.
CRs-Fixed: 1008368
Change-Id: Ibf007132366486ae70c1d919f32e933744a1721e
Signed-off-by: Jeremy Gebben <jgebben@codeaurora.org>
This reverts commit 38dccacd2b
("perf: replace cpu_up/down with device_online/offline")
This change is being reverted so that it can be replaced
by equivalent functionality from upstream.
CRs-Fixed: 1008368
Change-Id: Ic19addb342e20c6e87f7781a02bed4f0094e80c5
Signed-off-by: Jeremy Gebben <jgebben@codeaurora.org>
Add handling for extended header packets going
to the DCI stream. Set new bit in feature mask
to signal support for extended headers over DCI.
CRs-Fixed: 998973
Change-Id: I8badb0aa9e6ff604d8d0b2a932df0ea5ef6a70f9
Signed-off-by: Chris Lew <clew@codeaurora.org>
Update copyright separately for this file so that the subsequent
change can be propagated without merge conflicts.
CRs-Fixed: 991792
Change-Id: Ib1af02d00e438f48619eacee291b1875671978e1
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
A crash is observed when a decrypted packet is processed in receive
path. get_rps_cpus() tries to dereference the skb->dev fields but it
appears that the device is freed from the poison pattern.
[<ffffffc000af58ec>] get_rps_cpu+0x94/0x2f0
[<ffffffc000af5f94>] netif_rx_internal+0x140/0x1cc
[<ffffffc000af6094>] netif_rx+0x74/0x94
[<ffffffc000bc0b6c>] xfrm_input+0x754/0x7d0
[<ffffffc000bc0bf8>] xfrm_input_resume+0x10/0x1c
[<ffffffc000ba6eb8>] esp_input_done+0x20/0x30
[<ffffffc0000b64c8>] process_one_work+0x244/0x3fc
[<ffffffc0000b7324>] worker_thread+0x2f8/0x418
[<ffffffc0000bb40c>] kthread+0xe0/0xec
-013|get_rps_cpu(
| dev = 0xFFFFFFC08B688000,
| skb = 0xFFFFFFC0C76AAC00 -> (
| dev = 0xFFFFFFC08B688000 -> (
| name =
"......................................................
| name_hlist = (next = 0xAAAAAAAAAAAAAAAA, pprev =
0xAAAAAAAAAAA
Following are the sequence of events observed -
- Encrypted packet in receive path from netdevice is queued
- Encrypted packet queued for decryption (asynchronous)
- Netdevice brought down and freed
- Packet is decrypted and returned through callback in esp_input_done
- Packet is queued again for process in network stack using netif_rx
Since the device appears to have been freed, the dereference of
skb->dev in get_rps_cpus() leads to an unhandled page fault
exception.
Fix this by holding on to device reference when queueing packets
asynchronously and releasing the reference on call back return.
v2: Make the change generic to xfrm as mentioned by Steffen and
update the title to xfrm
CRs-Fixed: 980550
Change-Id: I265259c5c79efef1d79f31c4f00c6557250434b1
Suggested-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Jerome Stanislaus <jeromes@codeaurora.org>
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Git-commit: 071d36bf21bcc837be00cea55bcef8d129e7f609
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
This patch addresses two issues
a) The original GSO patch had a condition to check
for padding on a non linear skb and the egress
device, but the device name was incorrect leading
to the check always failing. This patch eliminates
the need for the check completely.
b) It is possible that the last frag in a GSO frame
would not be size aligned to a word boundary. In
this and all cases involving a non linear skb
frame we should skip padding. The driver can
expect a non linear packet when Scatter Gather
feature is enabled on the device. This patch
does just that.
Change-Id: Ifea5b1ae26b154bb047044e4bc3ad579d0da7f6d
CRs-fixed: 990751
Acked-by: Ashwanth Goli <ashwanth@qti.qualcomm.com>
Signed-off-by: Sharat Masetty <smasetty@codeaurora.org>
Change the log level from high to medium when userspace calls an
unknown IOCTL on an rmnet data device. This log message is not
very useful and often causes log spam in the serial device
output which may occasionally lead to watchdog timeouts.
CRs-fixed: 1000453
Change-Id: I50e038d838eded30ee8304fefb2c13328eaf9683
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
GPIO35 belongs to the NORTH tlmm block. Fix the base address for
it.
CRs-Fixed: 1008481
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
Change-Id: I76d4c0366a090c4ef6d67df876231bdf50f6dbfa
PMIC bus arbiter v3 supports 512 SPMI peripherals. Add the v3 operators to
support this new arbiter version.
CRs-Fixed: 1001770
Change-Id: Ic36b8e3c01af2fde1827a53c8c52baed240c238e
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Currently, the physical addresses of the SPMI bus arbiter blocks are
mapped to the trimmed address range for each block. Map the entire block
instead.
CRs-Fixed: 1001768
Change-Id: I36f0bd69765d6e47fe76bbccc9550de7056f8640
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Timeout is redundant in qmi_register_ind_cb() and is delaying sending
notification ack back to service registry. Also fix a misleading log.
CRs-Fixed: 1006763
Change-Id: I586e34c542b8dccd6a3b9a50019b3d11b371f46f
Signed-off-by: Puja Gupta <pujag@codeaurora.org>
The number macro blocks need to be set based on the intra refresh mode
else video hardware might see different values which leads to improper
output. Fix the issue by properly assigning the number of macro blocks
based on Intra Refresh mode.
Change-Id: I4830fd3af4cdeb6fcef5f34d5d8dd41d44a73b24
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
VFE hardware needs additional clocks, add them for the specified
chip.
CRs-Fixed: 987962
Change-Id: Ibb7f3477d5030bcb4ae3b28cda5afc612063b2b7
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
Fix the offset of the sdc2_pull_ctrl register.
CRs-Fixed: 1006865
Change-Id: I549baca7a69ff777e1a30a95e695cbd530035858
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
Add an option to rwref locks that allow the lock functions
to spin when acquiring the lock. Change completion variable
to use waitqueues for sleep functionality.
Change rwref reference function calls to use locking functions
where code reads or writes the context state.
CRs-Fixed: 988266
Change-Id: Ib2908b2495b1b01a6a130033143a7da8e5c0c231
Signed-off-by: Chris Lew <clew@codeaurora.org>
Update the locking hierarchy to reflect the current and
future use-cases. This helps in avoiding deadlock due
to out-of-order locking scenario.
CRs-Fixed: 988266
Change-Id: Ib40da2ecd413e7712cacc9663394e725ebd64a0a
Signed-off-by: Chris Lew <clew@codeaurora.org>
Change the PMIC names to use PMCOBALT and PMICOBALT.
Change-Id: Ia2c9be4ec36f522968364ebb66190278cfbb9244
CRs-Fixed: 1007932
Signed-off-by: David Collins <collinsd@codeaurora.org>
After driver has received session_end_done from firmware,
it no longer needs to retain the session information, since
firmware has already cleaned up the session. If the driver
sends any further session command to firmware, there will
not be any valid response from firmware. Ensure this by cleaning
up the session as soon as session end is received.
CRs-Fixed: 993591
Change-Id: Ia7517c0e6beab1178d70b72b3f5c0b512b400bd8
Signed-off-by: Arun Menon <avmenon@codeaurora.org>
Venus firmware reports the crop dimensions for
each FBD in the extra data buffer. This change is
needed to support the new extra data type -
MSM_VIDC_EXTRADATA_OUTPUT_CROP.
CRs-Fixed: 999551
Change-Id: I3d1aa4a44701192e4bd85bdee29d6f2a49b9e5a7
Signed-off-by: Arun Menon <avmenon@codeaurora.org>
Calculate GSI ring length based on the input parameter to
setup pipe API.
Change-Id: I151400624f374262a955a04d211a96c43feb6d98
CRs-Fixed: 996292
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Use IPA driver IPC buffer for IPC logging for IPA USB.
CRs-Fixed: 1005492
Change-Id: If127a18f70cb13f98d8d5443e0c3b617d2601954
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Add IPC logging support for IPA resource Manager.
IPC logging will be stored in the same log buffer
as IPA IPC log.
CRs-Fixed: 1005492
Change-Id: Id2f1a32ee61e894fe78d5efcd76edded19becd0b
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Use IPA driver IPC buffer for IPC logging for IPAHAL.
CRs-Fixed: 1005492
Change-Id: Iee4f6e7b5da3ca27e9ef619bfb2bacc45970d3cc
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
for data path and other frequent log prints, IPA driver is
using a debugfs trigger to enable those.
This change is an optimization to allocate IPC resources only
when needed instead of on boot up.
CRs-Fixed: 1005492
Change-Id: I6e7ac15ea7256c18e4174de56adb532ab6c6b0d0
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Currently we're disabling clocks in the same order in which we enable
them, but some clocks have dependencies and ordering requirements so we
should actually be disabling them in reverse order. Do it.
CRs-Fixed: 1000848
Change-Id: Ie01df24b72a3247a24ab6fbd7a90ec8cfee7236f
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
Set voltage and current specifications for LDOs.
Change-Id: I6e666390ddbdd8128b6ebff8e2deb8c85cf35b21
Signed-off-by: Alex Sarraf <asarraf@codeaurora.org>
Add device tree binding doc for the qpnp-haptic driver.
Change-Id: I866eb6915717ce54c52061a22e29c1dfc88c1c7b
Signed-off-by: Jing Lin <jinglin@codeaurora.org>
Add device tree info to enable WLED on Cobalt.
Change-Id: I8002e61887e11ae15c5a503d9caedc880d56d952
Signed-off-by: Chun Zhang <chunz@codeaurora.org>
Signed-off-by: Jing Lin <jinglin@codeaurora.org>
Cobalt CDP and MTP are equipped with Synaptics S3528 touchscreen.
Add in device tree information to enable touchscreen on these
platforms.
Change-Id: Iff4c24064312501221c1d5abfab49e11a94f9197
Signed-off-by: Chun Zhang <chunz@codeaurora.org>
Signed-off-by: Jing Lin <jinglin@codeaurora.org>
Enable the serial bus drivers [I2C/SPI/HS-UART].
Change-Id: Ia56b436c026927d2b7015b004e51b44be1450519
Signed-off-by: Girish Mahadevan <girishm@codeaurora.org>
Add device tree entries for i2c, spi, dma and uart.
All device entries are disabled by default and
allow to enable the required instances
in the main platform dtsi file.
Change-Id: I392bca629cfa87343f3a82ed13f48bafba592a51
Signed-off-by: Ankit Gupta <ankgupta@codeaurora.org>
Signed-off-by: Girish Mahadevan <girishm@codeaurora.org>
Add interrupt and clock gpios for wcd9335 codec on msmcobalt
target. These changes will provide interrupts from the codec
and clock to the codec.
Change-Id: I4bd278c9f6e22cdaeed012d0d0d6314acfacd36e
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Update the state of any power modules that are enabled during
the probe when HDMI is the primary panel and continuous splash is
enabled. This allows the HDMI transmitter core to correctly power
on/off modules during states transitions such as those associated
with runtime suspend and resume.
Change-Id: If2f4fb5837c0a0a380d95be8292b8d5064eaec0f
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
Send the FB registered event before initializing MDP in order to
allow the panel driver to complete any internal initialization
before MDP operations begin. For example, in the case of HDMI
panels, this will ensure that the Hot Plug Detection (HPD)
circuitry is enabled and that the HDCP libraries are loaded
before data is transmitted on the link.
Change-Id: Icbf1e0abb937d4196677aa896a5386fbaa8ae034
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
Enable scrambler during handoff scenarios in which there is no
resolution switch from the bootloader to the kernel. Furthermore,
power on the HDMI core before enabling the scrambler to ensure
that there is a smooth transition during the handoff without any
temporary blinks on the panel.
Change-Id: I94dde166dabf2b3260b6cae34bfcdf0e99fe4112
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
Do not toggle the power for HDMI modules during continuous splash
since the power would have been enabled in the bootloader.
Toggling power during handoff can leave the core in a bad state
especially when scrambling is enabled for 4K HDMI modes.
Change-Id: I8279b8933386db184ed2c627cef928321cbc3eea
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
Add a method to convert panel event enumerations to actual event
names in order to aid in debugging.
Change-Id: Iffdf3b974ceaf0cade50d0589a2d5014136fbd69
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
NULL pointer derefernce can happen with variable pipe
struct during pipe intialization. Fix this to add a
check for NULL pointer.
Change-Id: I3241ed89979deb777ca62d0c893afb96926820ee
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
Stale configs are left in layer mixer, when switching between
single/dual mixers. This might cause unexpected issues later.
Reset the configs during wfd destroy, so that it will have clean
LM configs for the next setup.
Change-Id: I3cd3699af1aa63b12e43a9d53ac505235b668e98
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
Fix bit offset in picture parameter set configuration
in dsc based on spec.
Change-Id: I244ad4b1ae3936f4362d6b85f04985a611b82d99
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
There might be a race condition where the early wake-up work item gets
preempted for the stop call when the resource state is already set to
off by the early wake-up. In this condition, the stop call clears the
ctx, leading to issues when the early wake-up work item runs again since
the ctx is not valid any more. Fix this condition by making sure that
stop call always waits for the early wake-up work item to finish.
Change-Id: I64aba71bb4c5602df9a524b77bd8bf3296dda012
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
In AD driver, the AD lock and mdp clk lock are acquired in different
sequences which causes deadlock. This change fixes the issue by
modifying the mutex lock acquiring sequence to always acquire the
mdp clk lock before the AD lock.
Change-Id: I3aa62bf78d296cb68b10013a24816e7016acab65
Signed-off-by: Ping Li <pingli@codeaurora.org>
Some panel don't require backlight to be updated during
unblank and only require update upon first commit. Add
support to update the backlight based on panel specific
property.
Change-Id: I43f33505be5151640ad7dc2ee1a14df8a55a6dfe
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
Add HW_EN2 mode pin control for PMCOBALT regulators L7, L17, and
L25. This ensures that these LDO regulators are switched to
normal power mode when the Bluetooth chip asserts the SW_CTRL
signal.
Change-Id: I57123159b9fade665a775fe060d6cba34f0ec5ad
CRs-Fixed: 1004290
Signed-off-by: David Collins <collinsd@codeaurora.org>
Enable ipa-driver on MSMCobalt to load
ipa-uc and support modem SSR.
Change-Id: I2bc9c0fedefef931ad2bf36841a0226f5dcca3d8
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Fixes compile time failures because of not protecting
CMA related elements with CONFIG_CMA.
Change-Id: I930b7c0ffdce0f1bfc4f8a582a698be16ed44d1f
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>