Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / include / linux / mfd / tmio.h
blob6b9c5d06690c8d9f82bd99a19e215b9fc8e1a683
1 #ifndef MFD_TMIO_H
2 #define MFD_TMIO_H
4 #include <linux/fb.h>
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))
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)
22 * data for the MMC controller
24 struct tmio_mmc_data {
25 const unsigned int hclk;
29 * data for the NAND controller
31 struct tmio_nand_data {
32 struct nand_bbt_descr *badblock_pattern;
33 struct mtd_partition *partition;
34 unsigned int num_partitions;
37 #define FBIO_TMIO_ACC_WRITE 0x7C639300
38 #define FBIO_TMIO_ACC_SYNC 0x7C639301
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;
48 /* in mm: size of screen */
49 int height;
50 int width;
54 #endif