diff options
Diffstat (limited to 'meta-agl-drm-lease/README.md')
-rw-r--r-- | meta-agl-drm-lease/README.md | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/meta-agl-drm-lease/README.md b/meta-agl-drm-lease/README.md new file mode 100644 index 00000000..e397e6a3 --- /dev/null +++ b/meta-agl-drm-lease/README.md @@ -0,0 +1,54 @@ +# DRM lease support layer + +This yocto layer adds support for using DRM leases to partition display +controller output resources between multiple processes. + +This layer adds a drm-lease-manager deamon (with systemd configuration) +and a client library for receiving DRM leases from the daemon. For more details +the DRM lease manager and client see the repository at +(https://gerrit.automotivelinux.org/gerrit/gitweb?p=src/drm-lease-manager.git) + +## Setup + +Enable the `agl-drm-lease` AGL feature when setting up your build environment +with aglsetup.sh. + +This will add the `drm-lease-manager` package to the image, and will add DRM +lease support to some packages. + +Currently, only the `kmscube` sample application has support for DRM lease. +`kmscube` is not included in the image by default. To add the package to the +image, add the following to your local.conf + +``` +IMAGE_INSTALL_append = " kmscube" +``` + +## Starting the DRM lease manager + +The drm-lease-manager must be the only process to directly open the DRM device. +Shut down any running window systems (eg. weston or agl-compositor) and run: + +``` + # systemctl start drm-lease-manager +``` + +This will create 1 lease for each output connection on the platform. +The name of each lease will be in the form of `card0-<output name>` +(eg. `card0-LVDS-1` or `card0-HDMI-A-1`) + +## Running kmscube sample + +With the `drm-lease-manager` running `kmscube` can display on any available +lease by running with the `-L -D<lease name>` options. Eg: + +``` + # kmscube -L -Dcard0-HDMI-A-1 +``` + +Multiple kmscube instances (one per DRM lease) can be started at the same time. + +## Tested targets + +This layer has been tested on the Renesas R-Car Gen3 platform. Other platforms +supporting the Linux DRM API may work as well. |