Print this page
6064 ixgbe needs X550 support

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/io/ixgbe/ixgbe_sw.h
          +++ new/usr/src/uts/common/io/ixgbe/ixgbe_sw.h
↓ open down ↓ 18 lines elided ↑ open up ↑
  19   19   * CDDL HEADER END
  20   20   */
  21   21  
  22   22  /*
  23   23   * Copyright(c) 2007-2010 Intel Corporation. All rights reserved.
  24   24   */
  25   25  
  26   26  /*
  27   27   * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
  28   28   * Copyright (c) 2013 Saso Kiselkov. All rights reserved.
       29 + * Copyright 2016 OmniTI Computer Consulting, Inc. All rights reserved.
  29   30   */
  30   31  
  31   32  #ifndef _IXGBE_SW_H
  32   33  #define _IXGBE_SW_H
  33   34  
  34   35  #ifdef __cplusplus
  35   36  extern "C" {
  36   37  #endif
  37   38  
  38   39  #include <sys/types.h>
↓ open down ↓ 163 lines elided ↑ open up ↑
 202  203  #define ATTACH_PROGRESS_ADD_INTR        0x0020  /* Intr handlers added */
 203  204  #define ATTACH_PROGRESS_LOCKS           0x0040  /* Locks initialized */
 204  205  #define ATTACH_PROGRESS_INIT            0x0080  /* Device initialized */
 205  206  #define ATTACH_PROGRESS_STATS           0x0200  /* Kstats created */
 206  207  #define ATTACH_PROGRESS_MAC             0x0800  /* MAC registered */
 207  208  #define ATTACH_PROGRESS_ENABLE_INTR     0x1000  /* DDI interrupts enabled */
 208  209  #define ATTACH_PROGRESS_FM_INIT         0x2000  /* FMA initialized */
 209  210  #define ATTACH_PROGRESS_SFP_TASKQ       0x4000  /* SFP taskq created */
 210  211  #define ATTACH_PROGRESS_LINK_TIMER      0x8000  /* link check timer */
 211  212  #define ATTACH_PROGRESS_OVERTEMP_TASKQ  0x10000 /* Over-temp taskq created */
      213 +#define ATTACH_PROGRESS_PHY_TASKQ       0x20000 /* Ext. PHY taskq created */
 212  214  
 213  215  #define PROP_DEFAULT_MTU                "default_mtu"
 214  216  #define PROP_FLOW_CONTROL               "flow_control"
 215  217  #define PROP_TX_QUEUE_NUM               "tx_queue_number"
 216  218  #define PROP_TX_RING_SIZE               "tx_ring_size"
 217  219  #define PROP_RX_QUEUE_NUM               "rx_queue_number"
 218  220  #define PROP_RX_RING_SIZE               "rx_ring_size"
 219  221  #define PROP_RX_GROUP_NUM               "rx_group_number"
 220  222  
 221  223  #define PROP_INTR_FORCE                 "intr_force"
↓ open down ↓ 400 lines elided ↑ open up ↑
 622  624  typedef struct ixgbe {
 623  625          int                     instance;
 624  626          mac_handle_t            mac_hdl;
 625  627          dev_info_t              *dip;
 626  628          struct ixgbe_hw         hw;
 627  629          struct ixgbe_osdep      osdep;
 628  630  
 629  631          adapter_info_t          *capab; /* adapter hardware capabilities */
 630  632          ddi_taskq_t             *sfp_taskq;     /* sfp-change taskq */
 631  633          ddi_taskq_t             *overtemp_taskq; /* overtemp taskq */
      634 +        ddi_taskq_t             *phy_taskq;     /* external PHY taskq */
 632  635          uint32_t                eims;           /* interrupt mask setting */
 633  636          uint32_t                eimc;           /* interrupt mask clear */
 634  637          uint32_t                eicr;           /* interrupt cause reg */
 635  638  
 636  639          uint32_t                ixgbe_state;
 637  640          link_state_t            link_state;
 638  641          uint32_t                link_speed;
 639  642          uint32_t                link_duplex;
 640  643  
 641  644          uint32_t                reset_count;
 642  645          uint32_t                attach_progress;
 643  646          uint32_t                loopback_mode;
 644  647          uint32_t                default_mtu;
 645  648          uint32_t                max_frame_size;
      649 +        ixgbe_link_speed        speeds_supported;
 646  650  
 647  651          uint32_t                rcb_pending;
 648  652  
 649  653          /*
 650  654           * Each msi-x vector: map vector to interrupt cleanup
 651  655           */
 652  656          ixgbe_intr_vector_t     vect_map[MAX_INTR_VECTOR];
 653  657  
 654  658          /*
 655  659           * Receive Rings
↓ open down ↓ 67 lines elided ↑ open up ↑
 723  727          boolean_t               link_check_complete;
 724  728          hrtime_t                link_check_hrtime;
 725  729          ddi_periodic_t          periodic_id; /* for link check timer func */
 726  730  
 727  731          /*
 728  732           * Kstat definitions
 729  733           */
 730  734          kstat_t                 *ixgbe_ks;
 731  735  
 732  736          uint32_t                param_en_10000fdx_cap:1,
      737 +                                param_en_5000fdx_cap:1,
      738 +                                param_en_2500fdx_cap:1,
 733  739                                  param_en_1000fdx_cap:1,
 734  740                                  param_en_100fdx_cap:1,
 735  741                                  param_adv_10000fdx_cap:1,
      742 +                                param_adv_5000fdx_cap:1,
      743 +                                param_adv_2500fdx_cap:1,
 736  744                                  param_adv_1000fdx_cap:1,
 737  745                                  param_adv_100fdx_cap:1,
 738  746                                  param_pause_cap:1,
 739  747                                  param_asym_pause_cap:1,
 740  748                                  param_rem_fault:1,
 741  749                                  param_adv_autoneg_cap:1,
 742  750                                  param_adv_pause_cap:1,
 743  751                                  param_adv_asym_pause_cap:1,
 744  752                                  param_adv_rem_fault:1,
 745  753                                  param_lp_10000fdx_cap:1,
      754 +                                param_lp_5000fdx_cap:1,
      755 +                                param_lp_2500fdx_cap:1,
 746  756                                  param_lp_1000fdx_cap:1,
 747  757                                  param_lp_100fdx_cap:1,
 748  758                                  param_lp_autoneg_cap:1,
 749  759                                  param_lp_pause_cap:1,
 750  760                                  param_lp_asym_pause_cap:1,
 751  761                                  param_lp_rem_fault:1,
 752      -                                param_pad_to_32:12;
      762 +                                param_pad_to_32:6;
 753  763  } ixgbe_t;
 754  764  
 755  765  typedef struct ixgbe_stat {
 756  766          kstat_named_t link_speed;       /* Link Speed */
 757  767  
 758  768          kstat_named_t reset_count;      /* Reset Count */
 759  769  
 760  770          kstat_named_t rx_frame_error;   /* Rx Error in Packet */
 761  771          kstat_named_t rx_cksum_error;   /* Rx Checksum Error */
 762  772          kstat_named_t rx_exceed_pkt;    /* Rx Exceed Max Pkt Count */
↓ open down ↓ 145 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX