Print this page
NEX-1890 update oce from source provided by Emulex
        
*** 17,28 ****
   * information: Portions Copyright [yyyy] [name of copyright owner]
   *
   * CDDL HEADER END
   */
  
! /* Copyright © 2003-2011 Emulex. All rights reserved.  */
  
  /*
   * Driver Utility  function prototypes
   */
  
  #ifndef _OCE_UTILS_H_
--- 17,33 ----
   * information: Portions Copyright [yyyy] [name of copyright owner]
   *
   * CDDL HEADER END
   */
  
! /*
!  * Copyright (c) 2009-2012 Emulex. All rights reserved.
!  * Use is subject to license terms.
!  */
  
+ 
+ 
  /*
   * Driver Utility  function prototypes
   */
  
  #ifndef _OCE_UTILS_H_
*** 40,53 ****
  #define MOD_TX          0x0002
  #define MOD_RX          0x0004
  #define MOD_ISR         0x0008
  
  #define OCE_DEFAULT_LOG_SETTINGS        (CE_WARN        |       \
!                                         ((MOD_CONFIG | MOD_TX | MOD_RX) << 16))
  
  #define OCE_MAX_LOG_SETTINGS            (CE_IGNORE | ((MOD_CONFIG | MOD_TX | \
!                                         MOD_RX | MOD_ISR) << 16))
  
  #define oce_log(dev_p, level, module, fmt, arg...) {    \
          if (dev_p) {                                    \
                  if ((dev_p->mod_mask & module) &&       \
                      (dev_p->severity < CE_IGNORE) &&    \
--- 45,58 ----
  #define MOD_TX          0x0002
  #define MOD_RX          0x0004
  #define MOD_ISR         0x0008
  
  #define OCE_DEFAULT_LOG_SETTINGS        (CE_WARN        |       \
!         ((MOD_CONFIG | MOD_TX | MOD_RX) << 16UL))
  
  #define OCE_MAX_LOG_SETTINGS            (CE_IGNORE | ((MOD_CONFIG | MOD_TX | \
!         MOD_RX | MOD_ISR) << 16UL))
  
  #define oce_log(dev_p, level, module, fmt, arg...) {    \
          if (dev_p) {                                    \
                  if ((dev_p->mod_mask & module) &&       \
                      (dev_p->severity < CE_IGNORE) &&    \
*** 76,93 ****
  
  #define PAGE_4K         (0x1UL << 12)
  #define OFFSET_IN_4K_PAGE(addr) ((off_t)((uint64_t)addr & (PAGE_4K - 1)))
  #define OCE_NUM_PAGES(size) howmany(size, PAGE_4K)
  
- #ifdef OCE_DEBUG
- #define OCE_DUMP(buf, len) { \
-         int i = 0; \
-         uint32_t *p = u32ptr(buf); \
-         for (i = 0; i < len/4; i++) \
-                 cmn_err(CE_CONT, "[%d] 0x%x", i, p[i]); \
- }
- #endif
  
  /* Utility Functions */
  
  #define OCE_DW_SWAP(datap, length)      {                       \
          int len;                                        \
--- 81,90 ----
*** 104,149 ****
  #define DW_SWAP(_PTR, _LEN) OCE_DW_SWAP(_PTR, _LEN)
  #else
  #define DW_SWAP(_PTR, _LEN)
  #endif
  
- typedef struct oce_list_entry {
-         struct oce_list_entry *next;
-         struct oce_list_entry *prev;
- }OCE_LIST_NODE_T;
- 
- typedef struct {
-         kmutex_t list_lock;
-         OCE_LIST_NODE_T head;
-         int32_t nitems;
- }OCE_LIST_T;
- 
  /* externs for  list manipulation functions */
  
- 
- void oce_list_link_init(OCE_LIST_NODE_T  *list_node);
- void oce_list_create(OCE_LIST_T  *list_hdr, void *arg);
- void oce_list_destroy(OCE_LIST_T *list_hdr);
- void oce_list_insert_tail(OCE_LIST_T *list_hdr, OCE_LIST_NODE_T *list_node);
- void *oce_list_remove_head(OCE_LIST_T  *list_hdr);
- void oce_list_remove_node(OCE_LIST_T  *list_hdr, OCE_LIST_NODE_T *list_node);
- boolean_t oce_list_is_empty(OCE_LIST_T *list_hdr);
- int32_t oce_list_items_avail(OCE_LIST_T *list_hdr);
  int oce_atomic_reserve(uint32_t *count_p, uint32_t n);
  
- #define OCE_LIST_CREATE(_LH, _LCK_PRI)  oce_list_create((_LH), (_LCK_PRI))
- #define OCE_LIST_DESTROY(_LH)           oce_list_destroy((_LH))
- #define OCE_LIST_INSERT_TAIL(_LH, _N)                           \
-                         oce_list_insert_tail((_LH), (void *)(_N))
- #define OCE_LIST_REM_HEAD(_LH)          oce_list_remove_head((_LH))
- #define OCE_LIST_EMPTY(_LH)             oce_list_is_empty((_LH))
- #define OCE_LIST_REMOVE(_LH, _N)                                \
-                         oce_list_remove_node((_LH), (void *)(_N))
- #define OCE_LIST_SIZE(_LH)              oce_list_items_avail((_LH))
- #define OCE_LIST_LINK_INIT(_N)          oce_list_link_init(_N)
- 
  void oce_gen_hkey(char *hkey, int key_size);
  
  #ifdef __cplusplus
  }
  #endif
  
--- 101,117 ----
  #define DW_SWAP(_PTR, _LEN) OCE_DW_SWAP(_PTR, _LEN)
  #else
  #define DW_SWAP(_PTR, _LEN)
  #endif
  
  /* externs for  list manipulation functions */
  
  int oce_atomic_reserve(uint32_t *count_p, uint32_t n);
  
  void oce_gen_hkey(char *hkey, int key_size);
+ void oce_insert_vtag(mblk_t *mp, uint16_t vlan_tag);
+ void oce_remove_vtag(mblk_t *mp);
  
  #ifdef __cplusplus
  }
  #endif