mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
[s3c24xx] Add ioctls to glamo framebuffer driver to enable/disable glamo
engines. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16686 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
#ifndef __GLAMO_ENGINE_H
|
||||
#define __GLAMO_ENGINE_H
|
||||
|
||||
enum glamo_engine {
|
||||
GLAMO_ENGINE_CAPTURE = 0,
|
||||
GLAMO_ENGINE_ISP = 1,
|
||||
GLAMO_ENGINE_JPEG = 2,
|
||||
GLAMO_ENGINE_MPEG_ENC = 3,
|
||||
GLAMO_ENGINE_MPEG_DEC = 4,
|
||||
GLAMO_ENGINE_LCD = 5,
|
||||
GLAMO_ENGINE_CMDQ = 6,
|
||||
GLAMO_ENGINE_2D = 7,
|
||||
GLAMO_ENGINE_3D = 8,
|
||||
GLAMO_ENGINE_MMC = 9,
|
||||
GLAMO_ENGINE_MICROP0 = 10,
|
||||
GLAMO_ENGINE_RISC = 11,
|
||||
GLAMO_ENGINE_MICROP1_MPEG_ENC = 12,
|
||||
GLAMO_ENGINE_MICROP1_MPEG_DEC = 13,
|
||||
#if 0
|
||||
GLAMO_ENGINE_H264_DEC = 14,
|
||||
GLAMO_ENGINE_RISC1 = 15,
|
||||
GLAMO_ENGINE_SPI = 16,
|
||||
#endif
|
||||
__NUM_GLAMO_ENGINES
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,50 @@
|
||||
#ifndef _LINUX_GLAMOFB_H
|
||||
#define _LINUX_GLAMOFB_H
|
||||
|
||||
#include <linux/fb.h>
|
||||
#include <linux/glamo-engine.h>
|
||||
|
||||
#ifdef __KERNEL__
|
||||
|
||||
#include <linux/spi/glamo.h>
|
||||
|
||||
struct glamo_core;
|
||||
|
||||
struct glamofb_platform_data {
|
||||
int width, height;
|
||||
int fb_mem_size;
|
||||
|
||||
int num_modes;
|
||||
struct fb_videomode *modes;
|
||||
|
||||
struct glamo_spi_info *spi_info;
|
||||
struct glamo_spigpio_info *spigpio_info;
|
||||
struct glamo_core *glamo;
|
||||
|
||||
struct platform_device *mmc_dev;
|
||||
|
||||
/* glamo mmc platform specific info */
|
||||
int (*glamo_can_set_mci_power)(void);
|
||||
|
||||
/* glamo-mci asking if it should use the slow clock to card */
|
||||
int (*glamo_mci_use_slow)(void);
|
||||
int (*glamo_irq_is_wired)(void);
|
||||
void (*glamo_external_reset)(int);
|
||||
};
|
||||
|
||||
int glamofb_cmd_mode(struct glamofb_handle *gfb, int on);
|
||||
int glamofb_cmd_write(struct glamofb_handle *gfb, u_int16_t val);
|
||||
|
||||
#ifdef CONFIG_MFD_GLAMO
|
||||
void glamo_lcm_reset(int level);
|
||||
#else
|
||||
#define glamo_lcm_reset(...) do {} while (0)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#define GLAMOFB_ENGINE_ENABLE _IOW('F', 0x1, __u32)
|
||||
#define GLAMOFB_ENGINE_DISABLE _IOW('F', 0x2, __u32)
|
||||
#define GLAMOFB_ENGINE_RESET _IOW('F', 0x3, __u32)
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,23 @@
|
||||
--- a/include/linux/fb.h
|
||||
+++ b/include/linux/fb.h
|
||||
@@ -124,6 +124,7 @@ struct dentry;
|
||||
#define FB_ACCEL_TRIDENT_BLADE3D 52 /* Trident Blade3D */
|
||||
#define FB_ACCEL_TRIDENT_BLADEXP 53 /* Trident BladeXP */
|
||||
#define FB_ACCEL_CIRRUS_ALPINE 53 /* Cirrus Logic 543x/544x/5480 */
|
||||
+#define FB_ACCEL_GLAMO 50 /* SMedia Glamo */
|
||||
#define FB_ACCEL_NEOMAGIC_NM2070 90 /* NeoMagic NM2070 */
|
||||
#define FB_ACCEL_NEOMAGIC_NM2090 91 /* NeoMagic NM2090 */
|
||||
#define FB_ACCEL_NEOMAGIC_NM2093 92 /* NeoMagic NM2093 */
|
||||
diff --git a/Kbuild b/Kbuild
|
||||
index 3f0eaa3..72699f0 100644
|
||||
--- a/include/linux/Kbuild
|
||||
+++ b/include/linux/Kbuild
|
||||
@@ -75,6 +75,8 @@ header-y += genetlink.h
|
||||
header-y += gen_stats.h
|
||||
header-y += gfs2_ondisk.h
|
||||
header-y += gigaset_dev.h
|
||||
+header-y += glamofb.h
|
||||
+header-y += glamo-engine.h
|
||||
header-y += hysdn_if.h
|
||||
header-y += i2o-dev.h
|
||||
header-y += i8k.h
|
||||
Reference in New Issue
Block a user