ETHERNET SMART BRIDGE
Alberto Carboni, Alessio CiarciĆ , Jacopo Grecuccio, Lorenzo Zaia
eth_smb.h
Go to the documentation of this file.
1 
7 #ifndef ETH_SMB_H
8 #define ETH_SMB_H
9 
10 
11 #include "Fpgaipm.h"
12 
13 
14 #define ETH_SMB_CORE_ID (1)
15 
19 #define OPC_CSR_READ ((uint8_t)(0x01))
21 #define OPC_CSR_WRITE ((uint8_t)(0x02))
22 #define OPC_TX_LAN ((uint8_t)(0x09))
23 #define OPC_START_TIMER ((uint8_t)(0x03))
24 #define OPC_RESET_TIMER ((uint8_t)(0x06))
25 #define OPC_STOP_TIMER ((uint8_t)(0x05))
26 #define OPC_CHANGE_TIMER_PERIOD ((uint8_t)(0x04))
27 
34 #define ETH_SMB_ADDREG (1)
36 #define ETH_SMB_LOCKREG (63)
37 
38 #define ETH_SMB_DATAH (2)
39 #define ETH_SMB_DATAL (3)
40 
41 #define ETH_SMB_TX_FRAME_LENGTH_REG (1)
42 
43 #define CPU_UNLOCK_WORD (0xFFFF)
44 #define CPU_LOCK_WORD (0x0000)
45 
53 void ETH_SMB_PIORead(uint16_t lan9211_reg, uint32_t *data);
60 void ETH_SMB_PIOWrite(uint16_t lan9211_reg, uint32_t data);
61 
62 #endif // ETH_SMB_H
ETH_SMB_PIOWrite
void ETH_SMB_PIOWrite(uint16_t lan9211_reg, uint32_t data)
This Function is used to write 32 bits from a LAN9211 register.
Definition: eth_smb.c:84
Fpgaipm.h
Low-level APIs for CPU-FPGA communication in an IP-Manager-based environment.
ETH_SMB_PIORead
void ETH_SMB_PIORead(uint16_t lan9211_reg, uint32_t *data)
This Function is used to read 32 bits from a LAN9211 register.
Definition: eth_smb.c:58