On 12/24/2016 07:04 AM, Christian Gmeiner wrote: > This a very lightweight library to add basic support for renderonly > GPUs. A kms gallium driver must specify how a renderonly_scanout > objects gets created. Also it must provide file handles to the used > kms device and the used gpu device. > > This could look like: > struct renderonly ro = { > .create_for_resource = renderonly_create_gpu_import_for_resource, > .kms_fd = fd, > .gpu_fd = open("/dev/dri/renderD128", O_RDWR | O_CLOEXEC) > }; > > The renderonly_scanout object exits for two reasons: > - Do any special treatment for a scanout resource like importing the > GPU resource into the scanout hw. > - Make it easier for a gallium driver to detect if anything special > needs to be done in flush_resource(..) like a resolve to linear. > > A GPU gallium driver which gets used as renderonly GPU needs to be > aware of the renderonly library. > > This library will likely break android support and hopefully will get > replaced with a better solution based on gbm2. > > Changes from V1 -> V2: > - reworked the lifecycle of renderonly object (suggested by Nicolai Hähnle) > - killed the midlayer (suggested by Thierry Reding) > - made the API more explicit regarding gpu and kms fd's > - added some docs
Works fine with Tegra (see https://github.com/Gnurou/mesa/tree/renderonly for the code, still hacky). Tested-by: Alexandre Courbot <acour...@nvidia.com> _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev