drm: shmobile: remove unused MERAM support

Since commit a521422e  ("ARM: shmobile: mackerel: Remove Legacy C
board code") MERAM functionality is unused. Remove it.
Reviewed-by: default avatarSimon Horman <horms+renesas@verge.net.au>
Cc: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: default avatarDaniel Vetter <daniel@ffwll.ch>
Signed-off-by: default avatarBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
parent 9076aa99
...@@ -2,7 +2,6 @@ config DRM_SHMOBILE ...@@ -2,7 +2,6 @@ config DRM_SHMOBILE
tristate "DRM Support for SH Mobile" tristate "DRM Support for SH Mobile"
depends on DRM && ARM depends on DRM && ARM
depends on ARCH_SHMOBILE || COMPILE_TEST depends on ARCH_SHMOBILE || COMPILE_TEST
depends on FB_SH_MOBILE_MERAM || !FB_SH_MOBILE_MERAM
select BACKLIGHT_CLASS_DEVICE select BACKLIGHT_CLASS_DEVICE
select BACKLIGHT_LCD_SUPPORT select BACKLIGHT_LCD_SUPPORT
select DRM_KMS_HELPER select DRM_KMS_HELPER
......
...@@ -21,8 +21,6 @@ ...@@ -21,8 +21,6 @@
#include <drm/drm_gem_cma_helper.h> #include <drm/drm_gem_cma_helper.h>
#include <drm/drm_plane_helper.h> #include <drm/drm_plane_helper.h>
#include <video/sh_mobile_meram.h>
#include "shmob_drm_backlight.h" #include "shmob_drm_backlight.h"
#include "shmob_drm_crtc.h" #include "shmob_drm_crtc.h"
#include "shmob_drm_drv.h" #include "shmob_drm_drv.h"
...@@ -47,20 +45,12 @@ static int shmob_drm_clk_on(struct shmob_drm_device *sdev) ...@@ -47,20 +45,12 @@ static int shmob_drm_clk_on(struct shmob_drm_device *sdev)
if (ret < 0) if (ret < 0)
return ret; return ret;
} }
#if 0
if (sdev->meram_dev && sdev->meram_dev->pdev)
pm_runtime_get_sync(&sdev->meram_dev->pdev->dev);
#endif
return 0; return 0;
} }
static void shmob_drm_clk_off(struct shmob_drm_device *sdev) static void shmob_drm_clk_off(struct shmob_drm_device *sdev)
{ {
#if 0
if (sdev->meram_dev && sdev->meram_dev->pdev)
pm_runtime_put_sync(&sdev->meram_dev->pdev->dev);
#endif
if (sdev->clock) if (sdev->clock)
clk_disable_unprepare(sdev->clock); clk_disable_unprepare(sdev->clock);
} }
...@@ -269,12 +259,6 @@ static void shmob_drm_crtc_stop(struct shmob_drm_crtc *scrtc) ...@@ -269,12 +259,6 @@ static void shmob_drm_crtc_stop(struct shmob_drm_crtc *scrtc)
if (!scrtc->started) if (!scrtc->started)
return; return;
/* Disable the MERAM cache. */
if (scrtc->cache) {
sh_mobile_meram_cache_free(sdev->meram, scrtc->cache);
scrtc->cache = NULL;
}
/* Stop the LCDC. */ /* Stop the LCDC. */
shmob_drm_crtc_start_stop(scrtc, false); shmob_drm_crtc_start_stop(scrtc, false);
...@@ -305,7 +289,6 @@ static void shmob_drm_crtc_compute_base(struct shmob_drm_crtc *scrtc, ...@@ -305,7 +289,6 @@ static void shmob_drm_crtc_compute_base(struct shmob_drm_crtc *scrtc,
{ {
struct drm_crtc *crtc = &scrtc->crtc; struct drm_crtc *crtc = &scrtc->crtc;
struct drm_framebuffer *fb = crtc->primary->fb; struct drm_framebuffer *fb = crtc->primary->fb;
struct shmob_drm_device *sdev = crtc->dev->dev_private;
struct drm_gem_cma_object *gem; struct drm_gem_cma_object *gem;
unsigned int bpp; unsigned int bpp;
...@@ -321,11 +304,6 @@ static void shmob_drm_crtc_compute_base(struct shmob_drm_crtc *scrtc, ...@@ -321,11 +304,6 @@ static void shmob_drm_crtc_compute_base(struct shmob_drm_crtc *scrtc,
+ y / (bpp == 4 ? 2 : 1) * fb->pitches[1] + y / (bpp == 4 ? 2 : 1) * fb->pitches[1]
+ x * (bpp == 16 ? 2 : 1); + x * (bpp == 16 ? 2 : 1);
} }
if (scrtc->cache)
sh_mobile_meram_cache_update(sdev->meram, scrtc->cache,
scrtc->dma[0], scrtc->dma[1],
&scrtc->dma[0], &scrtc->dma[1]);
} }
static void shmob_drm_crtc_update_base(struct shmob_drm_crtc *scrtc) static void shmob_drm_crtc_update_base(struct shmob_drm_crtc *scrtc)
...@@ -372,9 +350,7 @@ static int shmob_drm_crtc_mode_set(struct drm_crtc *crtc, ...@@ -372,9 +350,7 @@ static int shmob_drm_crtc_mode_set(struct drm_crtc *crtc,
{ {
struct shmob_drm_crtc *scrtc = to_shmob_crtc(crtc); struct shmob_drm_crtc *scrtc = to_shmob_crtc(crtc);
struct shmob_drm_device *sdev = crtc->dev->dev_private; struct shmob_drm_device *sdev = crtc->dev->dev_private;
const struct sh_mobile_meram_cfg *mdata = sdev->pdata->meram;
const struct shmob_drm_format_info *format; const struct shmob_drm_format_info *format;
void *cache;
format = shmob_drm_format_info(crtc->primary->fb->format->format); format = shmob_drm_format_info(crtc->primary->fb->format->format);
if (format == NULL) { if (format == NULL) {
...@@ -386,24 +362,6 @@ static int shmob_drm_crtc_mode_set(struct drm_crtc *crtc, ...@@ -386,24 +362,6 @@ static int shmob_drm_crtc_mode_set(struct drm_crtc *crtc,
scrtc->format = format; scrtc->format = format;
scrtc->line_size = crtc->primary->fb->pitches[0]; scrtc->line_size = crtc->primary->fb->pitches[0];
if (sdev->meram) {
/* Enable MERAM cache if configured. We need to de-init
* configured ICBs before we can re-initialize them.
*/
if (scrtc->cache) {
sh_mobile_meram_cache_free(sdev->meram, scrtc->cache);
scrtc->cache = NULL;
}
cache = sh_mobile_meram_cache_alloc(sdev->meram, mdata,
crtc->primary->fb->pitches[0],
adjusted_mode->vdisplay,
format->meram,
&scrtc->line_size);
if (!IS_ERR(cache))
scrtc->cache = cache;
}
shmob_drm_crtc_compute_base(scrtc, x, y); shmob_drm_crtc_compute_base(scrtc, x, y);
return 0; return 0;
......
...@@ -28,7 +28,6 @@ struct shmob_drm_crtc { ...@@ -28,7 +28,6 @@ struct shmob_drm_crtc {
int dpms; int dpms;
const struct shmob_drm_format_info *format; const struct shmob_drm_format_info *format;
void *cache;
unsigned long dma[2]; unsigned long dma[2];
unsigned int line_size; unsigned int line_size;
bool started; bool started;
......
...@@ -23,7 +23,6 @@ ...@@ -23,7 +23,6 @@
struct clk; struct clk;
struct device; struct device;
struct drm_device; struct drm_device;
struct sh_mobile_meram_info;
struct shmob_drm_device { struct shmob_drm_device {
struct device *dev; struct device *dev;
...@@ -31,7 +30,6 @@ struct shmob_drm_device { ...@@ -31,7 +30,6 @@ struct shmob_drm_device {
void __iomem *mmio; void __iomem *mmio;
struct clk *clock; struct clk *clock;
struct sh_mobile_meram_info *meram;
u32 lddckr; u32 lddckr;
u32 ldmt1r; u32 ldmt1r;
......
...@@ -18,8 +18,6 @@ ...@@ -18,8 +18,6 @@
#include <drm/drm_gem_cma_helper.h> #include <drm/drm_gem_cma_helper.h>
#include <drm/drm_gem_framebuffer_helper.h> #include <drm/drm_gem_framebuffer_helper.h>
#include <video/sh_mobile_meram.h>
#include "shmob_drm_crtc.h" #include "shmob_drm_crtc.h"
#include "shmob_drm_drv.h" #include "shmob_drm_drv.h"
#include "shmob_drm_kms.h" #include "shmob_drm_kms.h"
...@@ -35,55 +33,46 @@ static const struct shmob_drm_format_info shmob_drm_format_infos[] = { ...@@ -35,55 +33,46 @@ static const struct shmob_drm_format_info shmob_drm_format_infos[] = {
.bpp = 16, .bpp = 16,
.yuv = false, .yuv = false,
.lddfr = LDDFR_PKF_RGB16, .lddfr = LDDFR_PKF_RGB16,
.meram = SH_MOBILE_MERAM_PF_RGB,
}, { }, {
.fourcc = DRM_FORMAT_RGB888, .fourcc = DRM_FORMAT_RGB888,
.bpp = 24, .bpp = 24,
.yuv = false, .yuv = false,
.lddfr = LDDFR_PKF_RGB24, .lddfr = LDDFR_PKF_RGB24,
.meram = SH_MOBILE_MERAM_PF_RGB,
}, { }, {
.fourcc = DRM_FORMAT_ARGB8888, .fourcc = DRM_FORMAT_ARGB8888,
.bpp = 32, .bpp = 32,
.yuv = false, .yuv = false,
.lddfr = LDDFR_PKF_ARGB32, .lddfr = LDDFR_PKF_ARGB32,
.meram = SH_MOBILE_MERAM_PF_RGB,
}, { }, {
.fourcc = DRM_FORMAT_NV12, .fourcc = DRM_FORMAT_NV12,
.bpp = 12, .bpp = 12,
.yuv = true, .yuv = true,
.lddfr = LDDFR_CC | LDDFR_YF_420, .lddfr = LDDFR_CC | LDDFR_YF_420,
.meram = SH_MOBILE_MERAM_PF_NV,
}, { }, {
.fourcc = DRM_FORMAT_NV21, .fourcc = DRM_FORMAT_NV21,
.bpp = 12, .bpp = 12,
.yuv = true, .yuv = true,
.lddfr = LDDFR_CC | LDDFR_YF_420, .lddfr = LDDFR_CC | LDDFR_YF_420,
.meram = SH_MOBILE_MERAM_PF_NV,
}, { }, {
.fourcc = DRM_FORMAT_NV16, .fourcc = DRM_FORMAT_NV16,
.bpp = 16, .bpp = 16,
.yuv = true, .yuv = true,
.lddfr = LDDFR_CC | LDDFR_YF_422, .lddfr = LDDFR_CC | LDDFR_YF_422,
.meram = SH_MOBILE_MERAM_PF_NV,
}, { }, {
.fourcc = DRM_FORMAT_NV61, .fourcc = DRM_FORMAT_NV61,
.bpp = 16, .bpp = 16,
.yuv = true, .yuv = true,
.lddfr = LDDFR_CC | LDDFR_YF_422, .lddfr = LDDFR_CC | LDDFR_YF_422,
.meram = SH_MOBILE_MERAM_PF_NV,
}, { }, {
.fourcc = DRM_FORMAT_NV24, .fourcc = DRM_FORMAT_NV24,
.bpp = 24, .bpp = 24,
.yuv = true, .yuv = true,
.lddfr = LDDFR_CC | LDDFR_YF_444, .lddfr = LDDFR_CC | LDDFR_YF_444,
.meram = SH_MOBILE_MERAM_PF_NV24,
}, { }, {
.fourcc = DRM_FORMAT_NV42, .fourcc = DRM_FORMAT_NV42,
.bpp = 24, .bpp = 24,
.yuv = true, .yuv = true,
.lddfr = LDDFR_CC | LDDFR_YF_444, .lddfr = LDDFR_CC | LDDFR_YF_444,
.meram = SH_MOBILE_MERAM_PF_NV24,
}, },
}; };
......
...@@ -24,7 +24,6 @@ struct shmob_drm_format_info { ...@@ -24,7 +24,6 @@ struct shmob_drm_format_info {
unsigned int bpp; unsigned int bpp;
bool yuv; bool yuv;
u32 lddfr; u32 lddfr;
unsigned int meram;
}; };
const struct shmob_drm_format_info *shmob_drm_format_info(u32 fourcc); const struct shmob_drm_format_info *shmob_drm_format_info(u32 fourcc);
......
...@@ -17,8 +17,6 @@ ...@@ -17,8 +17,6 @@
#include <drm/drm_fb_cma_helper.h> #include <drm/drm_fb_cma_helper.h>
#include <drm/drm_gem_cma_helper.h> #include <drm/drm_gem_cma_helper.h>
#include <video/sh_mobile_meram.h>
#include "shmob_drm_drv.h" #include "shmob_drm_drv.h"
#include "shmob_drm_kms.h" #include "shmob_drm_kms.h"
#include "shmob_drm_plane.h" #include "shmob_drm_plane.h"
......
...@@ -18,9 +18,6 @@ ...@@ -18,9 +18,6 @@
#include <drm/drm_mode.h> #include <drm/drm_mode.h>
struct sh_mobile_meram_cfg;
struct sh_mobile_meram_info;
enum shmob_drm_clk_source { enum shmob_drm_clk_source {
SHMOB_DRM_CLK_BUS, SHMOB_DRM_CLK_BUS,
SHMOB_DRM_CLK_PERIPHERAL, SHMOB_DRM_CLK_PERIPHERAL,
...@@ -93,7 +90,6 @@ struct shmob_drm_platform_data { ...@@ -93,7 +90,6 @@ struct shmob_drm_platform_data {
struct shmob_drm_interface_data iface; struct shmob_drm_interface_data iface;
struct shmob_drm_panel_data panel; struct shmob_drm_panel_data panel;
struct shmob_drm_backlight_data backlight; struct shmob_drm_backlight_data backlight;
const struct sh_mobile_meram_cfg *meram;
}; };
#endif /* __SHMOB_DRM_H__ */ #endif /* __SHMOB_DRM_H__ */
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