If stream registration is invoked while HDCP is still authenticating,
the new stream information may not get sent to the downstream repeater.
Check if stream management is already in progress during stream
registration, and queue another round of stream management if so.
Change-Id: I497e9a4da310870fe792293033f1fb0ce8fbee4c
Signed-off-by: Christopher Braga <cbraga@codeaurora.org>
When HDCP stream management needs to be re-performed, the SDE_HDCP state
machine breaks down and reads or writes to the wrong DPCD HDCP offsets.
This results in an authentication failure, effectively allowing stream
management to succeed only on the first attempt.
Update the SDE_HDCP stream management logic to properly take its current
state into account in re-management scenarios. This will reduce the need
for full re-authentications upon content type updates.
Change-Id: Iebefbb060e49a7082b2d4c9efbed22a83a2a5ec5
Signed-off-by: Christopher Braga <cbraga@codeaurora.org>
Commands to the HDCP protocol layer can fail or block if
executed when the system enters suspend or shutdown.
Protocol layer blockage will occur until the system returns
into a power on state, potentially resulting in deadlocks for
clients who synchronously wait on protocol layer completion.
Asynchronously handle all requests to the protocol module to
ensure that clients can make progress regardless of the state of
the underlying HDCP handler. When an already queued request is
received by the protocol module, that request will be rescheduled
to the back of the queue.
Change-Id: I658dd09a81f21037cd90bbaa5b7d73363472e0b0
Signed-off-by: Christopher Braga <cbraga@codeaurora.org>
This change brings msm display driver including sde,
dp, dsi, rotator, dsi pll and dp pll from base 4.19 kernel
project. It is first source code snapshot from base kernel project.
Change-Id: Iec864c064ce5ea04e170f24414c728684002f284
Signed-off-by: Narendra Muppalla <NarendraM@codeaurora.org>