summaryrefslogtreecommitdiffstats
path: root/sys/dev/sfxge/common/ef10_phy.c
diff options
context:
space:
mode:
authorarybchik <arybchik@FreeBSD.org>2017-01-02 09:27:28 +0000
committerarybchik <arybchik@FreeBSD.org>2017-01-02 09:27:28 +0000
commit930d721d9f0bc6dedf689d993811d02cb13c7f99 (patch)
treeaf420b21d3e51116656934a25e8c4428074fcc41 /sys/dev/sfxge/common/ef10_phy.c
parent5652c10ccb9bd8c5471b0d061bef69219497702f (diff)
downloadFreeBSD-src-930d721d9f0bc6dedf689d993811d02cb13c7f99.zip
FreeBSD-src-930d721d9f0bc6dedf689d993811d02cb13c7f99.tar.gz
MFC r310719
sfxge(4): cleanup: remove last use of deprecated function flags with privilege check The function flags were changed to mirror the privileges, but the privileges are preferred. Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
Diffstat (limited to 'sys/dev/sfxge/common/ef10_phy.c')
-rw-r--r--sys/dev/sfxge/common/ef10_phy.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/sys/dev/sfxge/common/ef10_phy.c b/sys/dev/sfxge/common/ef10_phy.c
index c1cb250..2d4e578 100644
--- a/sys/dev/sfxge/common/ef10_phy.c
+++ b/sys/dev/sfxge/common/ef10_phy.c
@@ -278,7 +278,6 @@ fail1:
ef10_phy_reconfigure(
__in efx_nic_t *enp)
{
- efx_nic_cfg_t *encp = &(enp->en_nic_cfg);
efx_port_t *epp = &(enp->en_port);
efx_mcdi_req_t req;
uint8_t payload[MAX(MC_CMD_SET_LINK_IN_LEN,
@@ -286,9 +285,12 @@ ef10_phy_reconfigure(
uint32_t cap_mask;
unsigned int led_mode;
unsigned int speed;
+ boolean_t supported;
efx_rc_t rc;
- if (~encp->enc_func_flags & EFX_NIC_FUNC_LINKCTRL)
+ if ((rc = efx_mcdi_link_control_supported(enp, &supported)) != 0)
+ goto fail1;
+ if (supported == B_FALSE)
goto out;
(void) memset(payload, 0, sizeof (payload));
@@ -349,7 +351,7 @@ ef10_phy_reconfigure(
if (req.emr_rc != 0) {
rc = req.emr_rc;
- goto fail1;
+ goto fail2;
}
/* And set the blink mode */
@@ -385,11 +387,13 @@ ef10_phy_reconfigure(
if (req.emr_rc != 0) {
rc = req.emr_rc;
- goto fail2;
+ goto fail3;
}
out:
return (0);
+fail3:
+ EFSYS_PROBE(fail3);
fail2:
EFSYS_PROBE(fail2);
fail1:
OpenPOWER on IntegriCloud