diff options
| author | Robert Mustacchi <rm@joyent.com> | 2017-03-17 18:49:59 +0000 |
|---|---|---|
| committer | Robert Mustacchi <rm@joyent.com> | 2017-04-07 21:55:04 +0000 |
| commit | 37cc369ac2aaaf84e83ed78aa13cb2a3d20e3fe8 (patch) | |
| tree | ddce8038d3c9cc0e54abecd8bf26caec063ff5f9 /usr/src/uts/common/sys/mac_impl.h | |
| parent | 4dc16d22d09463c940a8c3315c7a1f9bf74eba88 (diff) | |
| download | illumos-joyent-37cc369ac2aaaf84e83ed78aa13cb2a3d20e3fe8.tar.gz | |
OS-6022 want basic transceiver visibility
OS-6023 ixgbe MAC_CAPAB_TRANSCEIVER support
OS-6024 i40e MAC_CAPAB_TRANSCEIVER support
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: Ryan Zezeski <ryan.zeseski@joyent.com>
Approved by: Patrick Mooney <patrick.mooney@joyent.com>
Diffstat (limited to 'usr/src/uts/common/sys/mac_impl.h')
| -rw-r--r-- | usr/src/uts/common/sys/mac_impl.h | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/usr/src/uts/common/sys/mac_impl.h b/usr/src/uts/common/sys/mac_impl.h index 46293b1a74..1bbaf9810b 100644 --- a/usr/src/uts/common/sys/mac_impl.h +++ b/usr/src/uts/common/sys/mac_impl.h @@ -20,7 +20,7 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright 2015, Joyent, Inc. + * Copyright (c) 2017, Joyent, Inc. */ #ifndef _SYS_MAC_IMPL_H @@ -476,6 +476,11 @@ struct mac_impl_s { mac_ring_handle_t mi_default_tx_ring; /* + * Transceiver capabilities. SL protected. + */ + mac_capab_transceiver_t mi_transceiver; + + /* * MAC address list. SL protected. */ mac_address_t *mi_addresses; @@ -911,6 +916,19 @@ extern mac_bridge_rx_t mac_bridge_rx_cb; extern mac_bridge_ref_t mac_bridge_ref_cb; extern mac_bridge_ls_t mac_bridge_ls_cb; +/* + * MAC Transceiver related functions + */ +struct mac_transceiver_info { + boolean_t mti_present; + boolean_t mti_usable; +}; + +extern void mac_transceiver_init(mac_impl_t *); +extern int mac_transceiver_count(mac_handle_t, uint_t *); +extern int mac_transceiver_info(mac_handle_t, uint_t, boolean_t *, boolean_t *); +extern int mac_transceiver_read(mac_handle_t, uint_t, uint_t, void *, size_t, + off_t, size_t *); #ifdef __cplusplus } |
