summaryrefslogtreecommitdiff
path: root/tests/kms_content_protection.c
AgeCommit message (Collapse)Author
2019-04-16kms_content_protection: Disable authentication when failedRamalingam C
When content protection authentication is failed in kernel after all requried retries, before declaring the test failure, set the content protection to UNDESIRED state. This will avoid the HDCP authentication attempts in subsequent modesets from other tests. Signed-off-by: Ramalingam C <ramalingam.c@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110376 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110224 Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2019-02-14kms_content_protection: Macros replace the constantsRamalingam C
For better readability, numeric values are replaced with macros. Signed-off-by: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2019-02-14kms_content_protection: Confirm that LIC is passedRamalingam C
Once the HDCP is enabled, kernel will run the link integrity check(LIC) atleast once in 2Secs based on the HDCP versions. So to confirm the link integrity check is passed, we oberve that HDCP state remains ENABLED for next 4Secs. v2: Rebased. Signed-off-by: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2019-02-14kms_content_protection: Test CP along with modesetRamalingam C
As we have two different patch for commitng the HDCP request 1. DDI_enable (during the modeset) 2. update_pipe (during fastset execution) Currently our kms_content_protection covers only fastset path. So this test adds the coverage for the HDCP during the modeset by performing DPMS off-on and check for HDCP status. But with respect to HDCP we allow few retries from userspace before reporting the failure. So only first attempt at kernel will be on modeset path, next retries will become fastset commiting of HDCP. v2: dpms test is added within existing implementation with a flag [Daniel] v3: ret declared. Signed-off-by: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2019-02-14kms_content_protection: modularizing the CP test stepsRamalingam C
Modularizing the CP test steps for the convenience of reusing it for other subtests. Signed-off-by: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2018-11-27tests: Use igt_display_requireDaniel Vetter
Remaining tests that have been overlooked and don't need any invasive changes to limit the skipping to only the relevant parts. v2: [A rebase gone wrong] v3: Move the misplaced hunk to the right patch (Antonio). v4: Rebase, kms_content_protection is new. v5: Rebase - need to adjust kms_lease.c too. Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> (v3) Cc: Antonio Argenziano <antonio.argenziano@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Acked-By: Antonio Argenziano <antonio.argenziano@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2018-11-16kms_content_protection: Fix log bug on 32-bit platforms.Eric Anholt
long is different between 32 and 64 and should basically never be used. Fixes compiler warning about passing the wrong type. v2: Use the PRId64 macros instead of long long. Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2018-10-29tests/kms_content_protection: restore for real before failingDaniel Vetter
Nothing happens if you don't commit ... v2: rebased!? Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108550 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108549 Cc: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Ramalingam C <ramalingam.c@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2018-10-25tests/kms_content_protection: Avoid dmesg falloutDaniel Vetter
Subsequent tests have become really unhappy. Paper over this for now. If this doesn't work, then I think we need to revert. v2: Use Ram's suggestion for comment. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108550 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108549 Cc: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Ramalingam C <ramalingam.c@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2018-10-25kms_content_protection: Add Content Protection testRamalingam C
Pretty simple test: - picks the hdcp capable output with suitable pipe and apply modeset. - checks the connected sink's hdcp capability through debugfs - apply a FB and wait for the flip completion. - clears the content protection property - verifies that it clears - sets the content protection property to desired - verifies that it transitions to enabled - incase of timeout three reattempts are implemented - clear the content protection property and modeset on the crtc Above steps are repeated on all HDCP capable connectors for both legacy and atomic subtests. v2: dynamic subtests are dropped [Daniel] v3: debugfs is used to detect the sink's hdcp capability [Daniel] data structure is made as global variable. v4: debugfs file from connector's debugfs dir is used [Daniel] v5: i915_debugfs_connector_dir() usage is modified [Chris] Signed-off-by: Sean Paul <seanpaul@chromium.org> Signed-off-by: Ramalingam C <ramalingam.c@intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>