kselftests: Exercise hw-independent mock tests for i915.ko

Although being a GPU driver most functionality of i915.ko depends upon
real hardware, many of its internal interfaces can be "mocked" and so
tested independently of any hardware. Expanding the test coverage is not
only useful for i915.ko, but should provide some integration tests for
core infrastructure as well.

Loading i915.ko with mock_selftests=-1 will cause it to execute its mock
tests then fail with -ENOTTY. If the driver is already loaded and bound
to hardware, it requires a few more steps to unbind, and so the simple
preliminary modprobe -r will fail.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Shuah Khan <shuah@kernel.org>
Cc: linux-kselftest@vger.kernel.org
Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com>
This commit is contained in:
Chris Wilson 2016-12-07 13:58:19 +00:00 committed by Shuah Khan
parent 8b27787a6d
commit c461265679

View file

@ -0,0 +1,14 @@
#!/bin/sh
# Runs hardware independent tests for i915 (drivers/gpu/drm/i915)
if ! /sbin/modprobe -q -r i915; then
echo "drivers/gpu/i915: [SKIP]"
exit 77
fi
if /sbin/modprobe -q i915 mock_selftests=-1; then
echo "drivers/gpu/i915: ok"
else
echo "drivers/gpu/i915: [FAIL]"
exit 1
fi