Currently the sysfs nodes for receiving minimum
encryption level reside within the SDE HDMI driver.
Move the nodes to the misc hdcp driver so that they
are available for use for targets using DRM SDE driver.
Change-Id: I94daa981536e56930f7b15eb0ca7b895b9bc9c44
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Add the HDCP 2.2 module for DRM HDMI.
Call the HDCP 2.2 APIs from the SDE HDMI driver and
also invoke the HDCP 2.2 ISR routine from the parent
ISR routine of the SDE HDMI driver.
Change-Id: Ib9a427e5712c827fa93b91fc3a416af61ea83745
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
HDCP 2.2 needs additional helper functions for handling
DDC transactions and interface specific calculations.
Add the necessary utility APIs and also move the necessary
ones to the HDMI utils file for better maintenance.
Change-Id: I215f04991c6ff71ec3e1db7674024e85fbc922e8
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
All sysfs nodes have been moved to the misc hdcp driver.
Make the sde hdcp 1x module interact with the misc hdcp
driver to keep the functionality of repeater topology
intact as its used by wi-fi display userspace module.
Change-Id: Iecf404330695369c17e4afeff864eb6d7b92e372
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Add device node for the MSM HDCP driver which manages
communication between HLOS and TZ for HDCP related
operations.
Change-Id: Iecb4c86ae37ddf7cbc84f962895bbe6e1973b989
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Currently the hdcp lib doesn't have a context and
just acts as a lib for HDCP compliant interfaces like
HDMI and Display Port.
Make this lib a standalone driver capable of supporting
sysfs nodes to make communication with other modules
like TZ easier and less roundabout.
Change-Id: If693a9d4c8561e6d8c94e236a0fc108c8a65c05e
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
The OSM clock driver currently enables ACD for the silver and
gold clusters regardless of whether they've been brought up or
not. ACD requires the cluster PLLs to be running for initialization,
a requirement which would not be met if the cluster hasn't been
brought online.
Tie the ACD initialization sequence with enabling OSM for that
cluster.
Change-Id: Ib393dd339f8095029c9703fbe67897d0a491eced
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
Use per CPU NOCB threads to process RCU callbacks, rather than processing
the callbacks in softirq context. Processing large number of callbacks
in softirq context may result in delayed execution of other softirqs, so
remove processing of callbacks from softirq context.
Change-Id: I361221ea302c84d626122538d383f549ea9cea0d
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
On APQ8096 Auto ADP Lite platform, it only has two displays,
native HDMI and one DSI-HDMI display through ADV7533 bridge
chip. The secondary ADV7533 instance needs to be disabled.
Change-Id: Ibae5c1561ec9f6890f818eeef185dfcf0bc1a62d
Signed-off-by: Jin Li <jinl@codeaurora.org>
This change adds the HDCP 1x module for MSM DRM
driver and also hooks it up with SDE HDMI driver.
Change-Id: Iaf53c398254f6838a1d3cae610e069c5dbe18138
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Defines the non-removable property for UFS device node.
This basically lets the driver know that UFS is the boot
device.
Change-Id: I11df8441385910fdab7595a96a5deb24c7ca833e
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
If host driver fails to send WMI_VDEV_DOWN_CMDID, firmware will drop
further packets as vdev TX PAUSE reset is done as part of VDEV_DOWN.
Send vdev down to firmware if STA fails to associate.
CRs-Fixed: 2061161
Change-Id: Ie26645389dcb839758ff6aa55812172beeccc171
Signed-off-by: Ashutosh Kumar <askuma@codeaurora.org>
There is still one ADV7535 instance on MSM8996Pro Auto CDP lite
platform, which connects DSI0 interface to HDMI.
Change-Id: I1efe7484d6f4eb1956c95689420b06b40278588e
Signed-off-by: Jin Li <jinl@codeaurora.org>
Add useful helper functions to the DRM HDMI driver
to be used later when HDCP functionality gets added.
Also add and initialize necessary members to the
SDE HDMI controller to facilitate easier integration
of DRM HDCP module.
Change-Id: I699f6685327e674a871a404fe5cf3adebe823d46
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Peer creation in firmware fails if last peer deletion is still
in progress.
Wait for peer delete response from firmware after deleting peer
from host driver.
CRs-Fixed: 2047126
Change-Id: I9eb01393d9cd3dd82f2084262c250081f2076b46
Signed-off-by: Ashutosh Kumar <askuma@codeaurora.org>
Separate out the DRM HDMI utility functions into a separate
module.
Make the DRM HDMI utility functions support self retry where
they shall try for an arbitrary number of times on failure
otherwise let the client call the API to retry the number of
times as warranted.
Add a SDE HDMI utility file which shall invoke the upstream
functions in a manner as required to maintain the functionality
of legacy drivers.
Change-Id: I64af3f997a16b2d9358ea867585aa12772d22599
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Add support to parse the HDMI TX version and
HDCP support from the HDMI and QFPROM registers.
This information is used to decide which HDCP driver
module is to be initialized at boot time.
Change-Id: Ib598f3867f1cd2ef9adb7503c5907cbb1e4ba758
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Update the minimum frequency restriction value and maximum frequency
limit value to the correct nominal frequency 1.056 GHz and 1.2096 GHz
respectively, as per the updated frequency plan of msm8996pro.
Change-Id: I725351c064f0211f95af4b4dd708b62360331282
Signed-off-by: Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>