linux/arch/arm/mach-orion5x/ts78xx-fpga.h
<<
>>
Prefs
   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 */
   8enum 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
  24struct fpga_device {
  25        unsigned                present:1;
  26        unsigned                init:1;
  27};
  28
  29struct 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
  36struct ts78xx_fpga_data {
  37        unsigned int            id;
  38        int                     state;
  39
  40        struct fpga_devices     supports;
  41};
  42