cycx_cfm.h
001:
002:
003:
004:
005: <acme@conectiva.com.br>
006:
007:
008:
009: <74604.152@compuserve.com>
010:
011:
012:
013:
014:
015:
016:
017:
018: #ifndef _CYCX_CFM_H
019: #define _CYCX_CFM_H
020:
021:
022:
023: #define CFM_VERSION 2
024: #define CFM_SIGNATURE "CFM - Cyclades CYCX Firmware Module"
025:
026:
027: #define CFM_IMAGE_SIZE 0x20000
028: #define CFM_DESCR_LEN 256
029: #define CFM_MAX_CYCX 1
030: #define CFM_LOAD_BUFSZ 0x400
031:
032:
033: #define GEN_POWER_ON 0x1280
034:
035: #define GEN_SET_SEG 0x1401
036: #define GEN_BOOT_DAT 0x1402
037: #define GEN_START 0x1403
038: #define GEN_DEFPAR 0x1404
039:
040:
041: #define CYCX_2X 2
042:
043: #define CYCX_8X 8
044: #define CYCX_16X 16
045:
046: #define CFID_X25_2X 5200
047:
048:
049:
050: @codeid
051: @version
052: @adapter
053: @memsize
054: @reserved
055: @startoffs
056: @winoffs
057: @codeoffs
058: @codesize
059: @dataoffs
060: @datasize
061:
062: struct cycx_fw_info {
063: unsigned short codeid;
064: unsigned short version;
065: unsigned short adapter[CFM_MAX_CYCX];
066: unsigned long memsize;
067: unsigned short reserved[2];
068: unsigned short startoffs;
069: unsigned short winoffs;
070: unsigned short codeoffs;
071: unsigned long codesize;
072: unsigned short dataoffs;
073: unsigned long datasize;
074: };
075:
076:
077:
078: @signature
079: @version
080: @checksum
081: @reserved
082: @descr
083: @info
084: @image
085:
086: struct cycx_firmware {
087: char signature[80];
088: unsigned short version;
089: unsigned short checksum;
090: unsigned short reserved[6];
091: char descr[CFM_DESCR_LEN];
092: struct cycx_fw_info info;
093: unsigned char image[0];
094: };
095:
096: struct cycx_fw_header {
097: unsigned long reset_size;
098: unsigned long data_size;
099: unsigned long code_size;
100: };
101: #endif
102:
© Andrew Scott 2006 -
2025,
All Rights Reserved