#ifndef _SYS_SBBCREG_H
#define _SYS_SBBCREG_H
#pragma ident "%Z%%M% %I% %E% SMI"
#ifdef __cplusplus
extern "C" {
#endif
#define SBBC_SC_MODE 0x00000020
typedef struct pad12 {
uint32_t pad[3];
}pad12_t;
struct sbbc_regs_map {
uint32_t devid;
pad12_t pada;
uint32_t devtemp;
pad12_t padb;
uint32_t incon_scratch;
pad12_t padc;
uint32_t incon_tstl1;
pad12_t padd;
uint32_t incon_tsterr;
pad12_t pade;
uint32_t device_conf;
pad12_t padf;
uint32_t device_rstcntl;
pad12_t padg;
uint32_t device_rststat;
pad12_t padh;
uint32_t device_errstat;
pad12_t padi;
uint32_t device_errcntl;
pad12_t padj;
uint32_t jtag_cntl;
pad12_t padk;
uint32_t jtag_cmd;
pad12_t padl;
uint32_t i2c_addrcmd;
pad12_t padm;
uint32_t i2c_data;
pad12_t padn;
uint32_t pci_errstat;
pad12_t pad2[45];
uint32_t consbus_conf;
pad12_t pado;
uint32_t consbus_erraddr;
pad12_t padp;
uint32_t consbus_errack;
pad12_t pad4[18];
uint32_t pad5;
uint32_t consbus_port0_err;
pad12_t pad6[19];
uint32_t pad7[2];
uint32_t consbus_part_dom_err;
pad12_t pad8[235];
uint32_t pad8a[2];
uint32_t sbbc_synch;
pad12_t padq[20];
uint32_t padqa[3];
uint32_t dev_access_tim0;
pad12_t padr;
uint32_t dev_access_tim1;
pad12_t pads;
uint32_t dev_access_tim2;
pad12_t padt;
uint32_t dev_access_tim3;
pad12_t padu;
uint32_t dev_access_tim4;
pad12_t padv;
uint32_t dev_access_tim5;
pad12_t pad9[14];
uint32_t pad9a[1];
uint32_t spare_in_out;
pad12_t pad10[127];
uint32_t pad10a[2];
uint32_t monitor_cntl;
pad12_t pad11[170];
uint32_t pad11a[1];
uint32_t port_intr_gen0;
pad12_t padw;
uint32_t port_intr_gen1;
pad12_t padx;
uint32_t syscntlr_intr_gen;
pad12_t pad12[61];
uint32_t sys_intr_status;
pad12_t pady;
uint32_t sys_intr_enable;
pad12_t padz;
uint32_t pci_intr_status;
pad12_t padaa;
uint32_t pci_intr_enable;
pad12_t pad13[614];
uint32_t pad13a[1];
uint32_t pci_to_consbus_map;
pad12_t padab;
uint32_t consbus_to_pci_map;
uint32_t pad14[2247];
};
struct ssc_devpresence_regs_map {
uint8_t devpres_reg0;
uint8_t devpres_reg1;
uint8_t devpres_reg2;
uint8_t devpres_reg3;
uint8_t devpres_reg4;
uint8_t devpres_reg5;
uint8_t devpres_reg6;
uint8_t devpres_reg7;
uint8_t devpres_reg8;
uint8_t devpres_reg9;
uint8_t devpres_rega;
uint8_t devpres_regb;
};
struct ssc_echip_regs {
uint8_t offset[0x20000];
};
struct ssc_devpresence_regs {
uint8_t offset[0x20000];
};
struct ssc_i2cmux_regs {
uint8_t offset[0x20000];
};
struct ssc_errintr_statcntl_regs {
uint8_t offset[0x20000];
};
struct ssc_console_bus {
uint8_t offset[0x4000000];
};
struct ssc_eild_reg_map {
uint8_t darb_intr;
uint8_t darb_intr_mask;
uint8_t sbbc_cons_err;
uint8_t sbbc_cons_err_mask;
uint8_t pwr_supply;
};
struct pci_sbbc {
uint8_t fprom[0x800000];
struct sbbc_regs_map sbbc_internal_regs;
uint8_t dontcare[0x79CD0];
struct ssc_echip_regs echip_regs;
struct ssc_devpresence_regs devpres_regs;
struct ssc_i2cmux_regs i2cmux_regs;
struct ssc_errintr_statcntl_regs errintr_scntl_regs;
uint8_t sram[0x100000];
uint8_t reserved[0x3600000];
struct ssc_console_bus consbus;
};
struct sbbc_common_devregs {
uint32_t devid;
uint32_t devtemp;
uint32_t incon_scratch;
uint32_t incon_tstl1;
uint32_t incon_tsterr;
uint32_t device_conf;
uint32_t device_rstcntl;
uint32_t device_rststat;
uint32_t device_errstat;
uint32_t device_errcntl;
uint32_t jtag_cntl;
uint32_t jtag_cmd;
uint32_t i2c_addrcmd;
uint32_t i2c_data;
uint32_t pci_errstat;
uint32_t domain_conf;
uint32_t safari_port0_conf;
uint32_t safari_port1_conf;
uint32_t safari_port2_conf;
uint32_t safari_port3_conf;
uint32_t safari_port4_conf;
uint32_t safari_port5_conf;
uint32_t safari_port6_conf;
uint32_t safari_port7_conf;
uint32_t safari_port8_conf;
uint32_t safari_port9_conf;
uint32_t safari_port0_err;
uint32_t safari_port1_err;
uint32_t safari_port2_err;
uint32_t safari_port3_err;
uint32_t safari_port4_err;
uint32_t safari_port5_err;
uint32_t safari_port6_err;
uint32_t safari_port7_err;
uint32_t safari_port8_err;
uint32_t safari_port9_err;
uint32_t consbus_conf;
uint32_t consbus_erraddr;
uint32_t consbus_errack;
uint32_t consbus_errinj0;
uint32_t consbus_errinj1;
uint32_t consbus_port0_err;
uint32_t consbus_port1_err;
uint32_t consbus_port2_err;
uint32_t consbus_port3_err;
uint32_t consbus_port4_err;
uint32_t consbus_port5_err;
uint32_t consbus_port6_err;
uint32_t consbus_port7_err;
uint32_t consbus_port8_err;
uint32_t consbus_port9_err;
uint32_t consbus_porta_err;
uint32_t consbus_portb_err;
uint32_t consbus_portc_err;
uint32_t consbus_portd_err;
uint32_t consbus_porte_err;
uint32_t consbus_part_dom_err;
uint32_t sbbc_synch;
uint32_t dev_access_tim0;
uint32_t dev_access_tim1;
uint32_t dev_access_tim2;
uint32_t dev_access_tim3;
uint32_t dev_access_tim4;
uint32_t dev_access_tim5;
uint32_t spare_in_out;
uint32_t monitor_cntl;
uint32_t port_intr_gen0;
uint32_t port_intr_gen1;
uint32_t syscntlr_intr_gen;
uint32_t sys_intr_status;
uint32_t sys_intr_enable;
uint32_t pci_intr_status;
uint32_t pci_intr_enable;
uint32_t pci_to_consbus_map;
uint32_t consbus_to_pci_map;
uint32_t scm_consbus_addrmap;
uint32_t ar_slot0_trans_cnt;
uint32_t ar_slot1_trans_cnt;
uint32_t ar_slot2_trans_cnt;
uint32_t ar_slot3_trans_cnt;
uint32_t ar_slot4_trans_cnt;
uint32_t ar_slot5_trans_cnt;
uint32_t ar_slot6_trans_cnt;
uint32_t ar_slot7_trans_cnt;
uint32_t ar_slot8_trans_cnt;
uint32_t ar_slot9_trans_cnt;
uint32_t ar_trans_cnt_oflow;
uint32_t ar_trans_cnt_uflow;
uint32_t ar_l1l1_conf;
uint32_t lock_step_err;
uint32_t l2_check_err;
uint32_t incon_tstl1_slave;
uint32_t incon_tstl2_slave;
uint32_t ecc_status;
uint32_t event_counter0;
uint32_t event_counter1;
uint32_t event_counter2;
uint32_t monitor_counter_cntl;
uint32_t ar_transid_match;
};
#ifdef __cplusplus
}
#endif
#endif