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