[U-Boot] [PATCH v4 15/29] video: Drop the sed13806 driver

Simon Glass sjg at chromium.org
Tue Oct 18 04:12:48 CEST 2016


This is not used in U-Boot.

Signed-off-by: Simon Glass <sjg at chromium.org>
Reviewed-by: Tom Rini <trini at konsulko.com>
---

Changes in v4: None
Changes in v3: None
Changes in v2: None

 README                       |   5 -
 drivers/video/Makefile       |   1 -
 drivers/video/cfb_console.c  |   9 --
 drivers/video/sed13806.c     | 286 -------------------------------------------
 include/sed13806.h           |  81 ------------
 scripts/config_whitelist.txt |   1 -
 6 files changed, 383 deletions(-)
 delete mode 100644 drivers/video/sed13806.c
 delete mode 100644 include/sed13806.h

diff --git a/README b/README
index 8925837..f585705 100644
--- a/README
+++ b/README
@@ -1614,11 +1614,6 @@ CBFS (Coreboot Filesystem) support
 		instead.
 
 - Video support:
-		CONFIG_VIDEO_SED13806
-		Enable Epson SED13806 driver. This driver supports 8bpp
-		and 16bpp modes defined by CONFIG_VIDEO_SED13806_8BPP
-		or CONFIG_VIDEO_SED13806_16BPP
-
 		CONFIG_FSL_DIU_FB
 		Enable the Freescale DIU video driver.	Reference boards for
 		SOCs that have a DIU should define this macro to enable DIU
diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index 2d5f607..db34904 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -50,7 +50,6 @@ obj-$(CONFIG_VIDEO_MVEBU) += mvebu_lcd.o
 obj-$(CONFIG_VIDEO_MXS) += mxsfb.o videomodes.o
 obj-$(CONFIG_VIDEO_OMAP3) += omap3_dss.o
 obj-$(CONFIG_VIDEO_SANDBOX_SDL) += sandbox_sdl.o
-obj-$(CONFIG_VIDEO_SED13806) += sed13806.o
 obj-$(CONFIG_VIDEO_SM501) += sm501.o
 obj-$(CONFIG_VIDEO_SUNXI) += sunxi_display.o videomodes.o
 obj-$(CONFIG_VIDEO_TEGRA20) += tegra.o
diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index aca4444..ac7c402 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -95,15 +95,6 @@
 #define VIDEO_HW_BITBLT
 #endif
 
-/*
- * Defines for the SED13806 driver
- */
-#ifdef CONFIG_VIDEO_SED13806
-#define VIDEO_FB_LITTLE_ENDIAN
-#define VIDEO_HW_RECTFILL
-#define VIDEO_HW_BITBLT
-#endif
-
 #if defined(CONFIG_VIDEO_MXS)
 #define VIDEO_FB_16BPP_WORD_SWAP
 #endif
diff --git a/drivers/video/sed13806.c b/drivers/video/sed13806.c
deleted file mode 100644
index cd7fac6..0000000
--- a/drivers/video/sed13806.c
+++ /dev/null
@@ -1,286 +0,0 @@
-/*
- * (C) Copyright 2002
- * Stäubli Faverges - <www.staubli.com>
- * Pierre AUBERT  p.aubert at staubli.com
- *
- * SPDX-License-Identifier:	GPL-2.0+
- */
-/* Video support for Epson SED13806 chipset                                  */
-
-#include <common.h>
-
-#include <video_fb.h>
-#include <sed13806.h>
-
-#define readByte(ptrReg)                \
-    *(volatile unsigned char *)(sed13806.isaBase + ptrReg)
-
-#define writeByte(ptrReg,value) \
-    *(volatile unsigned char *)(sed13806.isaBase + ptrReg) = value
-
-#define writeWord(ptrReg,value) \
-    (*(volatile unsigned short *)(sed13806.isaBase + ptrReg) = ((value >> 8 ) & 0xff) | ((value << 8) & 0xff00))
-
-GraphicDevice sed13806;
-
-/*-----------------------------------------------------------------------------
- * EpsonSetRegs --
- *-----------------------------------------------------------------------------
- */
-static void EpsonSetRegs (void)
-{
-    /* the content of the chipset register depends on the board (clocks, ...)*/
-    const S1D_REGS *preg = board_get_regs ();
-    while (preg -> Index) {
-	writeByte (preg -> Index, preg -> Value);
-	preg ++;
-    }
-}
-
-/*-----------------------------------------------------------------------------
- * video_hw_init --
- *-----------------------------------------------------------------------------
- */
-void *video_hw_init (void)
-{
-    unsigned int *vm, i;
-
-    memset (&sed13806, 0, sizeof (GraphicDevice));
-
-    /* Initialization of the access to the graphic chipset
-       Retreive base address of the chipset
-       (see board/RPXClassic/eccx.c)                                         */
-    if ((sed13806.isaBase = board_video_init ()) == 0) {
-	return (NULL);
-    }
-
-    sed13806.frameAdrs = sed13806.isaBase + FRAME_BUFFER_OFFSET;
-    sed13806.winSizeX = board_get_width ();
-    sed13806.winSizeY = board_get_height ();
-
-#if defined(CONFIG_VIDEO_SED13806_8BPP)
-    sed13806.gdfIndex = GDF__8BIT_INDEX;
-    sed13806.gdfBytesPP = 1;
-
-#elif defined(CONFIG_VIDEO_SED13806_16BPP)
-    sed13806.gdfIndex = GDF_16BIT_565RGB;
-    sed13806.gdfBytesPP = 2;
-
-#else
-#error Unsupported SED13806 BPP
-#endif
-
-    sed13806.memSize = sed13806.winSizeX * sed13806.winSizeY * sed13806.gdfBytesPP;
-
-    /* Load SED registers                                                    */
-    EpsonSetRegs ();
-
-    /* (see board/RPXClassic/RPXClassic.c)                                   */
-    board_validate_screen (sed13806.isaBase);
-
-    /* Clear video memory */
-    i = sed13806.memSize/4;
-    vm = (unsigned int *)sed13806.frameAdrs;
-    while(i--)
-	*vm++ = 0;
-
-
-    return (&sed13806);
-}
-/*-----------------------------------------------------------------------------
- * Epson_wait_idle -- Wait for hardware to become idle
- *-----------------------------------------------------------------------------
- */
-static void Epson_wait_idle (void)
-{
-    while (readByte (BLT_CTRL0) & 0x80);
-
-    /* Read a word in the BitBLT memory area to shutdown the BitBLT engine   */
-    *(volatile unsigned short *)(sed13806.isaBase + BLT_REG);
-}
-
-/*-----------------------------------------------------------------------------
- * video_hw_bitblt --
- *-----------------------------------------------------------------------------
- */
-void video_hw_bitblt (
-    unsigned int bpp,             /* bytes per pixel */
-    unsigned int src_x,           /* source pos x */
-    unsigned int src_y,           /* source pos y */
-    unsigned int dst_x,           /* dest pos x */
-    unsigned int dst_y,           /* dest pos y */
-    unsigned int dim_x,           /* frame width */
-    unsigned int dim_y            /* frame height */
-    )
-{
-    register GraphicDevice *pGD = (GraphicDevice *)&sed13806;
-    unsigned long	srcAddr, dstAddr;
-    unsigned int stride = bpp * pGD -> winSizeX;
-
-    srcAddr = (src_y * stride) + (src_x * bpp);
-    dstAddr = (dst_y * stride) + (dst_x * bpp);
-
-    Epson_wait_idle ();
-
-    writeByte(BLT_ROP,0x0C);	/* source */
-    writeByte(BLT_OP,0x02);/* move blit in positive direction with ROP */
-    writeWord(BLT_MEM_OFF0, stride / 2);
-    if (pGD -> gdfIndex == GDF__8BIT_INDEX) {
-	writeByte(BLT_CTRL1,0x00);
-    }
-    else {
-	writeByte(BLT_CTRL1,0x01);
-    }
-
-    writeWord(BLT_WIDTH0,(dim_x - 1));
-    writeWord(BLT_HEIGHT0,(dim_y - 1));
-
-    /* set up blit registers                                                 */
-    writeByte(BLT_SRC_ADDR0,srcAddr);
-    writeByte(BLT_SRC_ADDR1,srcAddr>>8);
-    writeByte(BLT_SRC_ADDR2,srcAddr>>16);
-
-    writeByte(BLT_DST_ADDR0,dstAddr);
-    writeByte(BLT_DST_ADDR1,dstAddr>>8);
-    writeByte(BLT_DST_ADDR2,dstAddr>>16);
-
-    /* Engage the blt engine                                                 */
-    /* rectangular region for src and dst                                    */
-    writeByte(BLT_CTRL0,0x80);
-
-    /* wait untill current blits finished                                    */
-    Epson_wait_idle ();
-}
-/*-----------------------------------------------------------------------------
- * video_hw_rectfill --
- *-----------------------------------------------------------------------------
- */
-void video_hw_rectfill (
-    unsigned int bpp,             /* bytes per pixel */
-    unsigned int dst_x,           /* dest pos x */
-    unsigned int dst_y,           /* dest pos y */
-    unsigned int dim_x,           /* frame width */
-    unsigned int dim_y,           /* frame height */
-    unsigned int color            /* fill color */
-     )
-{
-    register GraphicDevice *pGD = (GraphicDevice *)&sed13806;
-    unsigned long	dstAddr;
-    unsigned int stride = bpp * pGD -> winSizeX;
-
-    dstAddr = (dst_y * stride) + (dst_x * bpp);
-
-    Epson_wait_idle ();
-
-    /* set up blit registers                                                 */
-    writeByte(BLT_DST_ADDR0,dstAddr);
-    writeByte(BLT_DST_ADDR1,dstAddr>>8);
-    writeByte(BLT_DST_ADDR2,dstAddr>>16);
-
-    writeWord(BLT_WIDTH0,(dim_x - 1));
-    writeWord(BLT_HEIGHT0,(dim_y - 1));
-    writeWord(BLT_FGCOLOR0,color);
-
-    writeByte(BLT_OP,0x0C);  /* solid fill                                   */
-    writeWord(BLT_MEM_OFF0,stride / 2);
-
-    if (pGD -> gdfIndex == GDF__8BIT_INDEX) {
-	writeByte(BLT_CTRL1,0x00);
-    }
-    else {
-	writeByte(BLT_CTRL1,0x01);
-    }
-
-    /* Engage the blt engine                                                 */
-    /* rectangular region for src and dst                                    */
-    writeByte(BLT_CTRL0,0x80);
-
-    /* wait untill current blits finished                                    */
-    Epson_wait_idle ();
-}
-
-/*-----------------------------------------------------------------------------
- * video_set_lut --
- *-----------------------------------------------------------------------------
- */
-void video_set_lut (
-    unsigned int index,           /* color number */
-    unsigned char r,              /* red */
-    unsigned char g,              /* green */
-    unsigned char b               /* blue */
-    )
-{
-    writeByte(REG_LUT_ADDR, index );
-    writeByte(REG_LUT_DATA, r);
-    writeByte(REG_LUT_DATA, g);
-    writeByte(REG_LUT_DATA, b);
-}
-#ifdef CONFIG_VIDEO_HW_CURSOR
-/*-----------------------------------------------------------------------------
- * video_set_hw_cursor --
- *-----------------------------------------------------------------------------
- */
-void video_set_hw_cursor (int x, int y)
-{
-    writeByte (LCD_CURSOR_XL, (x & 0xff));
-    writeByte (LCD_CURSOR_XM, (x >> 8));
-    writeByte (LCD_CURSOR_YL, (y & 0xff));
-    writeByte (LCD_CURSOR_YM, (y >> 8));
-}
-
-/*-----------------------------------------------------------------------------
- * video_init_hw_cursor --
- *-----------------------------------------------------------------------------
- */
-void video_init_hw_cursor (int font_width, int font_height)
-{
-    volatile unsigned char *ptr;
-    unsigned char pattern;
-    int i;
-
-
-    /* Init cursor content
-       Cursor size is 64x64 pixels
-       Start of the cursor memory depends on panel type (dual panel ...)     */
-    if ((i = readByte (LCD_CURSOR_START)) == 0) {
-	ptr = (unsigned char *)(sed13806.frameAdrs + DEFAULT_VIDEO_MEMORY_SIZE - HWCURSORSIZE);
-    }
-    else {
-	ptr = (unsigned char *)(sed13806.frameAdrs + DEFAULT_VIDEO_MEMORY_SIZE - (i * 8192));
-    }
-
-    /* Fill the first line and the first empty line after cursor             */
-    for (i = 0, pattern = 0; i < 64; i++) {
-	if (i < font_width) {
-	    /* Invert background                                             */
-	    pattern |= 0x3;
-
-	}
-	else {
-	    /* Background                                                    */
-	    pattern |= 0x2;
-	}
-	if ((i & 3) == 3) {
-	    *ptr = pattern;
-	    *(ptr + font_height * 16) = 0xaa;
-	    ptr ++;
-	    pattern = 0;
-	}
-	pattern <<= 2;
-    }
-
-    /* Duplicate this line                                                   */
-    for (i = 1; i < font_height; i++) {
-	memcpy ((void *)ptr, (void *)(ptr - 16), 16);
-	ptr += 16;
-    }
-
-    for (; i < 64; i++) {
-	memcpy ((void *)(ptr + 16), (void *)ptr, 16);
-	ptr += 16;
-    }
-
-    /* Select cursor mode                                                    */
-    writeByte (LCD_CURSOR_CNTL, 1);
-}
-#endif
diff --git a/include/sed13806.h b/include/sed13806.h
deleted file mode 100644
index 1cb0b86..0000000
--- a/include/sed13806.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * (C) Copyright 2002
- * Stäubli Faverges - <www.staubli.com>
- * Pierre AUBERT  p.aubert at staubli.com
- *
- * SPDX-License-Identifier:	GPL-2.0+
- */
-/* Video support for Epson SED13806 chipset                                  */
-
-
-#ifndef _SED13806_H_
-#define _SED13806_H_
-
-
-/* General definitions                                                       */
-#define FRAME_BUFFER_OFFSET        0x200000     /* Frame buffer offset */
-#define TOTAL_SPACE_SIZE           0x400000
-
-#define DEFAULT_VIDEO_MEMORY_SIZE  0x140000     /* Video Memory Size */
-
-#define HWCURSORSIZE		   1024     /* Size of memory reserved
-						   for HW cursor*/
-
-/* Offset of chipset registers                                               */
-#define	BLT_CTRL0	(0x0100)
-#define	BLT_CTRL1	(0x0101)
-#define BLT_ROP		(0x0102)
-#define	BLT_OP		(0x0103)
-#define BLT_SRC_ADDR0	(0x0104)
-#define	BLT_SRC_ADDR1	(0x0105)
-#define	BLT_SRC_ADDR2	(0x0106)
-#define	BLT_DST_ADDR0	(0x0108)
-#define BLT_DST_ADDR1	(0x0109)
-#define	BLT_DST_ADDR2	(0x010A)
-#define BLT_MEM_OFF0	(0x010C)
-#define BLT_MEM_OFF1	(0x010D)
-#define BLT_WIDTH0	(0x0110)
-#define BLT_WIDTH1	(0x0111)
-#define BLT_HEIGHT0	(0x0112)
-#define BLT_HEIGHT1	(0x0113)
-#define	BLT_BGCOLOR0	(0x0114)
-#define	BLT_BGCOLOR1	(0x0115)
-#define	BLT_FGCOLOR0	(0x0118)
-#define BLT_FGCOLOR1	(0x0119)
-
-#define BLT_REG         (0x100000)
-
-/* Lookup table registers                                                    */
-#define REG_LUT_ADDR 0x1e2
-#define REG_LUT_DATA 0x1e4
-
-/* Cursor/Ink registers                                                      */
-#define LCD_CURSOR_CNTL         (0x0070)
-#define LCD_CURSOR_START        (0x0071)
-#define LCD_CURSOR_XL           (0x0072)
-#define LCD_CURSOR_XM           (0x0073)
-#define LCD_CURSOR_YL           (0x0074)
-#define LCD_CURSOR_YM           (0x0075)
-#define LCD_CURSOR_COL0_B       (0x0076)
-#define LCD_CURSOR_COL0_G       (0x0077)
-#define LCD_CURSOR_COL0_R       (0x0078)
-#define LCD_CURSOR_COL1_B       (0x007A)
-#define LCD_CURSOR_COL1_G       (0x007B)
-#define LCD_CURSOR_COL1_R       (0x007C)
-#define LCD_CURSOR_FIFO         (0x007E)
-
-typedef struct
-{
-    unsigned short      Index;
-    unsigned char       Value;
-} S1D_REGS;
-
-
-/* Board specific functions                                                  */
-unsigned int board_video_init (void);
-void board_validate_screen (unsigned int base);
-const S1D_REGS *board_get_regs (void);
-int board_get_width (void);
-int board_get_height (void);
-
-#endif /* _SED13806_H_ */
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index 696f77e..7594194 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -8273,7 +8273,6 @@ CONFIG_VIDEO_MXS
 CONFIG_VIDEO_MXS_MODE_SYSTEM
 CONFIG_VIDEO_OMAP3
 CONFIG_VIDEO_ONBOARD
-CONFIG_VIDEO_SED13806
 CONFIG_VIDEO_SM501
 CONFIG_VIDEO_SM501_16BPP
 CONFIG_VIDEO_SM501_32BPP
-- 
2.8.0.rc3.226.g39d4020



More information about the U-Boot mailing list