1/* 2 * madgemc.h: Header for the madgemc tms380tr module 3 * 4 * Authors: 5 * - Adam Fritzler <mid@auk.cx> 6 */ 7 8#ifndef __LINUX_MADGEMC_H 9#define __LINUX_MADGEMC_H 10 11#ifdef __KERNEL__ 12 13#define MADGEMC16_CARDNAME "Madge Smart 16/4 MC16 Ringnode" 14#define MADGEMC32_CARDNAME "Madge Smart 16/4 MC32 Ringnode" 15 16/* 17 * Bit definitions for the POS config registers 18 */ 19#define MC16_POS0_ADDR1 0x20 20#define MC16_POS2_ADDR2 0x04 21#define MC16_POS3_ADDR3 0x20 22 23#define MC_CONTROL_REG0 ((long)-8) /* 0x00 */ 24#define MC_CONTROL_REG1 ((long)-7) /* 0x01 */ 25#define MC_ADAPTER_POS_REG0 ((long)-6) /* 0x02 */ 26#define MC_ADAPTER_POS_REG1 ((long)-5) /* 0x03 */ 27#define MC_ADAPTER_POS_REG2 ((long)-4) /* 0x04 */ 28#define MC_ADAPTER_REG5_UNUSED ((long)-3) /* 0x05 */ 29#define MC_ADAPTER_REG6_UNUSED ((long)-2) /* 0x06 */ 30#define MC_CONTROL_REG7 ((long)-1) /* 0x07 */ 31 32#define MC_CONTROL_REG0_UNKNOWN1 0x01 33#define MC_CONTROL_REG0_UNKNOWN2 0x02 34#define MC_CONTROL_REG0_SIFSEL 0x04 35#define MC_CONTROL_REG0_PAGE 0x08 36#define MC_CONTROL_REG0_TESTINTERRUPT 0x10 37#define MC_CONTROL_REG0_UNKNOWN20 0x20 38#define MC_CONTROL_REG0_SINTR 0x40 39#define MC_CONTROL_REG0_UNKNOWN80 0x80 40 41#define MC_CONTROL_REG1_SINTEN 0x01 42#define MC_CONTROL_REG1_BITOFDEATH 0x02 43#define MC_CONTROL_REG1_NSRESET 0x04 44#define MC_CONTROL_REG1_UNKNOWN8 0x08 45#define MC_CONTROL_REG1_UNKNOWN10 0x10 46#define MC_CONTROL_REG1_UNKNOWN20 0x20 47#define MC_CONTROL_REG1_SRSX 0x40 48#define MC_CONTROL_REG1_SPEED_SEL 0x80 49 50#define MC_CONTROL_REG7_CABLESTP 0x00 51#define MC_CONTROL_REG7_CABLEUTP 0x01 52 53/* 54 * ROM Page Zero 55 */ 56#define MC_ROM_MANUFACTURERID 0x00 57#define MC_ROM_ADAPTERID 0x01 58#define MC_ROM_REVISION 0x02 59#define MC_ROM_CONFIG0 0x03 60#define MC_ROM_CONFIG1 0x04 61#define MC_ROM_CONFIG2 0x05 62 63/* 64 * ROM Page One 65 */ 66#define MC_ROM_UNUSED_BYTE 0x00 67#define MC_ROM_BIA_START 0x01 68 69#endif /* __KERNEL__ */ 70#endif /* __LINUX_MADGEMC_H */ 71