TTY: msm_smd_tty: Fix simultaneous open/close race condition

smd_tty_close currently has a variable that depends on a race
condition with tty_port_open. This causes a null-pointer dereference
when the same port is simultaneously being opened/closed.

Use data from a static array instead of the variable to eliminate
the race condition.

CRs-Fixed: 624398
Change-Id: Ie55d37feaadd3a15f64e18501cd3af19145dbc8e
Signed-off-by: Steven Cahail <scahail@codeaurora.org>
cfg80211: unblock user hint when cfg80211_regdom is intersected

If the driver is loaded when cfg80211_regdom is intersected then
user hint will fail for the first time since cfg80211 does not
have a check to see if cfg80211_regdom is intersected. Add
a check to see if cf80211_regdom is intersected and allow the
user hint to be processed.

Change-Id: Iba9cdd32470e29d35d3bb35012eb404b7c78d601
CRs-Fixed: 639538
Signed-off-by: Mihir Shete <smihir@codeaurora.org>
ARM: dts: msm: Add batt-pres-status node to MSM QPNP-BMS devices

Add the bat_pres_status nodes to the qpnp-bms device node in order to
know whether the battery has been removed when the device is powered
off.

Change-Id: I2b71d9c8380a87b3f5b9871d5e42ba3e483cab05
Signed-off-by: Xiaozhe Shi <xiaozhes@codeaurora.org>
msm: vidc: add input check for hfi q6 function

The input parameters may be null. This change adds input checks at
function q6_hfi_iface_eventq_read.

CRs-Fixed: 606516
Change-Id: I801a9d3249e9b97fa218fc29bc3a2a0e7a0d4d3f
Signed-off-by: Jorge Solano Altamirano <jsolano@codeaurora.org>
USB: dwc3-msm: Enable async irq wakeup capability only if required

If driver is depending on PMIC for VBUS and ID events, then async
interrupt is not required to set wakeup capable during cable
disconnect or when dcp is connected. Otherwise this interrupt can be
fired before PMIC notification during system suspend and could mess up
run time pm counters. Hence enable async irq wakeup capability
during bus suspend and disable it during device resume.

CRs-Fixed: 634833
Change-Id: Ifea0150ee947823ba4f8183af911e150fde61f1f
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
msm: vidc: recover from firmware fatal error

If firmware goes in to bad state, the video driver
should try to restart the firmware, so that subsequent
new video sessions can play fine without error.
Previous to this change, the video driver would
unload the firmware only after all open instances
have been closed by the client. If the client fails
to close any of the open instances, then firmware
would not be unloaded and continue to remain in bad
state. This would fail all new video sessions and could
be overcome only after the device was reset.

Change-Id: Ifadb2ecf6e7021ed60ee3b0992e4d1950f8ca53d
Signed-off-by: Arun Menon <avmenon@codeaurora.org>
Merge "msm: vidc: recover from firmware fatal error"
msm: tspp: Request IRQs on first use

Reserving the IRQs on driver initialization is redundant and should
be done only when client first uses the driver. Also, it may prevent
transition to power saving modes.
Move IRQ requests to be done when first stream is opened, and free
when last stream is closed.

Change-Id: Ifdb7099139f5eb775fcdd61dc0eece5c9959a050
Signed-off-by: Gilad Broner <gbroner@codeaurora.org>
Merge "USB: dwc3-msm: Enable async irq wakeup capability only if required"
msm: vidc: queue output-1 buffers to FW

While seeking, FW returns all the buffers to host.
In multi-stream usecase like downscaling, the o/p
buffers need to be re-queued back to FW.

Change-Id: I5ea8534c06b3e48dadd4d73ab4432a13687a99c1
CRs-Fixed: 631827
Signed-off-by: Vikash Garodia <vgarodia@codeaurora.org>
Merge "msm: tspp: Request IRQs on first use"
qseecom: add support to clear key for per file encryption

Make a KMS change to support just clear pipe key without deleting it
from ssd storage. Key id definitions for FDE and PDE are also updated.

Change-Id: I7c4804902a7a734087374c81ff0fd95655d84429
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
msm: subsystem_restart: Add notification to indicate powerup failure

Currently, if powering on a subsystem during restart fails, a
kernel panic is trigerred immediately.
Instead, send a 'powerup failure' notification to the drivers
that have registered for notifications regarding the subsystem.
The drivers can then do the necessary cleanup/logging before a
kernel panic is triggered.

Change-Id: I252f221ee009436b7075c203b2a3de45e395c1b0
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
msm: ssr: Send notification during a cold boot failure

Currently, when powering on a subsystem during cold boot fails,
the drivers that have registered for notifications about the
subsystem are not intimated.
Send the 'powerup failure' notification to these drivers to give
them an opportunity to do the necessary cleanup/logging at their
end before the subsystem is shutdown.

Change-Id: I09c10d5ead7dc153ed3ce3caf8f1c3442a66eb96
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
wcnss: Log debug registers when receives certain notification

If powering on a subsystem during restart fails, SSR framework will send
a "powerup failure" notification to the subsystem. Add the support that
WCNSS platform driver will register to listen the notifications and if
receives "powerup failure" notification, it will log the debug registers.

Change-Id: I0ae8a5ee96122d71c7a86711044f6b07e400b62c
Signed-off-by: Yue Ma <yuem@codeaurora.org>
wcnss: add API to check if wcnss is undergoing an SSR

Wlan driver should not read registers from wcnss or
try to communicate with the chip when it is undergoing
a subsystem-restart. Added an API with the wcnss platform
driver to check if ssr is in progress, this API will be
used by the wlan driver to protect register access and
other prohibited operations.

Change-Id: Ia0d93e774af126d84dbaabf5c36a2c90fdbd58be
CRs-Fixed: 621974
Signed-off-by: Mihir Shete <smihir@codeaurora.org>
Merge "qseecom: add support to clear key for per file encryption"
Merge "msm: subsystem_restart: Add notification to indicate powerup failure"
Merge "msm: ssr: Send notification during a cold boot failure"
Merge "wcnss: Log debug registers when receives certain notification"