Deleted Added
full compact
cxgb_ael1002.c (199238) cxgb_ael1002.c (204921)
1/**************************************************************************
2
3Copyright (c) 2007-2009, Chelsio Inc.
4All rights reserved.
5
6Redistribution and use in source and binary forms, with or without
7modification, are permitted provided that the following conditions are met:
8

--- 14 unchanged lines hidden (view full) ---

23INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26POSSIBILITY OF SUCH DAMAGE.
27
28***************************************************************************/
29
30#include <sys/cdefs.h>
1/**************************************************************************
2
3Copyright (c) 2007-2009, Chelsio Inc.
4All rights reserved.
5
6Redistribution and use in source and binary forms, with or without
7modification, are permitted provided that the following conditions are met:
8

--- 14 unchanged lines hidden (view full) ---

23INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26POSSIBILITY OF SUCH DAMAGE.
27
28***************************************************************************/
29
30#include <sys/cdefs.h>
31__FBSDID("$FreeBSD: head/sys/dev/cxgb/common/cxgb_ael1002.c 199238 2009-11-13 00:31:51Z np $");
31__FBSDID("$FreeBSD: head/sys/dev/cxgb/common/cxgb_ael1002.c 204921 2010-03-09 19:57:44Z np $");
32
33#include <cxgb_include.h>
34
35#undef msleep
36#define msleep t3_os_sleep
37
38enum {
39 PMD_RSD = 10, /* PMA/PMD receive signal detect register */

--- 401 unchanged lines hidden (view full) ---

441 if (v == phy_transtype_sfp) {
442 /* SFP: see SFF-8472 for below */
443
444 v = ael_i2c_rd(phy, MODULE_DEV_ADDR, 3);
445 if (v < 0)
446 return v;
447
448 if (v == 0x1)
32
33#include <cxgb_include.h>
34
35#undef msleep
36#define msleep t3_os_sleep
37
38enum {
39 PMD_RSD = 10, /* PMA/PMD receive signal detect register */

--- 401 unchanged lines hidden (view full) ---

441 if (v == phy_transtype_sfp) {
442 /* SFP: see SFF-8472 for below */
443
444 v = ael_i2c_rd(phy, MODULE_DEV_ADDR, 3);
445 if (v < 0)
446 return v;
447
448 if (v == 0x1)
449 return phy_modtype_twinax;
449 goto twinax;
450 if (v == 0x10)
451 return phy_modtype_sr;
452 if (v == 0x20)
453 return phy_modtype_lr;
454 if (v == 0x40)
455 return phy_modtype_lrm;
456
450 if (v == 0x10)
451 return phy_modtype_sr;
452 if (v == 0x20)
453 return phy_modtype_lr;
454 if (v == 0x40)
455 return phy_modtype_lrm;
456
457 v = ael_i2c_rd(phy, MODULE_DEV_ADDR, 8);
458 if (v < 0)
459 return v;
460 if (v == 4) {
461 v = ael_i2c_rd(phy, MODULE_DEV_ADDR, 60);
462 if (v < 0)
463 return v;
464 if (v & 0x1)
465 goto twinax;
466 }
467
457 v = ael_i2c_rd(phy, MODULE_DEV_ADDR, 6);
458 if (v < 0)
459 return v;
460 if (v != 4)
461 return phy_modtype_unknown;
462
463 v = ael_i2c_rd(phy, MODULE_DEV_ADDR, 10);
464 if (v < 0)
465 return v;
466
467 if (v & 0x80) {
468 v = ael_i2c_rd(phy, MODULE_DEV_ADDR, 6);
469 if (v < 0)
470 return v;
471 if (v != 4)
472 return phy_modtype_unknown;
473
474 v = ael_i2c_rd(phy, MODULE_DEV_ADDR, 10);
475 if (v < 0)
476 return v;
477
478 if (v & 0x80) {
479twinax:
468 v = ael_i2c_rd(phy, MODULE_DEV_ADDR, 0x12);
469 if (v < 0)
470 return v;
471 return v > 10 ? phy_modtype_twinax_long :
472 phy_modtype_twinax;
473 }
474 } else if (v == phy_transtype_xfp) {
475 /* XFP: See INF-8077i for details. */

--- 1755 unchanged lines hidden ---
480 v = ael_i2c_rd(phy, MODULE_DEV_ADDR, 0x12);
481 if (v < 0)
482 return v;
483 return v > 10 ? phy_modtype_twinax_long :
484 phy_modtype_twinax;
485 }
486 } else if (v == phy_transtype_xfp) {
487 /* XFP: See INF-8077i for details. */

--- 1755 unchanged lines hidden ---