#ifndef _DEV_IC_HD64570REG_H_
#define _DEV_IC_HD64570REG_H_
#define CISCO_MULTICAST 0x8f
#define CISCO_UNICAST 0x0f
#define CISCO_KEEPALIVE 0x8035
#define CISCO_ADDR_REQ 0
#define CISCO_ADDR_REPLY 1
#define CISCO_KEEPALIVE_REQ 2
struct cisco_pkt {
u_int32_t type;
u_int32_t par1;
u_int32_t par2;
u_int16_t rel;
u_int16_t time0;
u_int16_t time1;
};
#define CISCO_PKT_LEN 18
#define HDLC_PROTOCOL_IP 0x0800
#define HDLC_PROTOCOL_IPV6 0x86dd
#define HDLC_PROTOCOL_ISO 0xfefe
struct hdlc_header {
u_int8_t h_addr;
u_int8_t h_resv;
u_int16_t h_proto;
};
#define HDLC_HDRLEN 4
struct hdlc_llc_header {
u_int8_t hl_addr;
u_int8_t hl_resv;
u_int8_t hl_dsap;
u_int8_t hl_ssap;
u_int8_t hl_ffb;
};
#define SCA_PABR0 2
#define SCA_PABR1 3
#define SCA_WCRL 4
#define SCA_WCRM 5
#define SCA_WCRH 6
#define SCA_PCR 8
#define SCA_ISR0 0x10
#define SCA_ISR1 0x11
#define SCA_ISR2 0x12
#define SCA_IER0 0x14
#define SCA_IER1 0x15
#define SCA_IER2 0x16
#define SCA_ITCR 0x18
#define SCA_IVR 0x1a
#define SCA_IMVR 0x1c
#define SCA_TRBL0 0x20
#define SCA_TRBH0 0x21
#define SCA_ST00 0x22
#define SCA_ST10 0x23
#define SCA_ST20 0x24
#define SCA_ST30 0x25
#define SCA_FST0 0x26
#define SCA_IE00 0x28
#define SCA_IE10 0x29
#define SCA_IE20 0x2a
#define SCA_FIE0 0x2b
#define SCA_CMD0 0x2c
#define SCA_MD00 0x2e
#define SCA_MD10 0x2f
#define SCA_MD20 0x30
#define SCA_CTL0 0x31
#define SCA_SA00 0x32
#define SCA_SA10 0x33
#define SCA_IDL0 0x34
#define SCA_TMC0 0x35
#define SCA_RXS0 0x36
#define SCA_TXS0 0x37
#define SCA_TRC00 0x38
#define SCA_TRC10 0x39
#define SCA_RRC0 0x3A
#define SCA_TRBL1 0x40
#define SCA_TRBH1 0x41
#define SCA_ST01 0x42
#define SCA_ST11 0x43
#define SCA_ST21 0x44
#define SCA_ST31 0x45
#define SCA_FST1 0x46
#define SCA_IE01 0x48
#define SCA_IE11 0x49
#define SCA_IE21 0x4a
#define SCA_FIE1 0x4b
#define SCA_CMD1 0x4c
#define SCA_MD01 0x4e
#define SCA_MD11 0x4f
#define SCA_MD21 0x50
#define SCA_CTL1 0x51
#define SCA_SA01 0x52
#define SCA_SA11 0x53
#define SCA_IDL1 0x54
#define SCA_TMC1 0x55
#define SCA_RXS1 0x56
#define SCA_TXS1 0x57
#define SCA_TRC01 0x58
#define SCA_TRC11 0x59
#define SCA_RRC1 0x5A
#define SCA_DMER 0x9
#define SCA_BARL0 0x80
#define SCA_BARH0 0x81
#define SCA_BARB0 0x82
#define SCA_DARL0 0x80
#define SCA_DARH0 0x81
#define SCA_DARB0 0x82
#define SCA_CPB0 0x86
#define SCA_CDAL0 0x88
#define SCA_CDAH0 0x89
#define SCA_EDAL0 0x8A
#define SCA_EDAH0 0x8B
#define SCA_BFLL0 0x8C
#define SCA_BFLH0 0x8D
#define SCA_BCRL0 0x8E
#define SCA_BCRH0 0x8F
#define SCA_DSR0 0x90
#define SCA_DMR0 0x91
#define SCA_FCT0 0x93
#define SCA_DIR0 0x94
#define SCA_DCR0 0x95
#define SCA_BARL1 0xA0
#define SCA_BARH1 0xA1
#define SCA_BARB1 0xA2
#define SCA_SARL1 0xA4
#define SCA_SARH1 0xA5
#define SCA_SARB1 0xA6
#define SCA_CPB1 0xA6
#define SCA_CDAL1 0xA8
#define SCA_CDAH1 0xA9
#define SCA_EDAL1 0xAA
#define SCA_EDAH1 0xAB
#define SCA_BCRL1 0xAE
#define SCA_BCRH1 0xAF
#define SCA_DSR1 0xB0
#define SCA_DMR1 0xB1
#define SCA_FCT1 0xB3
#define SCA_DIR1 0xB4
#define SCA_DCR1 0xB5
#define SCA_BARL2 0xC0
#define SCA_BARH2 0xC1
#define SCA_BARB2 0xC2
#define SCA_CDAL2 0xC8
#define SCA_DSR2 0xD0
#define SCA_BARL3 0xE0
#define SCA_BARH3 0xE1
#define SCA_BARB3 0xE2
#define SCA_CDAL3 0xE8
#define SCA_DSR3 0xF0
#define SCA_TCNTL0 0x60
#define SCA_TCNTH0 0x61
#define SCA_TCNTL1 0x68
#define SCA_TCNTH1 0x69
#define SCA_TCNTL2 0x70
#define SCA_TCNTH2 0x71
#define SCA_TCNTL3 0x78
#define SCA_TCNTH3 0x79
#define SCA_TCONRL0 0x62
#define SCA_TCONRH0 0x63
#define SCA_TCONRL1 0x6a
#define SCA_TCONRH1 0x6b
#define SCA_TCONRL2 0x72
#define SCA_TCONRH2 0x73
#define SCA_TCONRL3 0x7a
#define SCA_TCONRH3 0x7b
#define SCA_TCSR0 0x64
#define SCA_TCSR1 0x6c
#define SCA_TCSR2 0x74
#define SCA_TCSR3 0x7c
#define SCA_TEPR0 0x65
#define SCA_TEPR1 0x6d
#define SCA_TEPR2 0x75
#define SCA_TEPR3 0x7d
#define ST3_CTS 8
#define ST3_DCD 4
#define SCA_CMD_TXRESET 0x01
#define SCA_CMD_TXENABLE 0x02
#define SCA_CMD_TXDISABLE 0x03
#define SCA_CMD_TXCRCINIT 0x04
#define SCA_CMD_TXCRCEXCL 0x05
#define SCA_CMS_TXEOM 0x06
#define SCA_CMD_TXABORT 0x07
#define SCA_CMD_MPON 0x08
#define SCA_CMD_TXBCLEAR 0x09
#define SCA_CMD_RXRESET 0x11
#define SCA_CMD_RXENABLE 0x12
#define SCA_CMD_RXDISABLE 0x13
#define SCA_CMD_RXCRCINIT 0x14
#define SCA_CMD_RXMSGREJ 0x15
#define SCA_CMD_MPSEARCH 0x16
#define SCA_CMD_RXCRCEXCL 0x17
#define SCA_CMD_RXCRCCALC 0x18
#define SCA_CMD_NOP 0x00
#define SCA_CMD_RESET 0x21
#define SCA_CMD_SEARCH 0x31
#define SCA_MD0_CRC_1 0x01
#define SCA_MD0_CRC_CCITT 0x02
#define SCA_MD0_CRC_ENABLE 0x04
#define SCA_MD0_AUTO_ENABLE 0x10
#define SCA_MD0_MODE_ASYNC 0x00
#define SCA_MD0_MODE_BYTESYNC1 0x20
#define SCA_MD0_MODE_BISYNC 0x40
#define SCA_MD0_MODE_BYTESYNC2 0x60
#define SCA_MD0_MODE_HDLC 0x80
#define SCA_MD1_NOADDRCHK 0x00
#define SCA_MD1_SNGLADDR1 0x40
#define SCA_MD1_SNGLADDR2 0x80
#define SCA_MD1_DUALADDR 0xC0
#define SCA_MD2_DUPLEX 0x00
#define SCA_MD2_ECHO 0x01
#define SCA_MD2_LOOPBACK 0x03
#define SCA_MD2_ADPLLx8 0x00
#define SCA_MD2_ADPLLx16 0x08
#define SCA_MD2_ADPLLx32 0x10
#define SCA_MD2_NRZ 0x00
#define SCA_MD2_NRZI 0x20
#define SCA_MD2_MANCHESTER 0x80
#define SCA_MD2_FM0 0xC0
#define SCA_MD2_FM1 0xA0
#define SCA_CTL_RTS_MASK 0x01
#define SCA_CTL_RTS_HIGH 0x00
#define SCA_CTL_RTS_LOW 0x01
#define SCA_CTL_IDLC_MASK 0x10
#define SCA_CTL_IDLC_MARK 0x00
#define SCA_CTL_IDLC_PATTERN 0x10
#define SCA_CTL_UDRNC_MASK 0x20
#define SCA_CTL_UDRNC_AFTER_ABORT 0x00
#define SCA_CTL_UDRNC_AFTER_FCS 0x20
#define SCA_RXS_DIV_MASK 0x0F
#define SCA_RXS_DIV_1 0x00
#define SCA_RXS_DIV_2 0x01
#define SCA_RXS_DIV_4 0x02
#define SCA_RXS_DIV_8 0x03
#define SCA_RXS_DIV_16 0x04
#define SCA_RXS_DIV_32 0x05
#define SCA_RXS_DIV_64 0x06
#define SCA_RXS_DIV_128 0x07
#define SCA_RXS_DIV_256 0x08
#define SCA_RXS_DIV_512 0x09
#define SCA_RXS_CLK_MASK 0x70
#define SCA_RXS_CLK_LINE 0x00
#define SCA_RXS_CLK_LINE_SN 0x20
#define SCA_RXS_CLK_INTERNAL 0x40
#define SCA_RXS_CLK_ADPLL_OUT 0x60
#define SCA_RXS_CLK_ADPLL_IN 0x70
#define SCA_TXS_DIV_MASK 0x0F
#define SCA_TXS_DIV_1 0x00
#define SCA_TXS_DIV_2 0x01
#define SCA_TXS_DIV_4 0x02
#define SCA_TXS_DIV_8 0x03
#define SCA_TXS_DIV_16 0x04
#define SCA_TXS_DIV_32 0x05
#define SCA_TXS_DIV_64 0x06
#define SCA_TXS_DIV_128 0x07
#define SCA_TXS_DIV_256 0x08
#define SCA_TXS_DIV_512 0x09
#define SCA_TXS_CLK_MASK 0x70
#define SCA_TXS_CLK_LINE 0x00
#define SCA_TXS_CLK_INTERNAL 0x40
#define SCA_TXS_CLK_RXCLK 0x60
#define SCA_ST0_RXRDY 0x01
#define SCA_ST0_TXRDY 0x02
#define SCA_ST0_RXINT 0x40
#define SCA_ST0_TXINT 0x80
#define SCA_ST1_IDLST 0x01
#define SCA_ST1_ABTST 0x02
#define SCA_ST1_DCDCHG 0x04
#define SCA_ST1_CTSCHG 0x08
#define SCA_ST1_FLAG 0x10
#define SCA_ST1_TXIDL 0x40
#define SCA_ST1_UDRN 0x80
#define SCA_FST_CRCERR 0x04
#define SCA_FST_OVRN 0x08
#define SCA_FST_RESFRM 0x10
#define SCA_FST_ABRT 0x20
#define SCA_FST_SHRT 0x40
#define SCA_FST_EOM 0x80
#define SCA_ST3_RXENA 0x01
#define SCA_ST3_TXENA 0x02
#define SCA_ST3_DCD 0x04
#define SCA_ST3_CTS 0x08
#define SCA_ST3_ADPLLSRCH 0x10
#define SCA_ST3_TXDATA 0x20
#define SCA_FIE_EOMFE 0x80
#define SCA_IE0_RXRDY 0x01
#define SCA_IE0_TXRDY 0x02
#define SCA_IE0_RXINT 0x40
#define SCA_IE0_TXINT 0x80
#define SCA_IE1_IDLDE 0x01
#define SCA_IE1_ABTDE 0x02
#define SCA_IE1_DCD 0x04
#define SCA_IE1_CTS 0x08
#define SCA_IE1_FLAG 0x10
#define SCA_IE1_IDL 0x40
#define SCA_IE1_UDRN 0x80
#define SCA_IE2_CRCERR 0x04
#define SCA_IE2_OVRN 0x08
#define SCA_IE2_RESFRM 0x10
#define SCA_IE2_ABRT 0x20
#define SCA_IE2_SHRT 0x40
#define SCA_IE2_EOM 0x80
#define SCA_ISR0_MSCI_RXRDY0 0x01
#define SCA_ISR0_MSCI_TXRDY0 0x02
#define SCA_ISR0_MSCI_RXINT0 0x04
#define SCA_ISR0_MSCI_TXINT0 0x08
#define SCA_ISR0_MSCI_RXRDY1 0x10
#define SCA_ISR0_MSCI_TXRDY1 0x20
#define SCA_ISR0_MSCI_RXINT1 0x40
#define SCA_ISR0_MSCI_TXINT1 0x80
#define SCA_ISR1_DMAC_RX0A 0x01
#define SCA_ISR1_DMAC_RX0B 0x02
#define SCA_ISR1_DMAC_TX0A 0x04
#define SCA_ISR1_DMAC_TX0B 0x08
#define SCA_ISR1_DMAC_RX1A 0x10
#define SCA_ISR1_DMAC_RX1B 0x20
#define SCA_ISR1_DMAC_TX1A 0x40
#define SCA_ISR1_DMAC_TX1B 0x80
#define SCA_ISR2_TIMER_IRQ0 0x10
#define SCA_ISR2_TIMER_IRQ1 0x20
#define SCA_ISR2_TIMER_IRQ2 0x40
#define SCA_ISR2_TIMER_IRQ3 0x80
#define SCA_ITCR_INTR_PRI_MASK 0x80
#define SCA_ITCR_INTR_PRI_MSCI 0x00
#define SCA_ITCR_INTR_PRI_DMAC 0x80
#define SCA_ITCR_ACK_MASK 0x60
#define SCA_ITCR_ACK_NONE 0x00
#define SCA_ITCR_ACK_SINGLE 0x20
#define SCA_ITCR_ACK_DOUBLE 0x40
#define SCA_ITCR_ACK_RESV 0x60
#define SCA_ITCR_VOUT_MASK 0x10
#define SCA_ITCR_VOUT_IVR 0x00
#define SCA_ITCR_VOUT_IMVR 0x10
#define SCA_IER0_MSCI_RXRDY0 0x01
#define SCA_IER0_MSCI_TXRDY0 0x02
#define SCA_IER0_MSCI_RXINT0 0x04
#define SCA_IER0_MSCI_TXINT0 0x08
#define SCA_IER0_MSCI_RXRDY1 0x10
#define SCA_IER0_MSCI_TXRDY1 0x20
#define SCA_IER0_MSCI_RXINT1 0x40
#define SCA_IER0_MSCI_TXINT1 0x80
#define SCA_IER1_DMAC_RX0A 0x01
#define SCA_IER1_DMAC_RX0B 0x02
#define SCA_IER1_DMAC_TX0A 0x04
#define SCA_IER1_DMAC_TX0B 0x08
#define SCA_IER1_DMAC_RX1A 0x10
#define SCA_IER1_DMAC_RX1B 0x20
#define SCA_IER1_DMAC_TX1A 0x40
#define SCA_IER1_DMAC_TX1B 0x80
#define SCA_IER2_TIMER_IRQ0 0x10
#define SCA_IER2_TIMER_IRQ1 0x20
#define SCA_IER2_TIMER_IRQ2 0x40
#define SCA_IER2_TIMER_IRQ3 0x80
#define SCA_RCR_MASK 0x1F
#define SCA_IE1_
#define SCA_IV_CHAN0 0x00
#define SCA_IV_CHAN1 0x20
#define SCA_IV_RXRDY 0x04
#define SCA_IV_TXRDY 0x06
#define SCA_IV_RXINT 0x08
#define SCA_IV_TXINT 0x0A
#define SCA_IV_DMACH0 0x00
#define SCA_IV_DMACH1 0x08
#define SCA_IV_DMACH2 0x20
#define SCA_IV_DMACH3 0x28
#define SCA_IV_DMIA 0x14
#define SCA_IV_DMIB 0x16
#define SCA_IV_TIMER0 0x1C
#define SCA_IV_TIMER1 0x1E
#define SCA_IV_TIMER2 0x3C
#define SCA_IV_TIMER3 0x3E
#define SCA_DSR_EOT 0x80
#define SCA_DSR_EOM 0x40
#define SCA_DSR_BOF 0x20
#define SCA_DSR_COF 0x10
#define SCA_DSR_DE 0x02
#define SCA_DSR_DEWD 0x01
#define SCA_DMR_TMOD 0x10
#define SCA_DMR_NF 0x04
#define SCA_DMR_CNTE 0x02
#define SCA_DMER_EN 0x80
#define SCA_DCR_ABRT 0x01
#define SCA_DCR_FCCLR 0x02
#define SCA_DIR_EOT 0x80
#define SCA_DIR_EOM 0x40
#define SCA_DIR_BOF 0x20
#define SCA_DIR_COF 0x10
#define SCA_PCR_BRC 0x10
#define SCA_PCR_CCC 0x08
#define SCA_PCR_PR2 0x04
#define SCA_PCR_PR1 0x02
#define SCA_PCR_PR0 0x01
#define ST_EOM 0x80
#define ST_SHRT 0x40
#define ST_ABT 0x20
#define ST_RBIT 0x10
#define ST_OVRN 0x8
#define ST_CRCE 0x4
#define ST_OVFL 0x1
#define ST_EOT 1
#define DSR_EOT 0x80
#define DSR_EOM 0x40
#define DSR_BOF 0x20
#define DSR_COF 0x10
#define DSR_DWE 1
#define RXRDY_BIT 1
#define TXRDY_BIT 2
#define ST3_CTS 8
#define ST3_DCD 4
#define SCA_TCSR_TME 0x10
#define SCA_TCSR_ECMI 0x40
#define SCA_TCSR_CMF 0x80
#define SCA_TEPR_DIV_1 0x00
#define SCA_TEPR_DIV_2 0x01
#define SCA_TEPR_DIV_4 0x02
#define SCA_TEPR_DIV_8 0x03
#define SCA_TEPR_DIV_16 0x04
#define SCA_TEPR_DIV_32 0x05
#define SCA_TEPR_DIV_64 0x06
#define SCA_TEPR_DIV_128 0x06
#define CLK_LINE 0x00
#define CLK_BRG 0x40
#define CLK_RXC 0x60
#define CLK_INT 0
#define CLK_EXT 1
#define CLK_RXCI 2
#define CLK_EETC 3
#define SCA_DMAC_OFF_0 0x00
#define SCA_DMAC_OFF_1 0x40
#define SCA_MSCI_OFF_0 0x00
#define SCA_MSCI_OFF_1 0x20
#define SCA_DMA_ALIGNMENT (64 * 1024)
#define SCA_DMA_BOUNDARY (16 * 1024 * 1024)
#endif