On Wed, Dec 9, 2020 at 6:24 AM Daniel Vetter wrote: > > On Wed, Dec 09, 2020 at 02:07:35AM +0530, Sumera Priyadarsini wrote: > > Update the vkms documentation to contain steps to: > > > > - setup the vkms driver > > - run tests using igt > > > > Signed-off-by: Sumera Priyadarsini > > ___ > > Changes in v2: > > - Change heading to title case (Daniel) > > - Add examples to run tests directly (Daniel) > > - Add examples to run subtests (Melissa) > > --- > > Documentation/gpu/vkms.rst | 67 ++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 67 insertions(+) > > > > diff --git a/Documentation/gpu/vkms.rst b/Documentation/gpu/vkms.rst > > index 13bab1d93bb3..d6739fbbe503 100644 > > --- a/Documentation/gpu/vkms.rst > > +++ b/Documentation/gpu/vkms.rst > > @@ -7,6 +7,73 @@ > > .. kernel-doc:: drivers/gpu/drm/vkms/vkms_drv.c > > :doc: vkms (Virtual Kernel Modesetting) > > > > +Setup > > +===== > > + > > +The VKMS driver can be setup with the following steps: > > + > > +To check if VKMS is loaded, run:: > > + > > + lsmod | grep vkms > > + > > +This should list the VKMS driver. If no output is obtained, then > > +you need to enable and/or load the VKMS driver. > > +Ensure that the VKMS driver has been set as a loadable module in your > > +kernel config file. Do:: > > + > > + make nconfig > > + > > + Go to `Device Drivers> Graphics support` > > + > > + Enable `Virtual KMS (EXPERIMENTAL)` > > + > > +Compile and build the kernel for the changes to get reflected. > > +Now, to load the driver, use:: > > + > > + sudo modprobe vkms > > + > > +On running the lsmod command now, the VKMS driver will appear listed. > > +You can also observe the driver being loaded in the dmesg logs. > > + > > +To disable the driver, use :: > > + > > + sudo modprobe -r vkms > > + > > +Testing With IGT > > +================ > > + > > +The IGT GPU Tools is a test suite used specifically for debugging and > > +development of the DRM drivers. > > +The IGT Tools can be installed from > > +`here `_ . > > + > > +The tests need to be run without a compositor, so you need to switch to text > > +only mode. You can do this by:: > > + > > + sudo systemctl isolate multi-user.target > > + > > +To return to graphical mode, do:: > > + > > + sudo systemctl isolate graphical.target > > + > > +Once you are in text only mode, you can run tests using the --device switch > > +or IGT_DEVICE variable to specify the device filter for the driver we want > > +to test:: > > + > > + sudo ./build/tests/ --device "sys:/sys/devices/platform/vkms" > > + sudo IGT_DEVICE="sys:/sys/devices/platform/vkms" ./build/tests/ > > + > > +For example, to test the functionality of the writeback library, > > +we can run the kms_writeback test:: > > + > > + sudo ./build/tests/kms_writeback --device "sys:/sys/devices/platform/vkms" > > + sudo IGT_DEVICE="sys:/sys/devices/platform/vkms" ./build/tests/kms_writeback > > + > > +You can also run subtests if you do not want to run the entire test:: > > + > > + sudo ./build/tests/kms_flip --run-subtest basic-plain-flip --device "sys:/sys/devices/platform/vkms" > > + sudo IGT_DEVICE="sys:/sys/devices/platform/vkms" ./build/tests/kms_flip --run-subtest basic-plain-flip > > Does IGT_DEVICE also work with run-tests.sh? Aside from my curious > question, patch looks good to me, thanks a lot. Good catch, it does. Melissa, IGT_FORCE_DRIVER also works. I think I was used test/kms_flip earlier instead of ./build/test/kms_flip hence the fluke. Should I add these also to the docs, was wondering if it will get too confusing.... > > Reviewed-by: Daniel Vetter > > > + > > TODO > > ==== > > > > -- > > 2.25.1 > > > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch