152d2369aSRobert Mustacchi.\" 252d2369aSRobert Mustacchi.\" This file and its contents are supplied under the terms of the 352d2369aSRobert Mustacchi.\" Common Development and Distribution License ("CDDL"), version 1.0. 452d2369aSRobert Mustacchi.\" You may only use this file in accordance with the terms of version 552d2369aSRobert Mustacchi.\" 1.0 of the CDDL. 652d2369aSRobert Mustacchi.\" 752d2369aSRobert Mustacchi.\" A full copy of the text of the CDDL should have accompanied this 852d2369aSRobert Mustacchi.\" source. A copy of the CDDL is also available via the Internet at 952d2369aSRobert Mustacchi.\" http://www.illumos.org/license/CDDL. 1052d2369aSRobert Mustacchi.\" 1152d2369aSRobert Mustacchi.\" 1252d2369aSRobert Mustacchi.\" Copyright 2016 Joyent, Inc. 1352d2369aSRobert Mustacchi.\" 1452d2369aSRobert Mustacchi.Dd May 31, 2016 1552d2369aSRobert Mustacchi.Dt MAC_LINK_UPDATE 9F 1652d2369aSRobert Mustacchi.Os 1752d2369aSRobert Mustacchi.Sh NAME 1852d2369aSRobert Mustacchi.Nm mac_link_update 1952d2369aSRobert Mustacchi.Nd inform the MAC layer about a link state change 2052d2369aSRobert Mustacchi.Sh SYNOPSIS 2152d2369aSRobert Mustacchi.In sys/mac_provider.h 2252d2369aSRobert Mustacchi.Ft void 2352d2369aSRobert Mustacchi.Fo mac_link_update 2452d2369aSRobert Mustacchi.Fa "mac_handle_t mh" 2552d2369aSRobert Mustacchi.Fa "link_state_t link" 2652d2369aSRobert Mustacchi.Fc 2752d2369aSRobert Mustacchi.Sh INTERFACE LEVEL 2852d2369aSRobert Mustacchiillumos DDI specific 2952d2369aSRobert Mustacchi.Sh PARAMETERS 3052d2369aSRobert Mustacchi.Bl -tag -width Fa 3152d2369aSRobert Mustacchi.It Fa mh 3252d2369aSRobert MustacchiThe MAC handle obtained from a call to 3352d2369aSRobert Mustacchi.Xr mac_register 9F . 3452d2369aSRobert Mustacchi.It Fa link 35*72d3dbb9SYuri PankovThe current state of the link. 36*72d3dbb9SYuri PankovFor valid link states see the discussion of 3752d2369aSRobert Mustacchi.Sy MAC_PROP_STATUS 3852d2369aSRobert Mustacchiin the 3952d2369aSRobert Mustacchi.Sx PROPERTIES 4052d2369aSRobert Mustacchisection of 4152d2369aSRobert Mustacchi.Xr mac 9E . 4252d2369aSRobert Mustacchi.El 4352d2369aSRobert Mustacchi.Sh DESCRIPTION 4452d2369aSRobert MustacchiThe 4552d2369aSRobert Mustacchi.Fn mac_link_update 4652d2369aSRobert Mustacchifunction is used by device drivers to inform the MAC layer that the 47*72d3dbb9SYuri Pankovstate of a link has changed. 48*72d3dbb9SYuri PankovAs discussed in the 4952d2369aSRobert Mustacchi.Sx Link Updates 5052d2369aSRobert Mustacchisection of 5152d2369aSRobert Mustacchi.Xr mac 9E , 5252d2369aSRobert Mustacchithe driver should call this whenever it detects that the state of the 53*72d3dbb9SYuri Pankovlink has changed. 54*72d3dbb9SYuri PankovIf the state has not changed, then the driver should not call this function. 55*72d3dbb9SYuri PankovIn addition, if the device driver is powering off the link or is transitioning 56*72d3dbb9SYuri Pankovto a state where it can no longer determine the link status, then it should make 57*72d3dbb9SYuri Pankovsure to call this function with the value of 5852d2369aSRobert Mustacchi.Fa link 5952d2369aSRobert Mustacchiset to 6052d2369aSRobert Mustacchi.Sy LINK_STATE_UNKNOWN . 6152d2369aSRobert Mustacchi.Pp 6252d2369aSRobert MustacchiDevice drivers should ensure that they're not holding any of their 6352d2369aSRobert Mustacchispecific locks when calling this function. 6452d2369aSRobert Mustacchi.Sh CONTEXT 6552d2369aSRobert MustacchiThe 6652d2369aSRobert Mustacchi.Fn mac_link_update 6752d2369aSRobert Mustacchifunction may be called from 6852d2369aSRobert Mustacchi.Sy user , 6952d2369aSRobert Mustacchi.Sy kernel , 7052d2369aSRobert Mustacchior 7152d2369aSRobert Mustacchi.Sy interrupt 7252d2369aSRobert Mustacchicontext. 7352d2369aSRobert Mustacchi.Sh SEE ALSO 7452d2369aSRobert Mustacchi.Xr mac 9E , 7552d2369aSRobert Mustacchi.Xr mac_register 9F 76