Lines Matching refs:cap
769 tb_config_next_cap(struct router_softc *sc, struct router_cfg_cap *cap) in tb_config_next_cap() argument
776 KASSERT(cap != NULL, ("cap cannot be NULL\n")); in tb_config_next_cap()
777 KASSERT(cap->next_cap != 0, ("next_cap cannot be 0\n")); in tb_config_next_cap()
781 current = cap->next_cap; in tb_config_next_cap()
782 error = tb_config_read(sc, cap->space, cap->adap, current, 1, buf); in tb_config_next_cap()
787 cap->cap_id = tbcap->hdr.cap_id; in tb_config_next_cap()
788 cap->next_cap = tbcap->hdr.next_cap; in tb_config_next_cap()
789 cap->current_cap = current; in tb_config_next_cap()
791 if ((cap->space != TB_CFG_CS_ROUTER) && in tb_config_next_cap()
797 tb_config_read(sc, cap->space, cap->adap, current, 2, buf); in tb_config_next_cap()
803 cap->vsc_id = tbcap->vsc.vsc_id; in tb_config_next_cap()
804 cap->vsc_len = tbcap->vsc.len; in tb_config_next_cap()
806 cap->next_cap = tbcap->vsec.vsec_next_cap; in tb_config_next_cap()
807 cap->vsec_len = tbcap->vsec.vsec_len; in tb_config_next_cap()
815 tb_config_find_cap(struct router_softc *sc, struct router_cfg_cap *cap) in tb_config_find_cap() argument
822 cap_id = cap->cap_id; in tb_config_find_cap()
823 vsc_id = cap->vsc_id; in tb_config_find_cap()
825 cap->cap_id = cap->vsc_id = 0; in tb_config_find_cap()
826 while ((cap->cap_id != cap_id) || (cap->vsc_id != vsc_id)) { in tb_config_find_cap()
828 "Looking for cap %d at offset %d\n", cap->cap_id, in tb_config_find_cap()
829 cap->next_cap); in tb_config_find_cap()
830 if ((cap->next_cap == 0) || in tb_config_find_cap()
831 (cap->next_cap > TB_CFG_CAP_OFFSET_MAX)) in tb_config_find_cap()
833 error = tb_config_next_cap(sc, cap); in tb_config_find_cap()
842 tb_config_find_router_cap(struct router_softc *sc, u_int cap, u_int vsc, u_int *offset) in tb_config_find_router_cap() argument
863 rcap.cap_id = cap; in tb_config_find_router_cap()
874 tb_config_find_router_vsc(struct router_softc *sc, u_int cap, u_int *offset) in tb_config_find_router_vsc() argument
877 return (tb_config_find_router_cap(sc, TB_CFG_CAP_VSC, cap, offset)); in tb_config_find_router_vsc()
881 tb_config_find_router_vsec(struct router_softc *sc, u_int cap, u_int *offset) in tb_config_find_router_vsec() argument
884 return (tb_config_find_router_cap(sc, TB_CFG_CAP_VSEC, cap, offset)); in tb_config_find_router_vsec()
888 tb_config_find_adapter_cap(struct router_softc *sc, u_int adap, u_int cap, u_int *offset) in tb_config_find_adapter_cap() argument
909 rcap.cap_id = cap; in tb_config_find_adapter_cap()