Forgot to set IFM_ETHER in all drivers; "ethernet" now also sets it just in case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20561 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
b7c0eba571
commit
0cac8bd145
@ -259,7 +259,7 @@ b44_ioctl(void *cookie,uint32 op,void *data,size_t len)
|
||||
{
|
||||
ether_link_state_t state;
|
||||
state.media = (pUmDevice->lm_dev.LinkStatus
|
||||
== LM_STATUS_LINK_DOWN) ? IFM_ACTIVE : 0;
|
||||
== LM_STATUS_LINK_DOWN ? IFM_ACTIVE : 0) | IFM_ETHER;
|
||||
switch (pUmDevice->lm_dev.LineSpeed) {
|
||||
case LM_LINE_SPEED_10MBPS:
|
||||
state.media |= IFM_10_T;
|
||||
|
@ -495,7 +495,7 @@ b57_ioctl(void *cookie,uint32 op,void *data,size_t len)
|
||||
{
|
||||
ether_link_state_t state;
|
||||
state.media = (pUmDevice->lm_dev.LinkStatus
|
||||
== LM_STATUS_LINK_DOWN) ? IFM_ACTIVE : 0;
|
||||
== LM_STATUS_LINK_DOWN ? IFM_ACTIVE : 0) | IFM_ETHER;
|
||||
switch (pUmDevice->lm_dev.LineSpeed) {
|
||||
case LM_LINE_SPEED_10MBPS:
|
||||
state.media |= IFM_10_T;
|
||||
|
@ -390,7 +390,7 @@ device_ioctl(void *data, uint32 msg, void *buffer, size_t bufferLength)
|
||||
case ETHER_GET_LINK_STATE:
|
||||
{
|
||||
ether_link_state_t state;
|
||||
state.media = (info->link ? IFM_ACTIVE : 0)
|
||||
state.media = (info->link ? IFM_ACTIVE : 0) | IFM_ETHER
|
||||
| (info->full_duplex ? IFM_FULL_DUPLEX : IFM_HALF_DUPLEX)
|
||||
| (info->speed == LINK_SPEED_100_MBIT ? IFM_100_TX : IFM_10_T);
|
||||
state.speed = info->speed == LINK_SPEED_100_MBIT
|
||||
|
@ -57,6 +57,9 @@ update_link_state(ethernet_device *device, bool notify = true)
|
||||
return EOPNOTSUPP;
|
||||
}
|
||||
|
||||
state.media |= IFM_ETHER;
|
||||
// make sure the media type is returned correctly
|
||||
|
||||
if (device->media != state.media
|
||||
|| device->link_quality != state.quality
|
||||
|| device->link_speed != state.speed) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user