145d3dd98SRobert Mustacchi.\"
245d3dd98SRobert Mustacchi.\" This file and its contents are supplied under the terms of the
345d3dd98SRobert Mustacchi.\" Common Development and Distribution License ("CDDL"), version 1.0.
445d3dd98SRobert Mustacchi.\" You may only use this file in accordance with the terms of version
545d3dd98SRobert Mustacchi.\" 1.0 of the CDDL.
645d3dd98SRobert Mustacchi.\"
745d3dd98SRobert Mustacchi.\" A full copy of the text of the CDDL should have accompanied this
845d3dd98SRobert Mustacchi.\" source.  A copy of the CDDL is also available via the Internet at
945d3dd98SRobert Mustacchi.\" http://www.illumos.org/license/CDDL.
1045d3dd98SRobert Mustacchi.\"
1145d3dd98SRobert Mustacchi.\"
1245d3dd98SRobert Mustacchi.\" Copyright (c) 2017, Joyent, Inc.
1345d3dd98SRobert Mustacchi.\"
14*c5bab702SPeter Tribble.Dd Nov 26, 2017
1545d3dd98SRobert Mustacchi.Dt MAC_TRANSCEIVER_INFO 9F
1645d3dd98SRobert Mustacchi.Os
1745d3dd98SRobert Mustacchi.Sh NAME
1845d3dd98SRobert Mustacchi.Nm mac_transceiver_info ,
1945d3dd98SRobert Mustacchi.Nm mac_transceiver_info_set_present ,
2045d3dd98SRobert Mustacchi.Nm mac_transceiver_info_set_usable
2145d3dd98SRobert Mustacchi.Nd set MAC transceiver property information
2245d3dd98SRobert Mustacchi.Sh SYNOPSIS
2345d3dd98SRobert Mustacchi.In sys/mac_provider.h
2445d3dd98SRobert Mustacchi.Ft void
2545d3dd98SRobert Mustacchi.Fo mac_transceiver_info_set_present
2645d3dd98SRobert Mustacchi.Fa "mac_transceiver_info_t *infop"
2745d3dd98SRobert Mustacchi.Fa "boolean_t present"
2845d3dd98SRobert Mustacchi.Fc
2945d3dd98SRobert Mustacchi.Ft void
3045d3dd98SRobert Mustacchi.Fo mac_transceiver_info_set_usable
3145d3dd98SRobert Mustacchi.Fa "mac_transceiver_info_t *infop"
3245d3dd98SRobert Mustacchi.Fa "boolean_t usable"
3345d3dd98SRobert Mustacchi.Fc
3445d3dd98SRobert Mustacchi.Sh INTERFACE LEVEL
3545d3dd98SRobert Mustacchi.Sy Volatile -
3645d3dd98SRobert MustacchiThis interface is still evolving in illumos.
3745d3dd98SRobert MustacchiAPI and ABI stability is
3845d3dd98SRobert Mustacchinot guaranteed.
3945d3dd98SRobert Mustacchi.Sh PARAMETERS
4045d3dd98SRobert Mustacchi.Bl -tag -width Fa
4145d3dd98SRobert Mustacchi.It Fa infop
4245d3dd98SRobert MustacchiA pointer to an opaque structure obtained as an argument to the
4345d3dd98SRobert Mustacchi.Xr mct_info 9E
4445d3dd98SRobert Mustacchientry point.
4545d3dd98SRobert Mustacchi.It Fa present
4645d3dd98SRobert MustacchiA boolean that indicates whether the transceiver is present.
4745d3dd98SRobert Mustacchi.It Fa usable
4845d3dd98SRobert MustacchiA boolean that indicates whether the transceiver is usable.
4945d3dd98SRobert Mustacchi.El
5045d3dd98SRobert Mustacchi.Sh DESCRIPTION
5145d3dd98SRobert MustacchiThe
5245d3dd98SRobert Mustacchi.Fn mac_transceiver_set_present
5345d3dd98SRobert Mustacchiand
5445d3dd98SRobert Mustacchi.Fn mac_transceiver_set_usable
5545d3dd98SRobert Mustacchifunctions are used to set information about a transceiver as part of the
5645d3dd98SRobert Mustacchi.Xr mct_info 9E
5745d3dd98SRobert Mustacchientry point to obtain information about a MAC transceiver.
5845d3dd98SRobert MustacchiFor more information and background, see the
5945d3dd98SRobert Mustacchi.Sy Transceiver Information Functions
6045d3dd98SRobert Mustacchisection of
6145d3dd98SRobert Mustacchi.Xr mac_capab_transceiver 9E .
6245d3dd98SRobert Mustacchi.Pp
6345d3dd98SRobert MustacchiThe
6445d3dd98SRobert Mustacchi.Fn mct_transceiver_set_present
6545d3dd98SRobert Mustacchifunction sets whether or not the transceiver is present and plugged into
6645d3dd98SRobert Mustacchithe system.
6745d3dd98SRobert MustacchiIf the transceiver is not plugged in, then the function
6845d3dd98SRobert Mustacchishould be called with
6945d3dd98SRobert Mustacchi.Fa present set to
7045d3dd98SRobert Mustacchi.Dv B_FALSE ,
71*c5bab702SPeter Tribbleotherwise it should use
7245d3dd98SRobert Mustacchi.Dv B_TRUE .
7345d3dd98SRobert Mustacchi.Pp
7445d3dd98SRobert MustacchiThe
7545d3dd98SRobert Mustacchi.Fn mct_transceiver_set_usable
7645d3dd98SRobert Mustacchifunction determines whether or not the device can use the transceiver.
7745d3dd98SRobert MustacchiIf the device cannot use the transceiver, then it should call the
7845d3dd98SRobert Mustacchifunction with
7945d3dd98SRobert Mustacchi.Fa usable
8045d3dd98SRobert Mustacchiset to
8145d3dd98SRobert Mustacchi.Dv B_FALSE .
8245d3dd98SRobert MustacchiOtherwise, it should use
8345d3dd98SRobert Mustacchi.Dv B_TRUE .
8445d3dd98SRobert MustacchiIf the transceiver is not present, then this function should not be
8545d3dd98SRobert Mustacchicalled.
8645d3dd98SRobert Mustacchi.Sh CONTEXT
8745d3dd98SRobert MustacchiThese functions should be called in response to handling the
8845d3dd98SRobert Mustacchi.Fn mct_info 9E
8945d3dd98SRobert Mustacchientry point for transceivers in
9045d3dd98SRobert Mustacchi.Sy kernel
9145d3dd98SRobert Mustacchicontext.
9245d3dd98SRobert Mustacchi.Sh SEE ALSO
9345d3dd98SRobert Mustacchi.Xr mac 9E ,
9445d3dd98SRobert Mustacchi.Xr mac_capab_transceiver 9E ,
9545d3dd98SRobert Mustacchi.Xr mct_info 9E
96