Merge branch 'next' into for-linus
[sfrench/cifs-2.6.git] / arch / arm / mach-orion5x / ts78xx-fpga.h
1 #define TS7800_FPGA_MAGIC 0x00b480
2 #define FPGAID(_magic, _rev) ((_magic << 8) + _rev)
3
4 /*
5  * get yer id's from http://ts78xx.digriz.org.uk/
6  * do *not* make up your own or 'borrow' any!
7  */
8 enum fpga_ids {
9         /* Technologic Systems */
10         TS7800_REV_1    = FPGAID(TS7800_FPGA_MAGIC, 0x01),
11         TS7800_REV_2    = FPGAID(TS7800_FPGA_MAGIC, 0x02),
12         TS7800_REV_3    = FPGAID(TS7800_FPGA_MAGIC, 0x03),
13         TS7800_REV_4    = FPGAID(TS7800_FPGA_MAGIC, 0x04),
14         TS7800_REV_5    = FPGAID(TS7800_FPGA_MAGIC, 0x05),
15         TS7800_REV_6    = FPGAID(TS7800_FPGA_MAGIC, 0x06),
16         TS7800_REV_7    = FPGAID(TS7800_FPGA_MAGIC, 0x07),
17         TS7800_REV_8    = FPGAID(TS7800_FPGA_MAGIC, 0x08),
18         TS7800_REV_9    = FPGAID(TS7800_FPGA_MAGIC, 0x09),
19
20         /* Unaffordable & Expensive */
21         UAE_DUMMY       = FPGAID(0xffffff, 0x01),
22 };
23
24 struct fpga_device {
25         unsigned                present:1;
26         unsigned                init:1;
27 };
28
29 struct fpga_devices {
30         /* Technologic Systems */
31         struct fpga_device      ts_rtc;
32         struct fpga_device      ts_nand;
33         struct fpga_device      ts_rng;
34 };
35
36 struct ts78xx_fpga_data {
37         unsigned int            id;
38         int                     state;
39
40         struct fpga_devices     supports;
41 };