sh: convert /proc/cpu/aligmnent, /proc/cpu/kernel_alignment to seq_file
[safe/jmp/linux-2.6] / include / linux / mfd / tmio.h
1 #ifndef MFD_TMIO_H
2 #define MFD_TMIO_H
3
4 #include <linux/fb.h>
5
6 #define tmio_ioread8(addr) readb(addr)
7 #define tmio_ioread16(addr) readw(addr)
8 #define tmio_ioread16_rep(r, b, l) readsw(r, b, l)
9 #define tmio_ioread32(addr) \
10         (((u32) readw((addr))) | (((u32) readw((addr) + 2)) << 16))
11
12 #define tmio_iowrite8(val, addr) writeb((val), (addr))
13 #define tmio_iowrite16(val, addr) writew((val), (addr))
14 #define tmio_iowrite16_rep(r, b, l) writesw(r, b, l)
15 #define tmio_iowrite32(val, addr) \
16         do { \
17         writew((val),       (addr)); \
18         writew((val) >> 16, (addr) + 2); \
19         } while (0)
20
21 /*
22  * data for the MMC controller
23  */
24 struct tmio_mmc_data {
25         const unsigned int              hclk;
26 };
27
28 /*
29  * data for the NAND controller
30  */
31 struct tmio_nand_data {
32         struct nand_bbt_descr   *badblock_pattern;
33         struct mtd_partition    *partition;
34         unsigned int            num_partitions;
35 };
36
37 #define FBIO_TMIO_ACC_WRITE     0x7C639300
38 #define FBIO_TMIO_ACC_SYNC      0x7C639301
39
40 struct tmio_fb_data {
41         int                     (*lcd_set_power)(struct platform_device *fb_dev,
42                                                                 bool on);
43         int                     (*lcd_mode)(struct platform_device *fb_dev,
44                                         const struct fb_videomode *mode);
45         int                     num_modes;
46         struct fb_videomode     *modes;
47
48         /* in mm: size of screen */
49         int                     height;
50         int                     width;
51 };
52
53
54 #endif