mirror of
https://gitee.com/openharmony/third_party_mesa3d
synced 2024-11-23 07:19:50 +00:00
kmsro: Add support for V3D.
Like vc4, we expect to have SOCs with various displays that have a single V3D instance for rendering. v2: Add v3d to the list of drivers that make enabling kmsro valid. Acked-by: Rob Clark <robdclark@chromium.org>
This commit is contained in:
parent
a8a0e5c03c
commit
7e069832a0
@ -217,7 +217,7 @@ endif
|
||||
if with_dri_i915 and with_gallium_i915
|
||||
error('Only one i915 provider can be built')
|
||||
endif
|
||||
if with_gallium_kmsro and not (with_gallium_vc4 or with_gallium_etnaviv or with_gallium_freedreno or with_gallium_panfrost or with_gallium_lima)
|
||||
if with_gallium_kmsro and not (with_gallium_v3d or with_gallium_vc4 or with_gallium_etnaviv or with_gallium_freedreno or with_gallium_panfrost or with_gallium_lima)
|
||||
error('kmsro driver requires one or more renderonly drivers (vc4, etnaviv, freedreno, panfrost, lima)')
|
||||
endif
|
||||
if with_gallium_tegra and not with_gallium_nouveau
|
||||
|
@ -26,6 +26,7 @@
|
||||
#include <unistd.h>
|
||||
|
||||
#include "kmsro_drm_public.h"
|
||||
#include "v3d/drm/v3d_drm_public.h"
|
||||
#include "vc4/drm/vc4_drm_public.h"
|
||||
#include "etnaviv/drm/etnaviv_drm_public.h"
|
||||
#include "freedreno/drm/freedreno_drm_public.h"
|
||||
@ -109,5 +110,17 @@ struct pipe_screen *kmsro_drm_screen_create(int fd)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(GALLIUM_V3D)
|
||||
ro.gpu_fd = drmOpenWithType("v3d", NULL, DRM_NODE_RENDER);
|
||||
if (ro.gpu_fd >= 0) {
|
||||
ro.create_for_resource = renderonly_create_kms_dumb_buffer_for_resource,
|
||||
screen = v3d_drm_screen_create_renderonly(&ro);
|
||||
if (!screen)
|
||||
close(ro.gpu_fd);
|
||||
|
||||
return screen;
|
||||
}
|
||||
#endif
|
||||
|
||||
return screen;
|
||||
}
|
||||
|
@ -25,6 +25,9 @@ endif
|
||||
if with_gallium_lima
|
||||
kmsro_c_args += '-DGALLIUM_LIMA'
|
||||
endif
|
||||
if with_gallium_v3d
|
||||
kmsro_c_args += '-DGALLIUM_V3D'
|
||||
endif
|
||||
if with_gallium_vc4
|
||||
kmsro_c_args += '-DGALLIUM_VC4'
|
||||
endif
|
||||
|
Loading…
Reference in New Issue
Block a user