summaryrefslogtreecommitdiff
path: root/Kernel/Net/RTL8139NetworkAdapter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Kernel/Net/RTL8139NetworkAdapter.cpp')
-rw-r--r--Kernel/Net/RTL8139NetworkAdapter.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/Kernel/Net/RTL8139NetworkAdapter.cpp b/Kernel/Net/RTL8139NetworkAdapter.cpp
index 6348651333..be85fdf511 100644
--- a/Kernel/Net/RTL8139NetworkAdapter.cpp
+++ b/Kernel/Net/RTL8139NetworkAdapter.cpp
@@ -260,6 +260,9 @@ void RTL8139NetworkAdapter::reset()
// choose irqs, then clear any pending
out16(REG_IMR, INT_RXOK | INT_RXERR | INT_TXOK | INT_TXERR | INT_RX_BUFFER_OVERFLOW | INT_LINK_CHANGE | INT_RX_FIFO_OVERFLOW | INT_LENGTH_CHANGE | INT_SYSTEM_ERROR);
out16(REG_ISR, 0xffff);
+
+ // Set the initial link up status.
+ m_link_up = (in8(REG_MSR) & MSR_LINKB) == 0;
}
UNMAP_AFTER_INIT void RTL8139NetworkAdapter::read_mac_address()