Lines Matching refs:dp

149 #define	OUTB(dp, p, v, errp, label)	\  argument
150 if ((*(errp) = usbgem_ctrl_out((dp), \
160 #define OUTW(dp, p, v, errp, label) \ argument
161 if ((*(errp) = usbgem_ctrl_out_val((dp), \
170 #define OUTS(dp, p, buf, len, errp, label) \ argument
171 if ((*(errp) = usbgem_ctrl_out((dp), \
181 #define INB(dp, p, vp, errp, label) \ argument
182 if ((*(errp) = usbgem_ctrl_in_val((dp), \
191 #define INW(dp, p, vp, errp, label) \ argument
192 if ((*(errp) = usbgem_ctrl_in_val((dp), \
201 #define INS(dp, p, buf, len, errp, label) \ argument
202 if ((*(errp) = usbgem_ctrl_in((dp), \
218 upf_reset_chip(struct usbgem_dev *dp) in upf_reset_chip() argument
223 struct upf_dev *lp = dp->private; in upf_reset_chip()
225 DPRINTF(0, (CE_CONT, "!%s: %s: called", dp->name, __func__)); in upf_reset_chip()
229 OUTB(dp, EC1, EC1_RM, &err, usberr); in upf_reset_chip()
232 INB(dp, EC1, &val, &err, usberr); in upf_reset_chip()
241 cmn_err(CE_WARN, "!%s: failed to reset: timeout", dp->name); in upf_reset_chip()
245 cmn_err(CE_NOTE, "!%s: %s: usberr detected", dp->name, __func__); in upf_reset_chip()
253 upf_init_chip(struct usbgem_dev *dp) in upf_init_chip() argument
257 struct upf_dev *lp = dp->private; in upf_init_chip()
259 DPRINTF(0, (CE_CONT, "!%s: %s: called", dp->name, __func__)); in upf_init_chip()
263 OUTB(dp, EC0, lp->ec[0], &err, usberr); in upf_init_chip()
268 INB(dp, EC2, &lp->ec[2], &err, usberr); in upf_init_chip()
271 if (dp->misc_flag & USBGEM_VLAN) { in upf_init_chip()
275 OUTB(dp, EC2, lp->ec[2], &err, usberr); in upf_init_chip()
278 OUTS(dp, MA, &zero64, 8, &err, usberr); in upf_init_chip()
283 OUTB(dp, PAUSETIMER, 0x1f, &err, usberr); in upf_init_chip()
294 OUTB(dp, RXFC, 0, &err, usberr); in upf_init_chip()
298 err = upf_set_media(dp); in upf_init_chip()
301 DPRINTF(2, (CE_CONT, "!%s: %s: end (success)", dp->name, __func__)); in upf_init_chip()
306 dp->name, __func__, err); in upf_init_chip()
311 upf_start_chip(struct usbgem_dev *dp) in upf_start_chip() argument
314 struct upf_dev *lp = dp->private; in upf_start_chip()
316 DPRINTF(0, (CE_CONT, "!%s: %s: called", dp->name, __func__)); in upf_start_chip()
320 OUTB(dp, EC0, lp->ec[0], &err, usberr); in upf_start_chip()
325 dp->name, __func__, err); in upf_start_chip()
330 upf_stop_chip(struct usbgem_dev *dp) in upf_stop_chip() argument
333 struct upf_dev *lp = dp->private; in upf_stop_chip()
335 DPRINTF(0, (CE_CONT, "!%s: %s: called", dp->name, __func__)); in upf_stop_chip()
339 OUTB(dp, EC0, lp->ec[0], &err, usberr); in upf_stop_chip()
345 dp->name, __func__, err); in upf_stop_chip()
350 upf_get_stats(struct usbgem_dev *dp) in upf_get_stats() argument
357 upf_mcast_hash(struct usbgem_dev *dp, const uint8_t *addr) in upf_mcast_hash() argument
364 upf_set_rx_filter(struct usbgem_dev *dp) in upf_set_rx_filter() argument
373 struct upf_dev *lp = dp->private; in upf_set_rx_filter()
376 dp->name, __func__, dp->rxmode, RXMODE_BITS)); in upf_set_rx_filter()
382 if (dp->rxmode & RXMODE_PROMISC) { in upf_set_rx_filter()
386 } else if ((dp->rxmode & RXMODE_ALLMULTI) || dp->mc_count > 0) { in upf_set_rx_filter()
392 if (bcmp(dp->cur_addr.ether_addr_octet, in upf_set_rx_filter()
396 bcopy(dp->cur_addr.ether_addr_octet, in upf_set_rx_filter()
398 OUTS(dp, EID, in upf_set_rx_filter()
403 OUTS(dp, EC0, lp->ec, 3, &err, usberr); in upf_set_rx_filter()
406 INB(dp, EC0, &reg0, &err, usberr); in upf_set_rx_filter()
407 INB(dp, EC1, &reg1, &err, usberr); in upf_set_rx_filter()
408 INB(dp, EC2, &reg2, &err, usberr); in upf_set_rx_filter()
411 dp->name, __func__, in upf_set_rx_filter()
417 cmn_err(CE_NOTE, "!%s: %s: usberr detected", dp->name, __func__); in upf_set_rx_filter()
422 upf_set_media(struct usbgem_dev *dp) in upf_set_media() argument
425 struct upf_dev *lp = dp->private; in upf_set_media()
427 DPRINTF(0, (CE_CONT, "!%s: %s: called", dp->name, __func__)); in upf_set_media()
432 if (dp->full_duplex) { in upf_set_media()
437 if (dp->speed == USBGEM_SPD_100) { in upf_set_media()
442 switch (dp->flow_control) { in upf_set_media()
454 switch (dp->flow_control) { in upf_set_media()
459 OUTB(dp, ORFBFC, in upf_set_media()
464 OUTB(dp, RPNBFC_PN, in upf_set_media()
469 OUTB(dp, ORFBFC, in upf_set_media()
474 OUTB(dp, RPNBFC, 0, &err, usberr); in upf_set_media()
479 OUTB(dp, ORFBFC, 0, &err, usberr); in upf_set_media()
480 OUTB(dp, RPNBFC, 0, &err, usberr); in upf_set_media()
485 OUTS(dp, EC0, lp->ec, 2, &err, usberr); in upf_set_media()
487 dp->name, __func__, lp->ec[0], EC0_BITS, lp->ec[1], EC1_BITS)); in upf_set_media()
492 cmn_err(CE_WARN, "%s: %s: failed to write ec1", dp->name, __func__); in upf_set_media()
500 upf_tx_make_packet(struct usbgem_dev *dp, mblk_t *mp) in upf_tx_make_packet() argument
509 DPRINTF(3, (CE_CONT, "!%s: %s: called", dp->name, __func__)); in upf_tx_make_packet()
557 upf_dump_packet(struct usbgem_dev *dp, uint8_t *bp, int n) in upf_dump_packet() argument
568 upf_rx_make_packet(struct usbgem_dev *dp, mblk_t *mp) in upf_rx_make_packet() argument
574 struct upf_dev *lp = dp->private; in upf_rx_make_packet()
581 dp->name, ddi_get_lbolt(), __func__, len, mp->b_cont)); in upf_rx_make_packet()
584 upf_dump_packet(dp, mp->b_rptr, max(6, len)); in upf_rx_make_packet()
600 dp->name, __func__, rsr, RSR_BITS, len)); in upf_rx_make_packet()
604 DPRINTF(0, (CE_CONT, "!%s: rsr:%b", dp->name, rsr, RSR_BITS)); in upf_rx_make_packet()
606 dp->stats.frame++; in upf_rx_make_packet()
609 dp->stats.frame_too_long++; in upf_rx_make_packet()
612 dp->stats.runt++; in upf_rx_make_packet()
615 dp->stats.errrcv++; in upf_rx_make_packet()
622 dp->stats.frame_too_long++; in upf_rx_make_packet()
623 dp->stats.errrcv++; in upf_rx_make_packet()
626 dp->stats.runt++; in upf_rx_make_packet()
627 dp->stats.errrcv++; in upf_rx_make_packet()
641 upf_interrupt(struct usbgem_dev *dp, mblk_t *mp) in upf_interrupt() argument
644 struct upf_dev *lp = dp->private; in upf_interrupt()
650 dp->name, __func__, mp->b_wptr - mp->b_rptr, in upf_interrupt()
655 dp->name, __func__)); in upf_interrupt()
656 usbgem_mii_update_link(dp); in upf_interrupt()
666 upf_mii_read(struct usbgem_dev *dp, uint_t index, int *errp) in upf_mii_read() argument
673 dp->name, __func__, index)); in upf_mii_read()
679 OUTB(dp, PHYA, dp->mii_phy_addr, errp, usberr); in upf_mii_read()
682 OUTB(dp, PHYAC, index | PHYAC_RDPHY, errp, usberr); in upf_mii_read()
685 INB(dp, PHYAC, &phyctrl, errp, usberr); in upf_mii_read()
688 INW(dp, PHYD, &val, errp, usberr); in upf_mii_read()
690 dp->name, __func__, val)); in upf_mii_read()
696 cmn_err(CE_WARN, "!%s: %s: timeout detected", dp->name, __func__); in upf_mii_read()
702 "!%s: %s: usberr(%d) detected", dp->name, __func__, *errp); in upf_mii_read()
707 upf_mii_write(struct usbgem_dev *dp, uint_t index, uint16_t val, int *errp) in upf_mii_write() argument
713 dp->name, __func__, index, val)); in upf_mii_write()
718 OUTW(dp, PHYD, val, errp, usberr); in upf_mii_write()
719 OUTB(dp, PHYA, dp->mii_phy_addr, errp, usberr); in upf_mii_write()
720 OUTB(dp, PHYAC, index | PHYAC_WRPHY, errp, usberr); in upf_mii_write()
723 INB(dp, PHYAC, &phyctrl, errp, usberr); in upf_mii_write()
732 cmn_err(CE_WARN, "!%s: %s: timeout detected", dp->name, __func__); in upf_mii_write()
738 "!%s: %s: usberr(%d) detected", dp->name, __func__, *errp); in upf_mii_write()
743 upf_enable_phy(struct usbgem_dev *dp) in upf_enable_phy() argument
747 struct upf_dev *lp = dp->private; in upf_enable_phy()
752 INB(dp, IPHYC, &val, &err, usberr); in upf_enable_phy()
754 OUTB(dp, IPHYC, val, &err, usberr); in upf_enable_phy()
756 INB(dp, IPHYC, &val, &err, usberr); in upf_enable_phy()
758 dp->name, __func__, val, IPHYC_BITS)); in upf_enable_phy()
761 OUTB(dp, IPHYC, val | IPHYC_PHYR, &err, usberr); in upf_enable_phy()
762 OUTB(dp, IPHYC, val, &err, usberr); in upf_enable_phy()
766 OUTB(dp, 0x83, 0xa5, &err, usberr); in upf_enable_phy()
767 INB(dp, 0x83, &val, &err, usberr); in upf_enable_phy()
774 dp->ugc.usbgc_mii_hw_link_detection = B_TRUE; in upf_enable_phy()
785 OUTB(dp, GPIO10, GPIO10_0O | GPIO10_0OE, &err, usberr); in upf_enable_phy()
788 OUTB(dp, GPIO10, in upf_enable_phy()
792 dp->ugc.usbgc_mii_hw_link_detection = B_FALSE; in upf_enable_phy()
798 cmn_err(CE_NOTE, "!%s: %s: usberr detected", dp->name, __func__); in upf_enable_phy()
803 upf_mii_probe(struct usbgem_dev *dp) in upf_mii_probe() argument
807 struct upf_dev *lp = dp->private; in upf_mii_probe()
810 upf_enable_phy(dp); in upf_mii_probe()
814 return (usbgem_mii_probe_default(dp)); in upf_mii_probe()
818 upf_mii_init(struct usbgem_dev *dp) in upf_mii_init() argument
822 struct upf_dev *lp = dp->private; in upf_mii_init()
825 upf_enable_phy(dp); in upf_mii_init()
835 val = upf_mii_read(dp, 0x1b, &err) | 0x4; in upf_mii_init()
836 upf_mii_write(dp, 0x1b, val, &err); in upf_mii_init()
847 upf_read_eeprom(struct usbgem_dev *dp, int index, int *errp) in upf_read_eeprom() argument
855 OUTB(dp, EECTRL, 0, errp, usberr); in upf_read_eeprom()
857 OUTB(dp, EEOFFSET, index, errp, usberr); in upf_read_eeprom()
858 OUTB(dp, EECTRL, EECTRL_RD, errp, usberr); in upf_read_eeprom()
861 INB(dp, EECTRL, &eectrl, errp, usberr); in upf_read_eeprom()
863 INW(dp, EEDATA, &data, errp, usberr); in upf_read_eeprom()
875 "!%s: %s: usberr(%d) detected", dp->name, __func__, *errp); in upf_read_eeprom()
880 upf_eeprom_dump(struct usbgem_dev *dp, int size) in upf_eeprom_dump() argument
885 cmn_err(CE_CONT, "!%s: %s dump:", dp->name, __func__); in upf_eeprom_dump()
890 upf_read_eeprom(dp, i + 0, &err), in upf_eeprom_dump()
891 upf_read_eeprom(dp, i + 1, &err), in upf_eeprom_dump()
892 upf_read_eeprom(dp, i + 2, &err), in upf_eeprom_dump()
893 upf_read_eeprom(dp, i + 3, &err)); in upf_eeprom_dump()
898 upf_attach_chip(struct usbgem_dev *dp) in upf_attach_chip() argument
904 struct upf_dev *lp = dp->private; in upf_attach_chip()
909 mac = dp->dev_addr.ether_addr_octet; in upf_attach_chip()
911 val = upf_read_eeprom(dp, i, &err); in upf_attach_chip()
921 dp->name, __func__, in upf_attach_chip()
924 dp->misc_flag = 0; in upf_attach_chip()
926 dp->misc_flag |= USBGEM_VLAN; in upf_attach_chip()
929 upf_eeprom_dump(dp, 0x80); in upf_attach_chip()
934 cmn_err(CE_WARN, "!%s: %s: usb error detected", dp->name, __func__); in upf_attach_chip()
948 struct usbgem_dev *dp; in upfattach() local
1036 dp = usbgem_do_attach(dip, ugcp, lp, sizeof (struct upf_dev)); in upfattach()
1040 if (dp != NULL) { in upfattach()
1051 dp = USBGEM_GET_DEV(dip); in upfattach()
1052 lp = dp->private; in upfattach()