/****************************************************************************
 ****************************************************************************
 ***
 ***   This header was automatically generated from a Linux kernel header
 ***   of the same name, to make information necessary for userspace to
 ***   call into the kernel available to libc.  It contains only constants,
 ***   structures, and macros generated from the original header, and thus,
 ***   contains no copyrightable information.
 ***
 ***   To edit the content of this header, modify the corresponding
 ***   source file (e.g. under external/kernel-headers/original/) then
 ***   run bionic/libc/kernel/tools/update_all.py
 ***
 ***   Any manual change here will be lost the next time this script will
 ***   be run. You've been warned!
 ***
 ****************************************************************************
 ****************************************************************************/
#ifndef _IOC3_H
#define _IOC3_H
#include <linux/types.h>
typedef volatile struct ioc3_uartregs {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 union {
 volatile u8 rbr;
 volatile u8 thr;
 volatile u8 dll;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 } u1;
 union {
 volatile u8 ier;
 volatile u8 dlm;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 } u2;
 union {
 volatile u8 iir;
 volatile u8 fcr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 } u3;
 volatile u8 iu_lcr;
 volatile u8 iu_mcr;
 volatile u8 iu_lsr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u8 iu_msr;
 volatile u8 iu_scr;
} ioc3_uregs_t;
#define iu_rbr u1.rbr
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define iu_thr u1.thr
#define iu_dll u1.dll
#define iu_ier u2.ier
#define iu_dlm u2.dlm
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define iu_iir u3.iir
#define iu_fcr u3.fcr
struct ioc3_sioregs {
 volatile u8 fill[0x141];
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u8 uartc;
 volatile u8 kbdcg;
 volatile u8 fill0[0x150 - 0x142 - 1];
 volatile u8 pp_data;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u8 pp_dsr;
 volatile u8 pp_dcr;
 volatile u8 fill1[0x158 - 0x152 - 1];
 volatile u8 pp_fifa;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u8 pp_cfgb;
 volatile u8 pp_ecr;
 volatile u8 fill2[0x168 - 0x15a - 1];
 volatile u8 rtcad;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u8 rtcdat;
 volatile u8 fill3[0x170 - 0x169 - 1];
 struct ioc3_uartregs uartb;
 struct ioc3_uartregs uarta;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
struct ioc3 {
 volatile u32 pad0[7];
 volatile u32 sio_ir;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 sio_ies;
 volatile u32 sio_iec;
 volatile u32 sio_cr;
 volatile u32 int_out;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 mcr;
 volatile u32 gpcr_s;
 volatile u32 gpcr_c;
 volatile u32 gpdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 gppr_0;
 volatile u32 gppr_1;
 volatile u32 gppr_2;
 volatile u32 gppr_3;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 gppr_4;
 volatile u32 gppr_5;
 volatile u32 gppr_6;
 volatile u32 gppr_7;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 gppr_8;
 volatile u32 gppr_9;
 volatile u32 gppr_10;
 volatile u32 gppr_11;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 gppr_12;
 volatile u32 gppr_13;
 volatile u32 gppr_14;
 volatile u32 gppr_15;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 ppbr_h_a;
 volatile u32 ppbr_l_a;
 volatile u32 ppcr_a;
 volatile u32 ppcr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 ppbr_h_b;
 volatile u32 ppbr_l_b;
 volatile u32 ppcr_b;
 volatile u32 km_csr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 k_rd;
 volatile u32 m_rd;
 volatile u32 k_wd;
 volatile u32 m_wd;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 sbbr_h;
 volatile u32 sbbr_l;
 volatile u32 sscr_a;
 volatile u32 stpir_a;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 stcir_a;
 volatile u32 srpir_a;
 volatile u32 srcir_a;
 volatile u32 srtr_a;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 shadow_a;
 volatile u32 sscr_b;
 volatile u32 stpir_b;
 volatile u32 stcir_b;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 srpir_b;
 volatile u32 srcir_b;
 volatile u32 srtr_b;
 volatile u32 shadow_b;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 emcr;
 volatile u32 eisr;
 volatile u32 eier;
 volatile u32 ercsr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 erbr_h;
 volatile u32 erbr_l;
 volatile u32 erbar;
 volatile u32 ercir;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 erpir;
 volatile u32 ertr;
 volatile u32 etcsr;
 volatile u32 ersr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 etcdc;
 volatile u32 ebir;
 volatile u32 etbr_h;
 volatile u32 etbr_l;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 etcir;
 volatile u32 etpir;
 volatile u32 emar_h;
 volatile u32 emar_l;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 ehar_h;
 volatile u32 ehar_l;
 volatile u32 micr;
 volatile u32 midr_r;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 midr_w;
 volatile u32 pad1[(0x20000 - 0x00154) / 4];
 struct ioc3_sioregs sregs;
 volatile u32 pad2[(0x40000 - 0x20180) / 4];
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 volatile u32 ssram[(0x80000 - 0x40000) / 4];
};
struct ioc3_erxbuf {
 u32 w0;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 u32 err;
};
#define ERXBUF_IPCKSUM_MASK 0x0000ffff
#define ERXBUF_BYTECNT_MASK 0x07ff0000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERXBUF_BYTECNT_SHIFT 16
#define ERXBUF_V 0x80000000
#define ERXBUF_CRCERR 0x00000001
#define ERXBUF_FRAMERR 0x00000002
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERXBUF_CODERR 0x00000004
#define ERXBUF_INVPREAMB 0x00000008
#define ERXBUF_LOLEN 0x00007000
#define ERXBUF_HILEN 0x03ff0000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERXBUF_MULTICAST 0x04000000
#define ERXBUF_BROADCAST 0x08000000
#define ERXBUF_LONGEVENT 0x10000000
#define ERXBUF_BADPKT 0x20000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERXBUF_GOODPKT 0x40000000
#define ERXBUF_CARRIER 0x80000000
#define ETXD_DATALEN 104
struct ioc3_etxd {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 u32 cmd;
 u32 bufcnt;
 u64 p1;
 u64 p2;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 u8 data[ETXD_DATALEN];
};
#define ETXD_BYTECNT_MASK 0x000007ff
#define ETXD_INTWHENDONE 0x00001000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETXD_D0V 0x00010000
#define ETXD_B1V 0x00020000
#define ETXD_B2V 0x00040000
#define ETXD_DOCHECKSUM 0x00080000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETXD_CHKOFF_MASK 0x07f00000
#define ETXD_CHKOFF_SHIFT 20
#define ETXD_D0CNT_MASK 0x0000007f
#define ETXD_B1CNT_MASK 0x0007ff00
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETXD_B1CNT_SHIFT 8
#define ETXD_B2CNT_MASK 0x7ff00000
#define ETXD_B2CNT_SHIFT 20
#define IOC3_BYTEBUS_DEV0 0x80000L
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define IOC3_BYTEBUS_DEV1 0xa0000L
#define IOC3_BYTEBUS_DEV2 0xc0000L
#define IOC3_BYTEBUS_DEV3 0xe0000L
#define IOC3_SIO_BASE 0x20000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define IOC3_SIO_UARTC (IOC3_SIO_BASE+0x141)
#define IOC3_SIO_KBDCG (IOC3_SIO_BASE+0x142)
#define IOC3_SIO_PP_BASE (IOC3_SIO_BASE+PP_BASE)
#define IOC3_SIO_RTC_BASE (IOC3_SIO_BASE+0x168)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define IOC3_SIO_UB_BASE (IOC3_SIO_BASE+UARTB_BASE)
#define IOC3_SIO_UA_BASE (IOC3_SIO_BASE+UARTA_BASE)
#define IOC3_SSRAM IOC3_RAM_OFF
#define IOC3_SSRAM_LEN 0x40000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define IOC3_SSRAM_DM 0x0000ffff
#define IOC3_SSRAM_PM 0x00010000
#define PCI_SCR_PAR_RESP_EN 0x00000040
#define PCI_SCR_SERR_EN 0x00000100
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define PCI_SCR_DROP_MODE_EN 0x00008000
#define PCI_SCR_RX_SERR (0x1 << 16)
#define PCI_SCR_DROP_MODE (0x1 << 17)
#define PCI_SCR_SIG_PAR_ERR (0x1 << 24)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define PCI_SCR_SIG_TAR_ABRT (0x1 << 27)
#define PCI_SCR_RX_TAR_ABRT (0x1 << 28)
#define PCI_SCR_SIG_MST_ABRT (0x1 << 29)
#define PCI_SCR_SIG_SERR (0x1 << 30)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define PCI_SCR_PAR_ERR (0x1 << 31)
#define KM_CSR_K_WRT_PEND 0x00000001
#define KM_CSR_M_WRT_PEND 0x00000002
#define KM_CSR_K_LCB 0x00000004
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KM_CSR_M_LCB 0x00000008
#define KM_CSR_K_DATA 0x00000010
#define KM_CSR_K_CLK 0x00000020
#define KM_CSR_K_PULL_DATA 0x00000040
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KM_CSR_K_PULL_CLK 0x00000080
#define KM_CSR_M_DATA 0x00000100
#define KM_CSR_M_CLK 0x00000200
#define KM_CSR_M_PULL_DATA 0x00000400
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KM_CSR_M_PULL_CLK 0x00000800
#define KM_CSR_EMM_MODE 0x00001000
#define KM_CSR_SIM_MODE 0x00002000
#define KM_CSR_K_SM_IDLE 0x00004000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KM_CSR_M_SM_IDLE 0x00008000
#define KM_CSR_K_TO 0x00010000
#define KM_CSR_M_TO 0x00020000
#define KM_CSR_K_TO_EN 0x00040000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KM_CSR_M_TO_EN 0x00080000
#define KM_CSR_K_CLAMP_ONE 0x00100000
#define KM_CSR_M_CLAMP_ONE 0x00200000
#define KM_CSR_K_CLAMP_THREE 0x00400000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KM_CSR_M_CLAMP_THREE 0x00800000
#define KM_RD_DATA_2 0x000000ff
#define KM_RD_DATA_2_SHIFT 0
#define KM_RD_DATA_1 0x0000ff00
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KM_RD_DATA_1_SHIFT 8
#define KM_RD_DATA_0 0x00ff0000
#define KM_RD_DATA_0_SHIFT 16
#define KM_RD_FRAME_ERR_2 0x01000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KM_RD_FRAME_ERR_1 0x02000000
#define KM_RD_FRAME_ERR_0 0x04000000
#define KM_RD_KBD_MSE 0x08000000
#define KM_RD_OFLO 0x10000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KM_RD_VALID_2 0x20000000
#define KM_RD_VALID_1 0x40000000
#define KM_RD_VALID_0 0x80000000
#define KM_RD_VALID_ALL (KM_RD_VALID_0|KM_RD_VALID_1|KM_RD_VALID_2)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KM_WD_WRT_DATA 0x000000ff
#define KM_WD_WRT_DATA_SHIFT 0
#define RXSB_OVERRUN 0x01
#define RXSB_PAR_ERR 0x02
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define RXSB_FRAME_ERR 0x04
#define RXSB_BREAK 0x08
#define RXSB_CTS 0x10
#define RXSB_DCD 0x20
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define RXSB_MODEM_VALID 0x40
#define RXSB_DATA_VALID 0x80
#define TXCB_INT_WHEN_DONE 0x20
#define TXCB_INVALID 0x00
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define TXCB_VALID 0x40
#define TXCB_MCR 0x80
#define TXCB_DELAY 0xc0
#define SBBR_L_SIZE 0x00000001
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SBBR_L_BASE 0xfffff000
#define SSCR_RX_THRESHOLD 0x000001ff
#define SSCR_TX_TIMER_BUSY 0x00010000
#define SSCR_HFC_EN 0x00020000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SSCR_RX_RING_DCD 0x00040000
#define SSCR_RX_RING_CTS 0x00080000
#define SSCR_HIGH_SPD 0x00100000
#define SSCR_DIAG 0x00200000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SSCR_RX_DRAIN 0x08000000
#define SSCR_DMA_EN 0x10000000
#define SSCR_DMA_PAUSE 0x20000000
#define SSCR_PAUSE_STATE 0x40000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SSCR_RESET 0x80000000
#define PROD_CONS_PTR_4K 0x00000ff8
#define PROD_CONS_PTR_1K 0x000003f8
#define PROD_CONS_PTR_OFF 3
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SRCIR_ARM 0x80000000
#define SRPIR_BYTE_CNT 0x07000000
#define SRPIR_BYTE_CNT_SHIFT 24
#define STCIR_BYTE_CNT 0x0f000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define STCIR_BYTE_CNT_SHIFT 24
#define SHADOW_DR 0x00000001
#define SHADOW_OE 0x00000002
#define SHADOW_PE 0x00000004
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SHADOW_FE 0x00000008
#define SHADOW_BI 0x00000010
#define SHADOW_THRE 0x00000020
#define SHADOW_TEMT 0x00000040
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SHADOW_RFCE 0x00000080
#define SHADOW_DCTS 0x00010000
#define SHADOW_DDCD 0x00080000
#define SHADOW_CTS 0x00100000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SHADOW_DCD 0x00800000
#define SHADOW_DTR 0x01000000
#define SHADOW_RTS 0x02000000
#define SHADOW_OUT1 0x04000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SHADOW_OUT2 0x08000000
#define SHADOW_LOOP 0x10000000
#define SRTR_CNT 0x00000fff
#define SRTR_CNT_VAL 0x0fff0000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SRTR_CNT_VAL_SHIFT 16
#define SRTR_HZ 16000
#define SIO_IR_SA_TX_MT 0x00000001
#define SIO_IR_SA_RX_FULL 0x00000002
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIO_IR_SA_RX_HIGH 0x00000004
#define SIO_IR_SA_RX_TIMER 0x00000008
#define SIO_IR_SA_DELTA_DCD 0x00000010
#define SIO_IR_SA_DELTA_CTS 0x00000020
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIO_IR_SA_INT 0x00000040
#define SIO_IR_SA_TX_EXPLICIT 0x00000080
#define SIO_IR_SA_MEMERR 0x00000100
#define SIO_IR_SB_TX_MT 0x00000200
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIO_IR_SB_RX_FULL 0x00000400
#define SIO_IR_SB_RX_HIGH 0x00000800
#define SIO_IR_SB_RX_TIMER 0x00001000
#define SIO_IR_SB_DELTA_DCD 0x00002000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIO_IR_SB_DELTA_CTS 0x00004000
#define SIO_IR_SB_INT 0x00008000
#define SIO_IR_SB_TX_EXPLICIT 0x00010000
#define SIO_IR_SB_MEMERR 0x00020000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIO_IR_PP_INT 0x00040000
#define SIO_IR_PP_INTA 0x00080000
#define SIO_IR_PP_INTB 0x00100000
#define SIO_IR_PP_MEMERR 0x00200000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIO_IR_KBD_INT 0x00400000
#define SIO_IR_RT_INT 0x08000000
#define SIO_IR_GEN_INT1 0x10000000
#define SIO_IR_GEN_INT_SHIFT 28
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIO_IR_SA (SIO_IR_SA_TX_MT | SIO_IR_SA_RX_FULL |   SIO_IR_SA_RX_HIGH | SIO_IR_SA_RX_TIMER |   SIO_IR_SA_DELTA_DCD | SIO_IR_SA_DELTA_CTS |   SIO_IR_SA_INT | SIO_IR_SA_TX_EXPLICIT |   SIO_IR_SA_MEMERR)
#define SIO_IR_SB (SIO_IR_SB_TX_MT | SIO_IR_SB_RX_FULL |   SIO_IR_SB_RX_HIGH | SIO_IR_SB_RX_TIMER |   SIO_IR_SB_DELTA_DCD | SIO_IR_SB_DELTA_CTS |   SIO_IR_SB_INT | SIO_IR_SB_TX_EXPLICIT |   SIO_IR_SB_MEMERR)
#define SIO_IR_PP (SIO_IR_PP_INT | SIO_IR_PP_INTA |   SIO_IR_PP_INTB | SIO_IR_PP_MEMERR)
#define SIO_IR_RT (SIO_IR_RT_INT | SIO_IR_GEN_INT1)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define IOC3_PENDING_INTRS(mem) (PCI_INW(&((mem)->sio_ir)) &   PCI_INW(&((mem)->sio_ies_ro)))
#define SIO_CR_SIO_RESET 0x00000001
#define SIO_CR_SER_A_BASE 0x000000fe
#define SIO_CR_SER_A_BASE_SHIFT 1
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIO_CR_SER_B_BASE 0x00007f00
#define SIO_CR_SER_B_BASE_SHIFT 8
#define SIO_SR_CMD_PULSE 0x00078000
#define SIO_CR_CMD_PULSE_SHIFT 15
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIO_CR_ARB_DIAG 0x00380000
#define SIO_CR_ARB_DIAG_TXA 0x00000000
#define SIO_CR_ARB_DIAG_RXA 0x00080000
#define SIO_CR_ARB_DIAG_TXB 0x00100000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIO_CR_ARB_DIAG_RXB 0x00180000
#define SIO_CR_ARB_DIAG_PP 0x00200000
#define SIO_CR_ARB_DIAG_IDLE 0x00400000
#define INT_OUT_COUNT 0x0000ffff
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define INT_OUT_MODE 0x00070000
#define INT_OUT_MODE_0 0x00000000
#define INT_OUT_MODE_1 0x00040000
#define INT_OUT_MODE_1PULSE 0x00050000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define INT_OUT_MODE_PULSES 0x00060000
#define INT_OUT_MODE_SQW 0x00070000
#define INT_OUT_DIAG 0x40000000
#define INT_OUT_INT_OUT 0x80000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define INT_OUT_NS_PER_TICK (30 * 260)
#define INT_OUT_TICKS_PER_PULSE 3
#define INT_OUT_US_TO_COUNT(x)     (((x) * 10 + INT_OUT_NS_PER_TICK / 200) *   100 / INT_OUT_NS_PER_TICK - 1)
#define INT_OUT_COUNT_TO_US(x)     (((x) + 1) * INT_OUT_NS_PER_TICK / 1000)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define INT_OUT_MIN_TICKS 3
#define INT_OUT_MAX_TICKS INT_OUT_COUNT
#define GPCR_DIR 0x000000ff
#define GPCR_DIR_PIN(x) (1<<(x))
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define GPCR_EDGE 0x000f0000
#define GPCR_EDGE_PIN(x) (1<<((x)+15))
#define GPCR_INT_OUT_EN 0x00100000
#define GPCR_MLAN_EN 0x00200000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define GPCR_DIR_SERA_XCVR 0x00000080
#define GPCR_DIR_SERB_XCVR 0x00000040
#define GPCR_DIR_PHY_RST 0x00000020
#define GPCR_PHY_RESET 0x20
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define GPCR_UARTB_MODESEL 0x40
#define GPCR_UARTA_MODESEL 0x80
#define GPPR_PHY_RESET_PIN 5
#define GPPR_UARTB_MODESEL_PIN 6
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define GPPR_UARTA_MODESEL_PIN 7
#define EMCR_DUPLEX 0x00000001
#define EMCR_PROMISC 0x00000002
#define EMCR_PADEN 0x00000004
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define EMCR_RXOFF_MASK 0x000001f8
#define EMCR_RXOFF_SHIFT 3
#define EMCR_RAMPAR 0x00000200
#define EMCR_BADPAR 0x00000800
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define EMCR_BUFSIZ 0x00001000
#define EMCR_TXDMAEN 0x00002000
#define EMCR_TXEN 0x00004000
#define EMCR_RXDMAEN 0x00008000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define EMCR_RXEN 0x00010000
#define EMCR_LOOPBACK 0x00020000
#define EMCR_ARB_DIAG 0x001c0000
#define EMCR_ARB_DIAG_IDLE 0x00200000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define EMCR_RST 0x80000000
#define EISR_RXTIMERINT 0x00000001
#define EISR_RXTHRESHINT 0x00000002
#define EISR_RXOFLO 0x00000004
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define EISR_RXBUFOFLO 0x00000008
#define EISR_RXMEMERR 0x00000010
#define EISR_RXPARERR 0x00000020
#define EISR_TXEMPTY 0x00010000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define EISR_TXRTRY 0x00020000
#define EISR_TXEXDEF 0x00040000
#define EISR_TXLCOL 0x00080000
#define EISR_TXGIANT 0x00100000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define EISR_TXBUFUFLO 0x00200000
#define EISR_TXEXPLICIT 0x00400000
#define EISR_TXCOLLWRAP 0x00800000
#define EISR_TXDEFERWRAP 0x01000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define EISR_TXMEMERR 0x02000000
#define EISR_TXPARERR 0x04000000
#define ERCSR_THRESH_MASK 0x000001ff
#define ERCSR_RX_TMR 0x40000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERCSR_DIAG_OFLO 0x80000000
#define ERBR_ALIGNMENT 4096
#define ERBR_L_RXRINGBASE_MASK 0xfffff000
#define ERBAR_BARRIER_BIT 0x0100
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERBAR_RXBARR_MASK 0xffff0000
#define ERBAR_RXBARR_SHIFT 16
#define ERCIR_RXCONSUME_MASK 0x00000fff
#define ERPIR_RXPRODUCE_MASK 0x00000fff
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERPIR_ARM 0x80000000
#define ERTR_CNT_MASK 0x000007ff
#define ETCSR_IPGT_MASK 0x0000007f
#define ETCSR_IPGR1_MASK 0x00007f00
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETCSR_IPGR1_SHIFT 8
#define ETCSR_IPGR2_MASK 0x007f0000
#define ETCSR_IPGR2_SHIFT 16
#define ETCSR_NOTXCLK 0x80000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETCDC_COLLCNT_MASK 0x0000ffff
#define ETCDC_DEFERCNT_MASK 0xffff0000
#define ETCDC_DEFERCNT_SHIFT 16
#define ETBR_ALIGNMENT (64*1024)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETBR_L_RINGSZ_MASK 0x00000001
#define ETBR_L_RINGSZ128 0
#define ETBR_L_RINGSZ512 1
#define ETBR_L_TXRINGBASE_MASK 0xffffc000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETCIR_TXCONSUME_MASK 0x0000ffff
#define ETCIR_IDLE 0x80000000
#define ETPIR_TXPRODUCE_MASK 0x0000ffff
#define EBIR_TXBUFPROD_MASK 0x0000001f
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define EBIR_TXBUFCONS_MASK 0x00001f00
#define EBIR_TXBUFCONS_SHIFT 8
#define EBIR_RXBUFPROD_MASK 0x007fc000
#define EBIR_RXBUFPROD_SHIFT 14
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define EBIR_RXBUFCONS_MASK 0xff800000
#define EBIR_RXBUFCONS_SHIFT 23
#define MICR_REGADDR_MASK 0x0000001f
#define MICR_PHYADDR_MASK 0x000003e0
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define MICR_PHYADDR_SHIFT 5
#define MICR_READTRIG 0x00000400
#define MICR_BUSY 0x00000800
#define MIDR_DATA_MASK 0x0000ffff
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERXBUF_IPCKSUM_MASK 0x0000ffff
#define ERXBUF_BYTECNT_MASK 0x07ff0000
#define ERXBUF_BYTECNT_SHIFT 16
#define ERXBUF_V 0x80000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERXBUF_CRCERR 0x00000001
#define ERXBUF_FRAMERR 0x00000002
#define ERXBUF_CODERR 0x00000004
#define ERXBUF_INVPREAMB 0x00000008
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERXBUF_LOLEN 0x00007000
#define ERXBUF_HILEN 0x03ff0000
#define ERXBUF_MULTICAST 0x04000000
#define ERXBUF_BROADCAST 0x08000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ERXBUF_LONGEVENT 0x10000000
#define ERXBUF_BADPKT 0x20000000
#define ERXBUF_GOODPKT 0x40000000
#define ERXBUF_CARRIER 0x80000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETXD_BYTECNT_MASK 0x000007ff
#define ETXD_INTWHENDONE 0x00001000
#define ETXD_D0V 0x00010000
#define ETXD_B1V 0x00020000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETXD_B2V 0x00040000
#define ETXD_DOCHECKSUM 0x00080000
#define ETXD_CHKOFF_MASK 0x07f00000
#define ETXD_CHKOFF_SHIFT 20
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETXD_D0CNT_MASK 0x0000007f
#define ETXD_B1CNT_MASK 0x0007ff00
#define ETXD_B1CNT_SHIFT 8
#define ETXD_B2CNT_MASK 0x7ff00000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define ETXD_B2CNT_SHIFT 20
typedef enum ioc3_subdevs_e {
 ioc3_subdev_ether,
 ioc3_subdev_generic,
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 ioc3_subdev_nic,
 ioc3_subdev_kbms,
 ioc3_subdev_ttya,
 ioc3_subdev_ttyb,
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 ioc3_subdev_ecpp,
 ioc3_subdev_rt,
 ioc3_nsubdevs
} ioc3_subdev_t;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define IOC3_SDB_ETHER (1<<ioc3_subdev_ether)
#define IOC3_SDB_GENERIC (1<<ioc3_subdev_generic)
#define IOC3_SDB_NIC (1<<ioc3_subdev_nic)
#define IOC3_SDB_KBMS (1<<ioc3_subdev_kbms)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define IOC3_SDB_TTYA (1<<ioc3_subdev_ttya)
#define IOC3_SDB_TTYB (1<<ioc3_subdev_ttyb)
#define IOC3_SDB_ECPP (1<<ioc3_subdev_ecpp)
#define IOC3_SDB_RT (1<<ioc3_subdev_rt)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define IOC3_ALL_SUBDEVS ((1<<ioc3_nsubdevs)-1)
#define IOC3_SDB_SERIAL (IOC3_SDB_TTYA|IOC3_SDB_TTYB)
#define IOC3_STD_SUBDEVS IOC3_ALL_SUBDEVS
#define IOC3_INTA_SUBDEVS IOC3_SDB_ETHER
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define IOC3_INTB_SUBDEVS (IOC3_SDB_GENERIC|IOC3_SDB_KBMS|IOC3_SDB_SERIAL|IOC3_SDB_ECPP|IOC3_SDB_RT)
#endif
