Author: np Date: Thu Sep 22 18:47:07 2016 New Revision: 306206 URL: https://svnweb.freebsd.org/changeset/base/306206
Log: cxgbe(4): Catch up with the different layout of WHOAMI in T6. Note that the code moved below t4_prep_adapter() as part of this change because now it needs a working chip_id(). Modified: head/sys/dev/cxgbe/t4_main.c Modified: head/sys/dev/cxgbe/t4_main.c ============================================================================== --- head/sys/dev/cxgbe/t4_main.c Thu Sep 22 18:45:25 2016 (r306205) +++ head/sys/dev/cxgbe/t4_main.c Thu Sep 22 18:47:07 2016 (r306206) @@ -812,15 +812,6 @@ t4_attach(device_t dev) if (rc != 0) goto done; /* error message displayed already */ - /* - * This is the real PF# to which we're attaching. Works from within PCI - * passthrough environments too, where pci_get_function() could return a - * different PF# depending on the passthrough configuration. We need to - * use the real PF# in all our communication with the firmware. - */ - sc->pf = G_SOURCEPF(t4_read_reg(sc, A_PL_WHOAMI)); - sc->mbox = sc->pf; - memset(sc->chan_map, 0xff, sizeof(sc->chan_map)); /* Prepare the adapter for operation. */ @@ -832,6 +823,16 @@ t4_attach(device_t dev) goto done; } + /* + * This is the real PF# to which we're attaching. Works from within PCI + * passthrough environments too, where pci_get_function() could return a + * different PF# depending on the passthrough configuration. We need to + * use the real PF# in all our communication with the firmware. + */ + j = t4_read_reg(sc, A_PL_WHOAMI); + sc->pf = chip_id(sc) <= CHELSIO_T5 ? G_SOURCEPF(j) : G_T6_SOURCEPF(j); + sc->mbox = sc->pf; + t4_init_devnames(sc); if (sc->names == NULL) { rc = ENOTSUP; _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"