summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorYaroslav Tykhiy <ytykhiy@gmail.com>2004-05-23 21:05:08 +0000
committerYaroslav Tykhiy <ytykhiy@gmail.com>2004-05-23 21:05:08 +0000
commit25fbb2c38c0647f38d3227b80cdd85e4251d7410 (patch)
tree375592891cd6bfe9116c605a163f03aadcba537f /sys/dev
parenta5820ecb77182475ae2e27f72a981d53fc739a99 (diff)
Notes
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/dc/if_dc.c3
-rw-r--r--sys/dev/fxp/if_fxp.c3
-rw-r--r--sys/dev/nge/if_nge.c3
-rw-r--r--sys/dev/re/if_re.c4
4 files changed, 9 insertions, 4 deletions
diff --git a/sys/dev/dc/if_dc.c b/sys/dev/dc/if_dc.c
index 01ac05a0e249..0130b9d7e4d0 100644
--- a/sys/dev/dc/if_dc.c
+++ b/sys/dev/dc/if_dc.c
@@ -3708,7 +3708,8 @@ dc_ioctl(struct ifnet *ifp, u_long command, caddr_t data)
#endif
break;
case SIOCSIFCAP:
- ifp->if_capenable = ifr->ifr_reqcap;
+ ifp->if_capenable &= ~IFCAP_POLLING;
+ ifp->if_capenable |= ifr->ifr_reqcap & IFCAP_POLLING;
break;
default:
error = ether_ioctl(ifp, command, data);
diff --git a/sys/dev/fxp/if_fxp.c b/sys/dev/fxp/if_fxp.c
index 8a493291e2eb..d130c1dbaf5c 100644
--- a/sys/dev/fxp/if_fxp.c
+++ b/sys/dev/fxp/if_fxp.c
@@ -2496,7 +2496,8 @@ fxp_ioctl(struct ifnet *ifp, u_long command, caddr_t data)
break;
case SIOCSIFCAP:
- ifp->if_capenable = ifr->ifr_reqcap;
+ ifp->if_capenable &= ~IFCAP_POLLING;
+ ifp->if_capenable |= ifr->ifr_reqcap & IFCAP_POLLING;
break;
default:
diff --git a/sys/dev/nge/if_nge.c b/sys/dev/nge/if_nge.c
index 82b654d334d9..0aa8b851ce95 100644
--- a/sys/dev/nge/if_nge.c
+++ b/sys/dev/nge/if_nge.c
@@ -2167,7 +2167,8 @@ nge_ioctl(ifp, command, data)
}
break;
case SIOCSIFCAP:
- ifp->if_capenable = ifr->ifr_reqcap;
+ ifp->if_capenable &= ~IFCAP_POLLING;
+ ifp->if_capenable |= ifr->ifr_reqcap & IFCAP_POLLING;
break;
default:
error = ether_ioctl(ifp, command, data);
diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c
index 440a5bed38ac..c28728f144be 100644
--- a/sys/dev/re/if_re.c
+++ b/sys/dev/re/if_re.c
@@ -2315,7 +2315,9 @@ re_ioctl(ifp, command, data)
error = ifmedia_ioctl(ifp, ifr, &mii->mii_media, command);
break;
case SIOCSIFCAP:
- ifp->if_capenable = ifr->ifr_reqcap;
+ ifp->if_capenable &= ~(IFCAP_HWCSUM | IFCAP_POLLING);
+ ifp->if_capenable |=
+ ifr->ifr_reqcap & (IFCAP_HWCSUM | IFCAP_POLLING);
if (ifp->if_capenable & IFCAP_TXCSUM)
ifp->if_hwassist = RE_CSUM_FEATURES;
else