Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[pandora-kernel.git] / include / linux / mfd / tc6393xb.h
index fec7b3f..626e448 100644 (file)
 #ifndef MFD_TC6393XB_H
 #define MFD_TC6393XB_H
 
+#include <linux/fb.h>
+
 /* Also one should provide the CK3P6MI clock */
 struct tc6393xb_platform_data {
        u16     scr_pll2cr;     /* PLL2 Control */
        u16     scr_gper;       /* GP Enable */
-       u32     scr_gpo_doecr;  /* GPO Data OE Control */
-       u32     scr_gpo_dsr;    /* GPO Data Set */
 
        int     (*enable)(struct platform_device *dev);
        int     (*disable)(struct platform_device *dev);
@@ -31,15 +31,28 @@ struct tc6393xb_platform_data {
 
        int     irq_base;       /* base for subdevice irqs */
        int     gpio_base;
+       int     (*setup)(struct platform_device *dev);
+       void    (*teardown)(struct platform_device *dev);
 
        struct tmio_nand_data   *nand_data;
+       struct tmio_fb_data     *fb_data;
+
+       unsigned resume_restore : 1; /* make special actions
+                                       to preserve the state
+                                       on suspend/resume */
 };
 
+extern int tc6393xb_lcd_mode(struct platform_device *fb,
+                            const struct fb_videomode *mode);
+extern int tc6393xb_lcd_set_power(struct platform_device *fb, bool on);
+
 /*
  * Relative to irq_base
  */
 #define        IRQ_TC6393_NAND         0
 #define        IRQ_TC6393_MMC          1
+#define        IRQ_TC6393_OHCI         2
+#define        IRQ_TC6393_FB           4
 
 #define        TC6393XB_NR_IRQS        8