Lines Matching +full:5 +full:gbase +full:- +full:x

1 /*-
2 * Copyright (c) 2015-2016 Chelsio Communications, Inc.
65 {0x4000, "Chelsio T440-dbg"},
66 {0x4001, "Chelsio T420-CR"},
67 {0x4002, "Chelsio T422-CR"},
68 {0x4003, "Chelsio T440-CR"},
69 {0x4004, "Chelsio T420-BCH"},
70 {0x4005, "Chelsio T440-BCH"},
71 {0x4006, "Chelsio T440-CH"},
72 {0x4007, "Chelsio T420-SO"},
73 {0x4008, "Chelsio T420-CX"},
74 {0x4009, "Chelsio T420-BT"},
75 {0x400a, "Chelsio T404-BT"},
76 {0x400e, "Chelsio T440-LP-CR"},
78 {0x5000, "Chelsio T580-dbg"},
79 {0x5001, "Chelsio T520-CR"}, /* 2 x 10G */
80 {0x5002, "Chelsio T522-CR"}, /* 2 x 10G, 2 X 1G */
81 {0x5003, "Chelsio T540-CR"}, /* 4 x 10G */
82 {0x5007, "Chelsio T520-SO"}, /* 2 x 10G, nomem */
83 {0x5009, "Chelsio T520-BT"}, /* 2 x 10GBaseT */
84 {0x500a, "Chelsio T504-BT"}, /* 4 x 1G */
85 {0x500d, "Chelsio T580-CR"}, /* 2 x 40G */
86 {0x500e, "Chelsio T540-LP-CR"}, /* 4 x 10G */
87 {0x5010, "Chelsio T580-LP-CR"}, /* 2 x 40G */
88 {0x5011, "Chelsio T520-LL-CR"}, /* 2 x 10G */
89 {0x5012, "Chelsio T560-CR"}, /* 1 x 40G, 2 x 10G */
90 {0x5014, "Chelsio T580-LP-SO-CR"}, /* 2 x 40G, nomem */
91 {0x5015, "Chelsio T502-BT"}, /* 2 x 1G */
92 {0x5018, "Chelsio T540-BT"}, /* 4 x 10GBaseT */
93 {0x5019, "Chelsio T540-LP-BT"}, /* 4 x 10GBaseT */
94 {0x501a, "Chelsio T540-SO-BT"}, /* 4 x 10GBaseT, nomem */
95 {0x501b, "Chelsio T540-SO-CR"}, /* 4 x 10G, nomem */
97 {0x6000, "Chelsio T6-DBG-25"}, /* 2 x 10/25G, debug */
98 {0x6001, "Chelsio T6225-CR"}, /* 2 x 10/25G */
99 {0x6002, "Chelsio T6225-SO-CR"}, /* 2 x 10/25G, nomem */
100 {0x6003, "Chelsio T6425-CR"}, /* 4 x 10/25G */
101 {0x6004, "Chelsio T6425-SO-CR"}, /* 4 x 10/25G, nomem */
102 {0x6005, "Chelsio T6225-SO-OCP3"}, /* 2 x 10/25G, nomem */
103 {0x6006, "Chelsio T6225-OCP3"}, /* 2 x 10/25G */
104 {0x6007, "Chelsio T62100-LP-CR"}, /* 2 x 40/50/100G */
105 {0x6008, "Chelsio T62100-SO-CR"}, /* 2 x 40/50/100G, nomem */
106 {0x6009, "Chelsio T6210-BT"}, /* 2 x 10GBASE-T */
107 {0x600d, "Chelsio T62100-CR"}, /* 2 x 40/50/100G */
108 {0x6010, "Chelsio T6-DBG-100"}, /* 2 x 40/50/100G, debug */
109 {0x6011, "Chelsio T6225-LL-CR"}, /* 2 x 10/25G */
110 {0x6014, "Chelsio T62100-SO-OCP3"}, /* 2 x 40/50/100G, nomem */
111 {0x6015, "Chelsio T6201-BT"}, /* 2 x 1000BASE-T */
116 {0x6082, "Chelsio T6225-CR 82"},
117 {0x6083, "Chelsio T62100-CR 83"},
118 {0x6084, "Chelsio T64100-CR 84"},
119 {0x6085, "Chelsio T6240-SO 85"},
120 {0x6086, "Chelsio T6225-SO-CR 86"},
121 {0x6087, "Chelsio T6225-CR 87"},
128 return bus_space_read_4(sc->bt, sc->bh, reg); in t4iov_read_reg()
201 sc->sc_dev = dev; in t4iov_attach()
203 sc->regs_rid = PCIR_BAR(0); in t4iov_attach()
204 sc->regs_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, in t4iov_attach()
205 &sc->regs_rid, RF_ACTIVE); in t4iov_attach()
206 if (sc->regs_res == NULL) { in t4iov_attach()
210 sc->bt = rman_get_bustag(sc->regs_res); in t4iov_attach()
211 sc->bh = rman_get_bushandle(sc->regs_res); in t4iov_attach()
216 sc->pf = G_SOURCEPF(whoami); in t4iov_attach()
218 sc->pf = G_T6_SOURCEPF(whoami); in t4iov_attach()
220 sc->sc_main = pci_find_dbsf(pci_get_domain(dev), pci_get_bus(dev), in t4iov_attach()
222 if (sc->sc_main == NULL) { in t4iov_attach()
223 bus_release_resource(dev, SYS_RES_MEMORY, sc->regs_rid, in t4iov_attach()
224 sc->regs_res); in t4iov_attach()
227 if (T4_IS_MAIN_READY(sc->sc_main) == 0) { in t4iov_attach()
230 bus_release_resource(dev, SYS_RES_MEMORY, sc->regs_rid, in t4iov_attach()
231 sc->regs_res); in t4iov_attach()
248 MPASS(!sc->sc_attached); in t4iov_attach_child()
251 * PF0-3 are associated with a specific port on the NIC (PF0 in t4iov_attach_child()
256 error = T4_READ_PORT_DEVICE(sc->sc_main, pci_get_function(dev), &pdev); in t4iov_attach_child()
263 pci_iov_schema_add_unicast_mac(vf_schema, "mac-addr", 0, NULL); in t4iov_attach_child()
268 device_printf(dev, "Failed to initialize SR-IOV: %d\n", error); in t4iov_attach_child()
273 sc->sc_attached = true; in t4iov_attach_child()
286 if (!sc->sc_attached) in t4iov_detach_child()
292 device_printf(dev, "Failed to disable SR-IOV\n"); in t4iov_detach_child()
297 sc->sc_attached = false; in t4iov_detach_child()
308 if (sc->sc_attached) { in t4iov_detach()
313 if (sc->regs_res) { in t4iov_detach()
314 bus_release_resource(dev, SYS_RES_MEMORY, sc->regs_rid, in t4iov_detach()
315 sc->regs_res); in t4iov_detach()
345 MPASS(sc->sc_attached); in t4iov_add_vf()
346 MPASS(sc->sc_main != NULL); in t4iov_add_vf()
347 adap = device_get_softc(sc->sc_main); in t4iov_add_vf()
349 if (nvlist_exists_binary(config, "mac-addr")) { in t4iov_add_vf()
350 mac = nvlist_get_binary(config, "mac-addr", &size); in t4iov_add_vf()
356 rc = -t4_set_vf_mac(adap, sc->pf, vfnum + 1, 1, ma); in t4iov_add_vf()
361 "%02x:%02x:%02x:%02x:%02x:%02x, rc = %d\n", vfnum, in t4iov_add_vf()
362 ma[0], ma[1], ma[2], ma[3], ma[4], ma[5], rc); in t4iov_add_vf()
380 rc = t4_set_vlan_acl(adap, sc->pf, vfnum + 1, vlan); in t4iov_add_vf()