mirror of https://gitee.com/openkylin/linux.git
drm/tegra: Remove local fbdev emulation Kconfig option
DRM_TEGRA_FBDEV config is currently used to enable/disable legacy fbdev emulation for the tegra kms driver. Remove this local config option and use the top level DRM_FBDEV_EMULATION config option instead. Signed-off-by: Archit Taneja <architt@codeaurora.org> Link: http://patchwork.freedesktop.org/patch/msgid/1445933459-5249-4-git-send-email-architt@codeaurora.org Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
c1ff5a7aa3
commit
b110ef3775
|
@ -16,18 +16,6 @@ config DRM_TEGRA
|
||||||
|
|
||||||
if DRM_TEGRA
|
if DRM_TEGRA
|
||||||
|
|
||||||
config DRM_TEGRA_FBDEV
|
|
||||||
bool "Enable legacy fbdev support"
|
|
||||||
select DRM_KMS_FB_HELPER
|
|
||||||
select FB_SYS_FILLRECT
|
|
||||||
select FB_SYS_COPYAREA
|
|
||||||
select FB_SYS_IMAGEBLIT
|
|
||||||
default y
|
|
||||||
help
|
|
||||||
Choose this option if you have a need for the legacy fbdev support.
|
|
||||||
Note that this support also provides the Linux console on top of
|
|
||||||
the Tegra modesetting driver.
|
|
||||||
|
|
||||||
config DRM_TEGRA_DEBUG
|
config DRM_TEGRA_DEBUG
|
||||||
bool "NVIDIA Tegra DRM debug support"
|
bool "NVIDIA Tegra DRM debug support"
|
||||||
help
|
help
|
||||||
|
|
|
@ -106,7 +106,7 @@ static int tegra_atomic_commit(struct drm_device *drm,
|
||||||
|
|
||||||
static const struct drm_mode_config_funcs tegra_drm_mode_funcs = {
|
static const struct drm_mode_config_funcs tegra_drm_mode_funcs = {
|
||||||
.fb_create = tegra_fb_create,
|
.fb_create = tegra_fb_create,
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
.output_poll_changed = tegra_fb_output_poll_changed,
|
.output_poll_changed = tegra_fb_output_poll_changed,
|
||||||
#endif
|
#endif
|
||||||
.atomic_check = drm_atomic_helper_check,
|
.atomic_check = drm_atomic_helper_check,
|
||||||
|
@ -260,7 +260,7 @@ static void tegra_drm_context_free(struct tegra_drm_context *context)
|
||||||
|
|
||||||
static void tegra_drm_lastclose(struct drm_device *drm)
|
static void tegra_drm_lastclose(struct drm_device *drm)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
struct tegra_drm *tegra = drm->dev_private;
|
struct tegra_drm *tegra = drm->dev_private;
|
||||||
|
|
||||||
tegra_fbdev_restore_mode(tegra->fbdev);
|
tegra_fbdev_restore_mode(tegra->fbdev);
|
||||||
|
|
|
@ -30,7 +30,7 @@ struct tegra_fb {
|
||||||
unsigned int num_planes;
|
unsigned int num_planes;
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
struct tegra_fbdev {
|
struct tegra_fbdev {
|
||||||
struct drm_fb_helper base;
|
struct drm_fb_helper base;
|
||||||
struct tegra_fb *fb;
|
struct tegra_fb *fb;
|
||||||
|
@ -46,7 +46,7 @@ struct tegra_drm {
|
||||||
struct mutex clients_lock;
|
struct mutex clients_lock;
|
||||||
struct list_head clients;
|
struct list_head clients;
|
||||||
|
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
struct tegra_fbdev *fbdev;
|
struct tegra_fbdev *fbdev;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -273,7 +273,7 @@ int tegra_drm_fb_prepare(struct drm_device *drm);
|
||||||
void tegra_drm_fb_free(struct drm_device *drm);
|
void tegra_drm_fb_free(struct drm_device *drm);
|
||||||
int tegra_drm_fb_init(struct drm_device *drm);
|
int tegra_drm_fb_init(struct drm_device *drm);
|
||||||
void tegra_drm_fb_exit(struct drm_device *drm);
|
void tegra_drm_fb_exit(struct drm_device *drm);
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
void tegra_fbdev_restore_mode(struct tegra_fbdev *fbdev);
|
void tegra_fbdev_restore_mode(struct tegra_fbdev *fbdev);
|
||||||
void tegra_fb_output_poll_changed(struct drm_device *drm);
|
void tegra_fb_output_poll_changed(struct drm_device *drm);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -18,7 +18,7 @@ static inline struct tegra_fb *to_tegra_fb(struct drm_framebuffer *fb)
|
||||||
return container_of(fb, struct tegra_fb, base);
|
return container_of(fb, struct tegra_fb, base);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
static inline struct tegra_fbdev *to_tegra_fbdev(struct drm_fb_helper *helper)
|
static inline struct tegra_fbdev *to_tegra_fbdev(struct drm_fb_helper *helper)
|
||||||
{
|
{
|
||||||
return container_of(helper, struct tegra_fbdev, base);
|
return container_of(helper, struct tegra_fbdev, base);
|
||||||
|
@ -181,7 +181,7 @@ struct drm_framebuffer *tegra_fb_create(struct drm_device *drm,
|
||||||
return ERR_PTR(err);
|
return ERR_PTR(err);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
static struct fb_ops tegra_fb_ops = {
|
static struct fb_ops tegra_fb_ops = {
|
||||||
.owner = THIS_MODULE,
|
.owner = THIS_MODULE,
|
||||||
.fb_fillrect = drm_fb_helper_sys_fillrect,
|
.fb_fillrect = drm_fb_helper_sys_fillrect,
|
||||||
|
@ -370,7 +370,7 @@ void tegra_fb_output_poll_changed(struct drm_device *drm)
|
||||||
|
|
||||||
int tegra_drm_fb_prepare(struct drm_device *drm)
|
int tegra_drm_fb_prepare(struct drm_device *drm)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
struct tegra_drm *tegra = drm->dev_private;
|
struct tegra_drm *tegra = drm->dev_private;
|
||||||
|
|
||||||
tegra->fbdev = tegra_fbdev_create(drm);
|
tegra->fbdev = tegra_fbdev_create(drm);
|
||||||
|
@ -383,7 +383,7 @@ int tegra_drm_fb_prepare(struct drm_device *drm)
|
||||||
|
|
||||||
void tegra_drm_fb_free(struct drm_device *drm)
|
void tegra_drm_fb_free(struct drm_device *drm)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
struct tegra_drm *tegra = drm->dev_private;
|
struct tegra_drm *tegra = drm->dev_private;
|
||||||
|
|
||||||
tegra_fbdev_free(tegra->fbdev);
|
tegra_fbdev_free(tegra->fbdev);
|
||||||
|
@ -392,7 +392,7 @@ void tegra_drm_fb_free(struct drm_device *drm)
|
||||||
|
|
||||||
int tegra_drm_fb_init(struct drm_device *drm)
|
int tegra_drm_fb_init(struct drm_device *drm)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
struct tegra_drm *tegra = drm->dev_private;
|
struct tegra_drm *tegra = drm->dev_private;
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
|
@ -407,7 +407,7 @@ int tegra_drm_fb_init(struct drm_device *drm)
|
||||||
|
|
||||||
void tegra_drm_fb_exit(struct drm_device *drm)
|
void tegra_drm_fb_exit(struct drm_device *drm)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_DRM_TEGRA_FBDEV
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
||||||
struct tegra_drm *tegra = drm->dev_private;
|
struct tegra_drm *tegra = drm->dev_private;
|
||||||
|
|
||||||
tegra_fbdev_exit(tegra->fbdev);
|
tegra_fbdev_exit(tegra->fbdev);
|
||||||
|
|
Loading…
Reference in New Issue