0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #define SIOCYAMRESERVED (0)
0018 #define SIOCYAMSCFG (1)
0019 #define SIOCYAMGCFG (2)
0020 #define SIOCYAMSMCS (3)
0021
0022 #define YAM_IOBASE (1 << 0)
0023 #define YAM_IRQ (1 << 1)
0024 #define YAM_BITRATE (1 << 2)
0025 #define YAM_MODE (1 << 3)
0026 #define YAM_HOLDDLY (1 << 4)
0027 #define YAM_TXDELAY (1 << 5)
0028 #define YAM_TXTAIL (1 << 6)
0029 #define YAM_PERSIST (1 << 7)
0030 #define YAM_SLOTTIME (1 << 8)
0031 #define YAM_BAUDRATE (1 << 9)
0032
0033 #define YAM_MAXBITRATE 57600
0034 #define YAM_MAXBAUDRATE 115200
0035 #define YAM_MAXMODE 2
0036 #define YAM_MAXHOLDDLY 99
0037 #define YAM_MAXTXDELAY 999
0038 #define YAM_MAXTXTAIL 999
0039 #define YAM_MAXPERSIST 255
0040 #define YAM_MAXSLOTTIME 999
0041
0042 #define YAM_FPGA_SIZE 5302
0043
0044 struct yamcfg {
0045 unsigned int mask;
0046 unsigned int iobase;
0047 unsigned int irq;
0048 unsigned int bitrate;
0049 unsigned int baudrate;
0050 unsigned int txdelay;
0051 unsigned int txtail;
0052 unsigned int persist;
0053 unsigned int slottime;
0054 unsigned int mode;
0055 unsigned int holddly;
0056 };
0057
0058 struct yamdrv_ioctl_cfg {
0059 int cmd;
0060 struct yamcfg cfg;
0061 };
0062
0063 struct yamdrv_ioctl_mcs {
0064 int cmd;
0065 unsigned int bitrate;
0066 unsigned char bits[YAM_FPGA_SIZE];
0067 };