Den 23.07.2017 21.16, skrev Noralf Trønnes:
This adds defaults for the drm_driver.dumb_destroy and drm_driver.dumb_map_offset callbacks as discussed with Daniel.
vmwgfx is the only driver that doesn't use drm_gem_dumb_destroy().
vgem
vgem changes behaviour after this, because it didn't have .dumb_destroy set, something the docs mandates.
This patchset is part of a process to add a shmem gem library like the cma library. The common parts between the two goes into core or helpers.
Noralf.
Thanks for reviews and testing. The first batch is applied to drm-misc-next:
[01/41] drm/gem: Add drm_gem_dumb_map_offset() [02/41] drm/dumb-buffers: Add defaults for .dumb_map_offset and .dumb_destroy [03/41] drm/arc: Use .dumb_map_offset and .dumb_destroy defaults [04/41] drm/arm: hdlcd: Use .dumb_map_offset and .dumb_destroy defaults [05/41] drm/arm: mali-dp: Use .dumb_map_offset and .dumb_destroy defaults [06/41] drm/atmel-hlcdc: Use .dumb_map_offset and .dumb_destroy defaults [09/41] drm/imx: Use .dumb_map_offset and .dumb_destroy defaults [12/41] drm/pl111: Use .dumb_map_offset and .dumb_destroy defaults [13/41] drm/rcar-du: Use .dumb_map_offset and .dumb_destroy defaults [14/41] drm/shmobile: Use .dumb_map_offset and .dumb_destroy defaults [16/41] drm/stm: Use .dumb_map_offset and .dumb_destroy defaults [17/41] drm/sun4i: Use .dumb_map_offset and .dumb_destroy defaults [18/41] drm/tilcdc: Use .dumb_map_offset and .dumb_destroy defaults [19/41] drm/vc4: Use .dumb_map_offset and .dumb_destroy defaults [20/41] drm/zte: Use .dumb_map_offset and .dumb_destroy defaults [21/41] drm/tinydrm: Use .dumb_map_offset and .dumb_destroy defaults [22/41] drm/mediatek: Use .dumb_map_offset and .dumb_destroy defaults [24/41] drm/rockchip: Use .dumb_map_offset and .dumb_destroy defaults [29/41] drm/amdgpu: Use the drm_driver.dumb_destroy default [30/41] drm/omapdrm: Use the drm_driver.dumb_destroy default [32/41] drm/nouveau: Use the drm_driver.dumb_destroy default [36/41] drm/hisilicon: hibmc: Use the drm_driver.dumb_destroy default
Noralf Trønnes (41): drm/gem: Add drm_gem_dumb_map_offset() drm/dumb-buffers: Add defaults for .dumb_map_offset and .dumb_destroy drm/arc: Use .dumb_map_offset and .dumb_destroy defaults drm/arm: hdlcd: Use .dumb_map_offset and .dumb_destroy defaults drm/arm: mali-dp: Use .dumb_map_offset and .dumb_destroy defaults drm/atmel-hlcdc: Use .dumb_map_offset and .dumb_destroy defaults drm/fsl-dcu: Use .dumb_map_offset and .dumb_destroy defaults drm/kirin: Use .dumb_map_offset and .dumb_destroy defaults drm/imx: Use .dumb_map_offset and .dumb_destroy defaults drm/meson: Use .dumb_map_offset and .dumb_destroy defaults drm/mxsfb: Use .dumb_map_offset and .dumb_destroy defaults drm/pl111: Use .dumb_map_offset and .dumb_destroy defaults drm/rcar-du: Use .dumb_map_offset and .dumb_destroy defaults drm/shmobile: Use .dumb_map_offset and .dumb_destroy defaults drm/sti: Use .dumb_map_offset and .dumb_destroy defaults drm/stm: Use .dumb_map_offset and .dumb_destroy defaults drm/sun4i: Use .dumb_map_offset and .dumb_destroy defaults drm/tilcdc: Use .dumb_map_offset and .dumb_destroy defaults drm/vc4: Use .dumb_map_offset and .dumb_destroy defaults drm/zte: Use .dumb_map_offset and .dumb_destroy defaults drm/tinydrm: Use .dumb_map_offset and .dumb_destroy defaults drm/mediatek: Use .dumb_map_offset and .dumb_destroy defaults drm/gma500: Use .dumb_map_offset and .dumb_destroy defaults drm/rockchip: Use .dumb_map_offset and .dumb_destroy defaults drm/tegra: Use .dumb_map_offset and .dumb_destroy defaults drm/cirrus: Use the drm_driver.dumb_destroy default drm/udl: Use the drm_driver.dumb_destroy default drm/qxl: Use the drm_driver.dumb_destroy default drm/amdgpu: Use the drm_driver.dumb_destroy default drm/omapdrm: Use the drm_driver.dumb_destroy default drm/ast: Use the drm_driver.dumb_destroy default drm/nouveau: Use the drm_driver.dumb_destroy default drm/i915: Use the drm_driver.dumb_destroy default drm/msm: Use the drm_driver.dumb_destroy default drm/exynos: Use the drm_driver.dumb_destroy default drm/hisilicon: hibmc: Use the drm_driver.dumb_destroy default drm/mgag200: Use the drm_driver.dumb_destroy default drm/radeon: Use the drm_driver.dumb_destroy default drm/bochs: Use the drm_driver.dumb_destroy default drm/armada: Use the drm_driver.dumb_destroy default drm/virtio: Use the drm_driver.dumb_destroy default
drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 1 - drivers/gpu/drm/arc/arcpgu_drv.c | 2 -- drivers/gpu/drm/arm/hdlcd_drv.c | 2 -- drivers/gpu/drm/arm/malidp_drv.c | 2 -- drivers/gpu/drm/armada/armada_drv.c | 1 - drivers/gpu/drm/armada/armada_gem.c | 6 ----- drivers/gpu/drm/armada/armada_gem.h | 2 -- drivers/gpu/drm/ast/ast_drv.c | 1 - drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 2 -- drivers/gpu/drm/bochs/bochs_drv.c | 1 - drivers/gpu/drm/cirrus/cirrus_drv.c | 1 - drivers/gpu/drm/drm_dumb_buffers.c | 26 ++++++++++++------ drivers/gpu/drm/drm_gem.c | 35 +++++++++++++++++++++++++ drivers/gpu/drm/exynos/exynos_drm_drv.c | 1 - drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 2 -- drivers/gpu/drm/gma500/gem.c | 30 --------------------- drivers/gpu/drm/gma500/psb_drv.c | 2 -- drivers/gpu/drm/gma500/psb_drv.h | 2 -- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 1 - drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 2 -- drivers/gpu/drm/i915/i915_drv.c | 1 - drivers/gpu/drm/imx/imx-drm-core.c | 2 -- drivers/gpu/drm/mediatek/mtk_drm_drv.c | 2 -- drivers/gpu/drm/mediatek/mtk_drm_gem.c | 25 ------------------ drivers/gpu/drm/mediatek/mtk_drm_gem.h | 3 --- drivers/gpu/drm/meson/meson_drv.c | 2 -- drivers/gpu/drm/mgag200/mgag200_drv.c | 1 - drivers/gpu/drm/msm/msm_drv.c | 1 - drivers/gpu/drm/mxsfb/mxsfb_drv.c | 2 -- drivers/gpu/drm/nouveau/nouveau_drm.c | 1 - drivers/gpu/drm/omapdrm/omap_drv.c | 1 - drivers/gpu/drm/pl111/pl111_drv.c | 2 -- drivers/gpu/drm/qxl/qxl_drv.c | 1 - drivers/gpu/drm/radeon/radeon_drv.c | 1 - drivers/gpu/drm/rcar-du/rcar_du_drv.c | 2 -- drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 2 -- drivers/gpu/drm/rockchip/rockchip_drm_gem.c | 26 ------------------ drivers/gpu/drm/rockchip/rockchip_drm_gem.h | 3 --- drivers/gpu/drm/shmobile/shmob_drm_drv.c | 2 -- drivers/gpu/drm/sti/sti_drv.c | 2 -- drivers/gpu/drm/stm/drv.c | 2 -- drivers/gpu/drm/sun4i/sun4i_drv.c | 2 -- drivers/gpu/drm/tegra/drm.c | 2 -- drivers/gpu/drm/tegra/gem.c | 21 --------------- drivers/gpu/drm/tegra/gem.h | 2 -- drivers/gpu/drm/tilcdc/tilcdc_drv.c | 2 -- drivers/gpu/drm/udl/udl_drv.c | 1 - drivers/gpu/drm/vc4/vc4_drv.c | 2 -- drivers/gpu/drm/virtio/virtgpu_drv.c | 1 - drivers/gpu/drm/virtio/virtgpu_drv.h | 3 --- drivers/gpu/drm/virtio/virtgpu_gem.c | 7 ----- drivers/gpu/drm/zte/zx_drm_drv.c | 2 -- include/drm/drm_gem.h | 2 ++ include/drm/tinydrm/tinydrm.h | 4 +-- 54 files changed, 56 insertions(+), 201 deletions(-)
-- 2.7.4