Commit 8bb0daff authored by Rob Clark's avatar Rob Clark

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: default avatarRob Clark <robdclark@gmail.com>
parent a4462f24
...@@ -215,3 +215,5 @@ source "drivers/gpu/drm/cirrus/Kconfig" ...@@ -215,3 +215,5 @@ source "drivers/gpu/drm/cirrus/Kconfig"
source "drivers/gpu/drm/shmobile/Kconfig" source "drivers/gpu/drm/shmobile/Kconfig"
source "drivers/gpu/drm/tegra/Kconfig" source "drivers/gpu/drm/tegra/Kconfig"
source "drivers/gpu/drm/omapdrm/Kconfig"
...@@ -50,4 +50,5 @@ obj-$(CONFIG_DRM_UDL) += udl/ ...@@ -50,4 +50,5 @@ obj-$(CONFIG_DRM_UDL) += udl/
obj-$(CONFIG_DRM_AST) += ast/ obj-$(CONFIG_DRM_AST) += ast/
obj-$(CONFIG_DRM_SHMOBILE) +=shmobile/ obj-$(CONFIG_DRM_SHMOBILE) +=shmobile/
obj-$(CONFIG_DRM_TEGRA) += tegra/ obj-$(CONFIG_DRM_TEGRA) += tegra/
obj-$(CONFIG_DRM_OMAP) += omapdrm/
obj-y += i2c/ obj-y += i2c/
TODO TODO
. add video decode/encode support (via syslink3 + codec-engine) . Where should we do eviction (detatch_pages())? We aren't necessarily
. 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 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 to put a cap on the # of pages that can be pin'd.
of interest in case you have a swap partition/file.. which a lot of . Use mm_shrinker to trigger unpinning pages.
these devices do not.. but it doesn't hurt for the driver to do the . This is mainly theoretical since most of these devices don't actually
right thing anyways.) have swap or harddrive.
. 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, . GEM/shmem backed pages can have existing mappings (kernel linear map,
etc..), which isn't really ideal. etc..), which isn't really ideal.
. Revisit GEM sync object infrastructure.. TTM has some framework for this . Revisit GEM sync object infrastructure.. TTM has some framework for this
already. Possibly this could be refactored out and made more common? already. Possibly this could be refactored out and made more common?
There should be some way to do this with less wheel-reinvention. There should be some way to do this with less wheel-reinvention.
. Solve PM sequencing on resume. DMM/TILER must be reloaded before any . This can be handled by the dma-buf fence/reservation stuff when it
access is made from any component in the system. Which means on suspend lands
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: Userspace:
. git://github.com/robclark/xf86-video-omap.git . git://anongit.freedesktop.org/xorg/driver/xf86-video-omap
Currently tested on Currently tested on
. OMAP3530 beagleboard . OMAP3530 beagleboard
. OMAP4430 pandaboard . OMAP4430 pandaboard
. OMAP4460 pandaboard . OMAP4460 pandaboard
. OMAP5432 uEVM
/* /*
* drivers/staging/omapdrm/omap_connector.c * drivers/gpu/drm/omapdrm/omap_connector.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob@ti.com> * Author: Rob Clark <rob@ti.com>
......
/* /*
* drivers/staging/omapdrm/omap_crtc.c * drivers/gpu/drm/omapdrm/omap_crtc.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob@ti.com> * Author: Rob Clark <rob@ti.com>
......
/* /*
* drivers/staging/omapdrm/omap_debugfs.c * drivers/gpu/drm/omapdrm/omap_debugfs.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob.clark@linaro.org> * Author: Rob Clark <rob.clark@linaro.org>
......
/* /*
* drivers/staging/omapdrm/omap_drv.c * drivers/gpu/drm/omapdrm/omap_drv.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob@ti.com> * Author: Rob Clark <rob@ti.com>
......
/* /*
* drivers/staging/omapdrm/omap_drv.h * drivers/gpu/drm/omapdrm/omap_drv.h
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob@ti.com> * Author: Rob Clark <rob@ti.com>
...@@ -25,8 +25,8 @@ ...@@ -25,8 +25,8 @@
#include <linux/types.h> #include <linux/types.h>
#include <drm/drmP.h> #include <drm/drmP.h>
#include <drm/drm_crtc_helper.h> #include <drm/drm_crtc_helper.h>
#include <drm/omap_drm.h>
#include <linux/platform_data/omap_drm.h> #include <linux/platform_data/omap_drm.h>
#include "omap_drm.h"
#define DBG(fmt, ...) DRM_DEBUG(fmt"\n", ##__VA_ARGS__) #define DBG(fmt, ...) DRM_DEBUG(fmt"\n", ##__VA_ARGS__)
......
/* /*
* drivers/staging/omapdrm/omap_encoder.c * drivers/gpu/drm/omapdrm/omap_encoder.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob@ti.com> * Author: Rob Clark <rob@ti.com>
......
/* /*
* drivers/staging/omapdrm/omap_fb.c * drivers/gpu/drm/omapdrm/omap_fb.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob@ti.com> * Author: Rob Clark <rob@ti.com>
......
/* /*
* drivers/staging/omapdrm/omap_fbdev.c * drivers/gpu/drm/omapdrm/omap_fbdev.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob@ti.com> * Author: Rob Clark <rob@ti.com>
......
/* /*
* drivers/staging/omapdrm/omap_gem.c * drivers/gpu/drm/omapdrm/omap_gem.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob.clark@linaro.org> * Author: Rob Clark <rob.clark@linaro.org>
......
/* /*
* drivers/staging/omapdrm/omap_gem_dmabuf.c * drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob.clark@linaro.org> * Author: Rob Clark <rob.clark@linaro.org>
......
/* /*
* drivers/staging/omapdrm/omap_gem_helpers.c * drivers/gpu/drm/omapdrm/omap_gem_helpers.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob.clark@linaro.org> * Author: Rob Clark <rob.clark@linaro.org>
......
/* /*
* drivers/staging/omapdrm/omap_irq.c * drivers/gpu/drm/omapdrm/omap_irq.c
* *
* Copyright (C) 2012 Texas Instruments * Copyright (C) 2012 Texas Instruments
* Author: Rob Clark <rob.clark@linaro.org> * Author: Rob Clark <rob.clark@linaro.org>
......
/* /*
* drivers/staging/omapdrm/omap_plane.c * drivers/gpu/drm/omapdrm/omap_plane.c
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob.clark@linaro.org> * Author: Rob Clark <rob.clark@linaro.org>
......
...@@ -114,8 +114,6 @@ source "drivers/staging/media/Kconfig" ...@@ -114,8 +114,6 @@ source "drivers/staging/media/Kconfig"
source "drivers/staging/net/Kconfig" source "drivers/staging/net/Kconfig"
source "drivers/staging/omapdrm/Kconfig"
source "drivers/staging/android/Kconfig" source "drivers/staging/android/Kconfig"
source "drivers/staging/ozwpan/Kconfig" source "drivers/staging/ozwpan/Kconfig"
......
...@@ -49,7 +49,6 @@ obj-$(CONFIG_SPEAKUP) += speakup/ ...@@ -49,7 +49,6 @@ obj-$(CONFIG_SPEAKUP) += speakup/
obj-$(CONFIG_TOUCHSCREEN_CLEARPAD_TM1217) += cptm1217/ obj-$(CONFIG_TOUCHSCREEN_CLEARPAD_TM1217) += cptm1217/
obj-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4) += ste_rmi4/ obj-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4) += ste_rmi4/
obj-$(CONFIG_MFD_NVEC) += nvec/ obj-$(CONFIG_MFD_NVEC) += nvec/
obj-$(CONFIG_DRM_OMAP) += omapdrm/
obj-$(CONFIG_ANDROID) += android/ obj-$(CONFIG_ANDROID) += android/
obj-$(CONFIG_USB_WPAN_HCD) += ozwpan/ obj-$(CONFIG_USB_WPAN_HCD) += ozwpan/
obj-$(CONFIG_USB_G_CCG) += ccg/ obj-$(CONFIG_USB_G_CCG) += ccg/
......
/* /*
* include/drm/omap_drm.h * include/uapi/drm/omap_drm.h
* *
* Copyright (C) 2011 Texas Instruments * Copyright (C) 2011 Texas Instruments
* Author: Rob Clark <rob@ti.com> * Author: Rob Clark <rob@ti.com>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment