mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 11:11:45 -04:00
broadsheetfb: add MMIO hooks
Allow boards with GP-MMIO controllers to provide hooks to broadsheetfb in order to offload cmd/data writes and data reads instead of relying only on host based GPIO wiggling. Signed-off-by: Jaya Kumar <[email protected]> Cc: Geert Uytterhoeven <[email protected]> Cc: Krzysztof Helt <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
e17cea3cec
commit
2afb189817
2 changed files with 107 additions and 20 deletions
|
|
@ -34,6 +34,10 @@
|
|||
#define BS_DC 0x02
|
||||
#define BS_WR 0x03
|
||||
|
||||
/* Broadsheet IO interface specific defines */
|
||||
#define BS_MMIO_CMD 0x01
|
||||
#define BS_MMIO_DATA 0x02
|
||||
|
||||
/* struct used by broadsheet. board specific stuff comes from *board */
|
||||
struct broadsheetfb_par {
|
||||
struct fb_info *info;
|
||||
|
|
@ -49,12 +53,17 @@ struct broadsheet_board {
|
|||
struct module *owner;
|
||||
int (*init)(struct broadsheetfb_par *);
|
||||
int (*wait_for_rdy)(struct broadsheetfb_par *);
|
||||
void (*set_ctl)(struct broadsheetfb_par *, unsigned char, u8);
|
||||
void (*set_hdb)(struct broadsheetfb_par *, u16);
|
||||
u16 (*get_hdb)(struct broadsheetfb_par *);
|
||||
void (*cleanup)(struct broadsheetfb_par *);
|
||||
int (*get_panel_type)(void);
|
||||
int (*setup_irq)(struct fb_info *);
|
||||
};
|
||||
|
||||
/* Functions for boards that use GPIO */
|
||||
void (*set_ctl)(struct broadsheetfb_par *, unsigned char, u8);
|
||||
void (*set_hdb)(struct broadsheetfb_par *, u16);
|
||||
u16 (*get_hdb)(struct broadsheetfb_par *);
|
||||
|
||||
/* Functions for boards that have specialized MMIO */
|
||||
void (*mmio_write)(struct broadsheetfb_par *, int type, u16);
|
||||
u16 (*mmio_read)(struct broadsheetfb_par *);
|
||||
};
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in a new issue