Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/omap: move out of staging

Now that the omapdss interface has been reworked so that omapdrm can use
dispc directly, we have been able to fix the remaining functional kms
issues with omapdrm. And in the mean time the PM sequencing and many
other of that open issues have been solved. So I think it makes sense
to finally move omapdrm out of staging.

Signed-off-by: Rob Clark <robdclark@gmail.com>

Rob Clark 8bb0daff a4462f24

+41 -50
+2
drivers/gpu/drm/Kconfig
··· 215 215 source "drivers/gpu/drm/shmobile/Kconfig" 216 216 217 217 source "drivers/gpu/drm/tegra/Kconfig" 218 + 219 + source "drivers/gpu/drm/omapdrm/Kconfig"
+1
drivers/gpu/drm/Makefile
··· 50 50 obj-$(CONFIG_DRM_AST) += ast/ 51 51 obj-$(CONFIG_DRM_SHMOBILE) +=shmobile/ 52 52 obj-$(CONFIG_DRM_TEGRA) += tegra/ 53 + obj-$(CONFIG_DRM_OMAP) += omapdrm/ 53 54 obj-y += i2c/
+23
drivers/gpu/drm/omapdrm/TODO
··· 1 + TODO 2 + . Where should we do eviction (detatch_pages())? We aren't necessarily 3 + accessing the pages via a GART, so maybe we need some other threshold 4 + to put a cap on the # of pages that can be pin'd. 5 + . Use mm_shrinker to trigger unpinning pages. 6 + . This is mainly theoretical since most of these devices don't actually 7 + have swap or harddrive. 8 + . GEM/shmem backed pages can have existing mappings (kernel linear map, 9 + etc..), which isn't really ideal. 10 + . Revisit GEM sync object infrastructure.. TTM has some framework for this 11 + already. Possibly this could be refactored out and made more common? 12 + There should be some way to do this with less wheel-reinvention. 13 + . This can be handled by the dma-buf fence/reservation stuff when it 14 + lands 15 + 16 + Userspace: 17 + . git://anongit.freedesktop.org/xorg/driver/xf86-video-omap 18 + 19 + Currently tested on 20 + . OMAP3530 beagleboard 21 + . OMAP4430 pandaboard 22 + . OMAP4460 pandaboard 23 + . OMAP5432 uEVM
-2
drivers/staging/Kconfig
··· 114 114 115 115 source "drivers/staging/net/Kconfig" 116 116 117 - source "drivers/staging/omapdrm/Kconfig" 118 - 119 117 source "drivers/staging/android/Kconfig" 120 118 121 119 source "drivers/staging/ozwpan/Kconfig"
-1
drivers/staging/Makefile
··· 49 49 obj-$(CONFIG_TOUCHSCREEN_CLEARPAD_TM1217) += cptm1217/ 50 50 obj-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4) += ste_rmi4/ 51 51 obj-$(CONFIG_MFD_NVEC) += nvec/ 52 - obj-$(CONFIG_DRM_OMAP) += omapdrm/ 53 52 obj-$(CONFIG_ANDROID) += android/ 54 53 obj-$(CONFIG_USB_WPAN_HCD) += ozwpan/ 55 54 obj-$(CONFIG_USB_G_CCG) += ccg/
drivers/staging/omapdrm/Kconfig drivers/gpu/drm/omapdrm/Kconfig
drivers/staging/omapdrm/Makefile drivers/gpu/drm/omapdrm/Makefile
-32
drivers/staging/omapdrm/TODO
··· 1 - TODO 2 - . add video decode/encode support (via syslink3 + codec-engine) 3 - . NOTE: with dmabuf this probably could be split into different driver 4 - so perhaps this TODO doesn't belong here 5 - . where should we do eviction (detatch_pages())? We aren't necessarily 6 - accessing the pages via a GART, so maybe we need some other threshold 7 - to put a cap on the # of pages that can be pin'd. (It is mostly only 8 - of interest in case you have a swap partition/file.. which a lot of 9 - these devices do not.. but it doesn't hurt for the driver to do the 10 - right thing anyways.) 11 - . Use mm_shrinker to trigger unpinning pages. Need to figure out how 12 - to handle next issue first (I think?) 13 - . Note TTM already has some mm_shrinker stuff.. maybe an argument to 14 - move to TTM? Or maybe something that could be factored out in common? 15 - . GEM/shmem backed pages can have existing mappings (kernel linear map, 16 - etc..), which isn't really ideal. 17 - . Revisit GEM sync object infrastructure.. TTM has some framework for this 18 - already. Possibly this could be refactored out and made more common? 19 - There should be some way to do this with less wheel-reinvention. 20 - . Solve PM sequencing on resume. DMM/TILER must be reloaded before any 21 - access is made from any component in the system. Which means on suspend 22 - CRTC's should be disabled, and on resume the LUT should be reprogrammed 23 - before CRTC's are re-enabled, to prevent DSS from trying to DMA from a 24 - buffer mapped in DMM/TILER before LUT is reloaded. 25 - 26 - Userspace: 27 - . git://github.com/robclark/xf86-video-omap.git 28 - 29 - Currently tested on 30 - . OMAP3530 beagleboard 31 - . OMAP4430 pandaboard 32 - . OMAP4460 pandaboard
+1 -1
drivers/staging/omapdrm/omap_connector.c drivers/gpu/drm/omapdrm/omap_connector.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_connector.c 2 + * drivers/gpu/drm/omapdrm/omap_connector.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob@ti.com>
+1 -1
drivers/staging/omapdrm/omap_crtc.c drivers/gpu/drm/omapdrm/omap_crtc.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_crtc.c 2 + * drivers/gpu/drm/omapdrm/omap_crtc.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob@ti.com>
+1 -1
drivers/staging/omapdrm/omap_debugfs.c drivers/gpu/drm/omapdrm/omap_debugfs.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_debugfs.c 2 + * drivers/gpu/drm/omapdrm/omap_debugfs.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob.clark@linaro.org>
drivers/staging/omapdrm/omap_dmm_priv.h drivers/gpu/drm/omapdrm/omap_dmm_priv.h
drivers/staging/omapdrm/omap_dmm_tiler.c drivers/gpu/drm/omapdrm/omap_dmm_tiler.c
drivers/staging/omapdrm/omap_dmm_tiler.h drivers/gpu/drm/omapdrm/omap_dmm_tiler.h
+1 -1
drivers/staging/omapdrm/omap_drm.h include/uapi/drm/omap_drm.h
··· 1 1 /* 2 - * include/drm/omap_drm.h 2 + * include/uapi/drm/omap_drm.h 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob@ti.com>
+1 -1
drivers/staging/omapdrm/omap_drv.c drivers/gpu/drm/omapdrm/omap_drv.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_drv.c 2 + * drivers/gpu/drm/omapdrm/omap_drv.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob@ti.com>
+2 -2
drivers/staging/omapdrm/omap_drv.h drivers/gpu/drm/omapdrm/omap_drv.h
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_drv.h 2 + * drivers/gpu/drm/omapdrm/omap_drv.h 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob@ti.com> ··· 25 25 #include <linux/types.h> 26 26 #include <drm/drmP.h> 27 27 #include <drm/drm_crtc_helper.h> 28 + #include <drm/omap_drm.h> 28 29 #include <linux/platform_data/omap_drm.h> 29 - #include "omap_drm.h" 30 30 31 31 32 32 #define DBG(fmt, ...) DRM_DEBUG(fmt"\n", ##__VA_ARGS__)
+1 -1
drivers/staging/omapdrm/omap_encoder.c drivers/gpu/drm/omapdrm/omap_encoder.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_encoder.c 2 + * drivers/gpu/drm/omapdrm/omap_encoder.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob@ti.com>
+1 -1
drivers/staging/omapdrm/omap_fb.c drivers/gpu/drm/omapdrm/omap_fb.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_fb.c 2 + * drivers/gpu/drm/omapdrm/omap_fb.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob@ti.com>
+1 -1
drivers/staging/omapdrm/omap_fbdev.c drivers/gpu/drm/omapdrm/omap_fbdev.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_fbdev.c 2 + * drivers/gpu/drm/omapdrm/omap_fbdev.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob@ti.com>
+1 -1
drivers/staging/omapdrm/omap_gem.c drivers/gpu/drm/omapdrm/omap_gem.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_gem.c 2 + * drivers/gpu/drm/omapdrm/omap_gem.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob.clark@linaro.org>
+1 -1
drivers/staging/omapdrm/omap_gem_dmabuf.c drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_gem_dmabuf.c 2 + * drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob.clark@linaro.org>
+1 -1
drivers/staging/omapdrm/omap_gem_helpers.c drivers/gpu/drm/omapdrm/omap_gem_helpers.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_gem_helpers.c 2 + * drivers/gpu/drm/omapdrm/omap_gem_helpers.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob.clark@linaro.org>
+1 -1
drivers/staging/omapdrm/omap_irq.c drivers/gpu/drm/omapdrm/omap_irq.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_irq.c 2 + * drivers/gpu/drm/omapdrm/omap_irq.c 3 3 * 4 4 * Copyright (C) 2012 Texas Instruments 5 5 * Author: Rob Clark <rob.clark@linaro.org>
+1 -1
drivers/staging/omapdrm/omap_plane.c drivers/gpu/drm/omapdrm/omap_plane.c
··· 1 1 /* 2 - * drivers/staging/omapdrm/omap_plane.c 2 + * drivers/gpu/drm/omapdrm/omap_plane.c 3 3 * 4 4 * Copyright (C) 2011 Texas Instruments 5 5 * Author: Rob Clark <rob.clark@linaro.org>
drivers/staging/omapdrm/tcm-sita.c drivers/gpu/drm/omapdrm/tcm-sita.c
drivers/staging/omapdrm/tcm-sita.h drivers/gpu/drm/omapdrm/tcm-sita.h
drivers/staging/omapdrm/tcm.h drivers/gpu/drm/omapdrm/tcm.h