SDC C-Project CF Review 프로그램
LYW
2021-08-17 572aebd50409d2f11183d6ebbb9d12fe9041e7a5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
//---------------------------------------------------------------------------
//  Project PMACUSB Firmware
//  Quad 1, Inc.
//  Copyright © 1999. All Rights Reserved.
//
//  SUBSYSTEM:    PMACUSB Expansion Card
//  FILE:         VENDCMDS.H
//  AUTHOR:       Henry Bausley
//
//  OVERVIEW
//  ~~~~~~~~
//  Header file of constants for various vendor specific codes
//
//  NOTES
//  ~~~~~
//
//----------------------------------------------------------------------------
 
#ifndef _VENDCMDS_H
#define _VENDCMDS_H
 
// Command Structure for ethernet
typedef struct tagEthernetCmd
{
  BYTE  RequestType;
  BYTE  Request;
  WORD  wValue;
  WORD  wIndex;
  WORD  wLength;
  BYTE  bData[1492];
}  ETHERNETCMD,*PETHERNETCMD;
#define ETHERNETCMDSIZE    8
 
//-----------------------------------------------------------------------------
// Constants Defined by USB 1.1 Spec
//-----------------------------------------------------------------------------
#define VR_UPLOAD        0xC0 // command sent to host
#define VR_DOWNLOAD      0x40 // command sent to device
 
//-----------------------------------------------------------------------------
// Constants Defined by Anchor Chips that are internal to CPU or reserved
//-----------------------------------------------------------------------------
#define VR_ANCHOR_DLD     0xA0 // handled by core -- A0-AF reserved by Anchor
#define VR_EEPROM         0xA2 // loads (uploads) EEPROM
#define VR_RAM            0xA3 // loads (uploads) external ram
#define VR_SETI2CADDR     0xA4
#define VR_GETI2C_TYPE    0xA5 // 8 or 16 byte address
#define VR_GET_CHIP_REV   0xA6 // Rev A, B = 0, Rev    C = 2
#define VR_TEST_MEM       0xA7 // runs mem test and    returns    result
#define VR_RENUM          0xA8 // renum
#define VR_DB_FX          0xA9 // Force use of double byte address EEPROM (for FX)
#define VR_I2C_100        0xAA // put the i2c bus in 100Khz mode
#define VR_I2C_400        0xAB // put the i2c bus in 400Khz mode
#define VR_NOSDPAUTO      0xAC // test code. does uploads using SUDPTR with manual length override
 
#define GET_CHIP_REV()        ((CPUCS >> 4) & 0x00FF) // EzUSB Chip Rev Field
 
#define SERIAL_ADDR          0x50
#define EP0BUFF_SIZE      0x40
 
//-----------------------------------------------------------------------------
// Constants Defined by Quad 1 for implementing PMACUSB expansion card
//-----------------------------------------------------------------------------
#define VR_PMAC_SENDLINE     0xB0  // Device specific vendor commands
#define VR_PMAC_GETLINE      0xB1
#define VR_PMAC_FLUSH        0xB3
#define VR_PMAC_GETMEM       0xB4
#define VR_PMAC_SETMEM       0xB5
#define VR_PMAC_SENDCTRLCHAR 0xB6
 
#define VR_PMAC_ENARTDATAGAT 0xB7
#define VR_PMAC_INIT         0xB8
#define VR_EEPROM_VIDDID     0xB9
#define VR_PMAC_SETBIT       0xBA
#define VR_PMAC_SETBITS      0xBB
#define VR_PMAC_DATAPORT     0xBC
#define VR_PMAC_STATUSPORT   0xBD
#define VR_PMAC_PORT         0xBE
#define VR_PMAC_GETRESPONSE  0xBF
 
 
#define VR_PMAC_SETSERCHAR   0xC0
#define VR_PMAC_GETSERCHAR   0xC1
#define VR_PMAC_READREADY    0xC2
#define VR_PMAC_GETLINE_B    0xC3
#define VR_CTRL_RESPONSE     0xC4
#define VR_PMAC_GETBUFFER    0xC5
#define VR_PMAC_WRITEBUFFER  0xC6
#define VR_PMAC_WRITEERROR   0xC7
#define VR_PMAC_BINROTPUT    0xC8
#define VR_PMAC_BINROTERROR  0xC9
#define VR_PMAC_BINROTINIT   0xCA
#define VR_FWDOWNLOAD        0xCB
 
#define VR_PMAC_CLOSE        0xD0
 
// Added by LSJ for Multiple Host Communication with Ethernet
// And Interrupt Features
#define VR_PMAC_INTRSTRING        0xCC
#define VR_PMAC_KEEPALIVESTR    0xD6
#define VR_PMAC_SPINLOCK        0xD7
 
 
#define VR_IPADDRESS         0xE0
#define VR_MACADDRESS        0xE1
#define VR_DATE              0xE2
#define VR_TIME              0xE3
#define VR_VERSION           0xE4
 
 
#define EEPROMVER               8139
#define EEPROMTIME              8147
#define EEPROMDATE              8163
#define TCP_EEPROMADDR          8179
#define GATEWAYIP_EEPROMADDR    8180
#define GATEWAYMASK_EEPROMADDR  8184
#define IP_EEPROMADDR           8188
#define MAC_EEPROMADDR          8182
#define MAC_LEN                    6
#define IP_LEN                     4
#define TIME_LEN                  16
#define DATE_LEN                  16
#define VER_LEN                    8
 
 
 
 
 
 
 
//-----------------------------------------------------------------------------
// Prototypes
//-----------------------------------------------------------------------------
#ifndef _WINDOWS
void EEPROMWrite(WORD addr, BYTE length, BYTE xdata *buf); //TPM EEPROM Write
void EEPROMRead(WORD addr, BYTE length, BYTE xdata *buf);  //TPM EEPROM Read
void WaitForEndpoint0(bit IN);
#endif
 
#endif