ch_t
ch_get_dma_handle(ch_t *chp)
ch_free_dma_handles(ch_t *chp)
ch_bind_dma_handle(ch_t *chp, int size, caddr_t vaddr, cmdQ_ce_t *cmp,
ch_unbind_dma_handle(ch_t *chp, free_dh_t *dhe)
ch_get_dvma_handle(ch_t *chp)
ch_free_dvma_handles(ch_t *chp)
ch_bind_dvma_handle(ch_t *chp, int size, caddr_t vaddr, cmdQ_ce_t *cmp,
ch_unbind_dvma_handle(ch_t *chp, free_dh_t *dhe)
ch_send_up(ch_t *chp, mblk_t *mp, uint32_t cksum, int flg)
ch_gld_ok(ch_t *chp)
ch_t *chp;
chp = (ch_t *)mp->gldm_private;
ch_t *chp = (ch_t *)macinfo->gldm_private;
ch_t *chp = (ch_t *)mp->gldm_private;
ch_t *chp;
chp = (ch_t *)mp->gldm_private;
ch_t *chp = (ch_t *)mp->gldm_private;
pe_ioctl((ch_t *)(macinfo->gldm_private), q, mp);
ch_t *chp = (ch_t *)mp->gldm_private;
ch_t *chp = (ch_t *)mp->gldm_private;
ch_t *chp = (ch_t *)macinfo->gldm_private;
return (pe_intr((ch_t *)mp->gldm_private));
ch_set_name(ch_t *chp, int unit)
ch_free_name(ch_t *chp)
ch_t *chp = gchp[unit];
ch_t *chp;
ch_get_prop(ch_t *chp)
ch_t *gchp[MAX_CARDS];
ch_t *chp;
chp = (ch_t *)kmem_zalloc(sizeof (ch_t), KM_SLEEP);
kmem_free(chp, sizeof (ch_t));
kmem_free(chp, sizeof (ch_t));
kmem_free(chp, sizeof (ch_t));
kmem_free(chp, sizeof (ch_t));
kmem_free(chp, sizeof (ch_t));
kmem_free(chp, sizeof (ch_t));
if ((chp = (ch_t *)ddi_get_driver_private(dip)) == NULL)
ch_t *chp;
chp = (ch_t *)macinfo->gldm_private;
ch_t *chp;
chp = (ch_t *)macinfo->gldm_private;
kmem_free(chp, sizeof (ch_t));
if ((chp = (ch_t *)ddi_get_driver_private(dip)) == NULL)
static void ch_free_dma_handles(ch_t *chp);
static void ch_set_name(ch_t *chp, int unit);
static void ch_free_name(ch_t *chp);
ch_alloc_dma_mem(ch_t *chp, int type, int flags, int size, uint64_t *paddr,
static void ch_get_prop(ch_t *chp);
static void ch_free_dvma_handles(ch_t *chp);
void *ch_alloc_dma_mem(ch_t *, int, int, int, uint64_t *, ulong_t *, ulong_t *);
void ch_unbind_dma_handle(ch_t *, free_dh_t *);
void ch_send_up(ch_t *, mblk_t *, uint32_t, int);
void ch_gld_ok(ch_t *);
uint32_t t1_read_reg_4(ch_t *obj, uint32_t reg_val);
void t1_write_reg_4(ch_t *obj, uint32_t reg_val, uint32_t write_val);
uint32_t t1_os_pci_read_config_2(ch_t *obj, uint32_t reg, uint16_t *val);
uint32_t t1_os_pci_read_config_4(ch_t *obj, uint32_t reg, uint32_t *val);
int t1_os_pci_write_config_2(ch_t *obj, uint32_t reg, uint16_t val);
int t1_os_pci_write_config_4(ch_t *obj, uint32_t reg, uint32_t val);
int t1_num_of_ports(ch_t *obj);
int pe_os_mem_copy(ch_t *obj, void *dst, void *src, size_t len);
void *pe_os_malloc_contig_wait_zero(ch_t *, size_t, uint64_t *,
void pe_set_mac(ch_t *sa, unsigned char *ac_enaddr);
unsigned char *pe_get_mac(ch_t *sa);
void pe_set_promiscuous(ch_t *sa, int flag);
int pe_get_stats(ch_t *sa, uint64_t *speed, uint32_t *intrcnt,
int pe_attach(ch_t *);
void pe_detach(ch_t *);
uint_t pe_intr(ch_t *);
int pe_start(ch_t *sa, mblk_t *mb, uint32_t flg);
void pe_stop(ch_t *sa);
void pe_ioctl(ch_t *, queue_t *, mblk_t *);
int pe_set_mc(ch_t *, uint8_t *, int);
int tpi_read(ch_t *obj, u32 addr, u32 *value);
void t1_fatal_err(ch_t *chp);
void pe_dma_handle_init(ch_t *, int);
free_dh_t *ch_get_dma_handle(ch_t *);
void pe_mark_freelists(ch_t *chp);
free_dh_t *ch_get_dvma_handle(ch_t *);
void ch_unbind_dvma_handle(ch_t *, free_dh_t *);
t1_os_pci_read_config_2(ch_t *obj, uint32_t reg, uint16_t *val)
t1_os_pci_write_config_2(ch_t *obj, uint32_t reg, uint16_t val)
t1_os_pci_read_config_4(ch_t *obj, uint32_t reg, uint32_t *val)
t1_os_pci_write_config_4(ch_t *obj, uint32_t reg, uint32_t val)
t1_num_of_ports(ch_t *obj)
pe_os_mem_copy(ch_t *obj, void *dst, void *src, size_t len)
pe_is_ring_buffer_enabled(ch_t *obj)
pe_ioctl(ch_t *chp, queue_t *q, mblk_t *mp)
pe_os_malloc_contig_wait_zero(ch_t *chp, size_t len, uint64_t *dma_addr,
pe_os_free_contig(ch_t *obj, size_t len, void *addr, uint64_t dma_addr,
t1_fatal_err(ch_t *adapter)
t1_read_reg_4(ch_t *obj, uint32_t reg_val)
t1_write_reg_4(ch_t *obj, uint32_t reg_val, uint32_t write_val)
void t1_os_link_changed(ch_t *adapter, int port_id, int link_status,
ch_set_config_data(ch_t *chp)
static int pe_small_rbuf_pool_init(ch_t *sa);
static int pe_big_rbuf_pool_init(ch_t *sa);
pe_sa_init(ch_t *sa)
static int pe_make_fake_arp(ch_t *chp, unsigned char *arpp);
pe_small_rbuf_pool_init(ch_t *sa)
pe_big_rbuf_pool_init(ch_t *sa)
ch_alloc_small_esbbuf(ch_t *sa, uint32_t i)
ch_alloc_big_esbbuf(ch_t *sa, uint32_t i)
pe_intr(ch_t *sa)
pe_rbuf_pool_free(ch_t *sa)
ch_t *sa = rbp->cs_sa;
ch_t *sa = rbp->cs_sa;
ch_get_small_rbuf(ch_t *sa)
ch_get_big_rbuf(ch_t *sa)
pe_detach(ch_t *sa)
pe_free_driver_resources(ch_t *sa)
ext_intr_task(ch_t *adapter)
ch_t *sa = NULL;
t1_os_elmer0_ext_intr(ch_t *adapter)
sa = (ch_t *)xsa;
pe_dma_handle_init(ch_t *chp, int cnt)
update_mtu_tab(ch_t *adapter)
pe_change_mtu(ch_t *chp)
pe_make_fake_arp(ch_t *chp, unsigned char *arpp)
t1_os_link_changed(ch_t *obj, int port_id, int link_status,
link_start(ch_t *sa, struct pe_port_t *p)
pe_stop(ch_t *sa)
pe_start(ch_t *sa, mblk_t *mp, uint32_t flg)
uint32_t ch_bind_dma_handle(ch_t *, int, caddr_t, cmdQ_ce_t *,
uint32_t ch_bind_dvma_handle(ch_t *, int, caddr_t, cmdQ_ce_t *,
pe_set_mac(ch_t *sa, unsigned char *ac_enaddr)
pe_get_mac(ch_t *sa)
pe_set_promiscuous(ch_t *sa, int flag)
pe_set_mc(ch_t *sa, uint8_t *ep, int flg)
pe_get_stats(ch_t *sa, uint64_t *speed, uint32_t *intrcnt, uint32_t *norcvbuf,
static void link_start(ch_t *sa, struct pe_port_t *pp);
static ch_esb_t *ch_alloc_small_esbbuf(ch_t *sa, uint32_t i);
static ch_esb_t *ch_alloc_big_esbbuf(ch_t *sa, uint32_t i);
static const struct board_info *pe_sa_init(ch_t *sa);
static int ch_set_config_data(ch_t *chp);
void pe_rbuf_pool_free(ch_t *chp);
static void pe_free_driver_resources(ch_t *sa);
static void update_mtu_tab(ch_t *adapter);
static int pe_change_mtu(ch_t *chp);
pe_attach(ch_t *chp)
static inline void setup_ring_params(ch_t *adapter, u64 addr, u32 size,
ch_t *chp = sge->obj;
t1_sge_create(ch_t *sa, struct sge_params *p)
ch_t *ap = sge->obj;
setup_ring_params(ch_t *adapter, u64 addr, u32 size, int base_reg_lo,
t1_espi_workaround(ch_t *adapter)
ch_t *chp = (ch_t *)sge->obj;
os_freelist_buffer_alloc(ch_t *sa, int sz, mblk_t **mb, ulong_t *dh)
ch_esb_t *ch_get_small_rbuf(ch_t *sa);
ch_esb_t *ch_get_big_rbuf(ch_t *sa);
static uint64_t os_freelist_buffer_alloc(ch_t *sa, int sz, mblk_t **mb,
void pe_os_free_contig(ch_t *, size_t, void *, uint64_t, ulong_t, ulong_t);
pesge *t1_sge_create(ch_t *, struct sge_params *);
extern u32 t1_sge_get_ptimeout(ch_t *);
extern void t1_sge_set_ptimeout(ch_t *, u32);