Commit Graph

30490 Commits

Author SHA1 Message Date
roy
3643d6b4fe Move the detaching and making tentative addresses out if in6_if_up
and into in6_if_link_up.

This fixes a possible panic where link is up but not the interface.
Note that a better solution would be to listen to the routing socket
in the kernel, but I don't know how to do that.

Reachable Router tests for IFF_UP as well.
2013-06-20 13:56:29 +00:00
msaitoh
6e84bd64a6 Use ihphy(4) for I21[78]. 2013-06-19 15:30:25 +00:00
msaitoh
9d67fb768e Fix a bug that wrong semaphore is used in wm_gmii_hv_{read,write}reg. 2013-06-19 10:53:24 +00:00
msaitoh
fce172c5e6 Add ECC support for the packet buffer. Only 82571 and I21[78] support ECC. 2013-06-19 10:38:51 +00:00
msaitoh
f96c92e089 Fix some bugs on I21[78] to make those devices stable. 2013-06-19 10:27:08 +00:00
msaitoh
d13f03981b The bit location of link ability is different between 1000Base-X and others
(See annex 28B.2 and 28D). The old mii.h defined ANAR_X_PAUSE_* macros. Those
macros were named for 1000Base-X, but the bit definitions were not for
1000Base-X but for others (e.g. 1000BaseT). So there was bug in auto
negotiation for 1000Base-X, but there was no bug for other media. Define new
macro named ANAR_PAUSE_* and ANLPAR_PAUSE_* for other than 1000Base-X and fix
the bit definitions of ANAR_X_PAUSE_* and ANLPPAR_X_*. Change some PHY drivers
to use true macro. Same as other *BSDs.
2013-06-16 06:29:08 +00:00
christos
da0e2b2a1d reflect the correct OpenBSD versions we are synced with. 2013-06-15 13:05:35 +00:00
msaitoh
a9509b01aa KNF. 2013-06-14 06:21:51 +00:00
matt
45a83cb747 Regen. 2013-06-13 06:11:54 +00:00
matt
aafc9be326 Add ATI RADEON_HD7340 2013-06-13 06:11:34 +00:00
tls
5819ac2839 Convert the entropy pool framework from pseudo-callout-driven to
soft interrupt driven operation.

Add a polling mode of operation -- now we can ask hardware random number
generators to top us up just when we need it (bcm2835_rng and amdpm
converted as examples).

Fix a stall noticed with repeated reads from /dev/random while testing.
2013-06-13 00:55:01 +00:00
msaitoh
12cc82ab9c regen. 2013-06-12 02:51:43 +00:00
msaitoh
c8cc9541b4 Add some IC Plus Corp. devices. 2013-06-12 02:51:16 +00:00
msaitoh
0fe9644d9c In interrupt function, use mii_pollstat() instead of mii_tick() to update
PHY status.
2013-06-11 16:57:05 +00:00
msaitoh
d32ea5d5f2 Remove an extra mii_pollstat() call. The PHY status should be updated
by adjacent mii_tick() call. I suspect that this mii_pollstat() call was
added to do workaround for broken MII_TICK code. A lot of MII PHY drivers
had bugs in MII_TICK and those bugs were fixed.
2013-06-11 16:37:10 +00:00
msaitoh
7a4b6fed3e Remove wrong autonegotiation check. The mii_phy_tick() checks about
autonegotiation correctly. This change fixes the problem that the
autonegotiation timer doesn't work correctly with
"ifcongig xxx media 1000BaseT"
2013-06-11 16:18:48 +00:00
msaitoh
0ee358d311 Disable LPLU when the device is WM_T_PCH_LPT series (I21[78]).
This change fixes a bug that wm interface don't negotiate to 1000BaseT.
2013-06-11 14:39:35 +00:00
msaitoh
80fcdd922d The wm_linkintr_gmii() function is called from interrupt, so call
mii_pollstat() instead of mii_tick().
2013-06-11 10:07:09 +00:00
msaitoh
b4ac1458bf Remove duplicated code. The code to check IFF_UP and autonegotiation
is in mii_phy_tick(), too.
2013-06-11 07:22:08 +00:00
msaitoh
6b35712a03 Update link status quickly. This change is a part of mii_physubr.c rev.
1.77-1.78.
2013-06-11 07:22:07 +00:00
kardel
d1abea10e2 adjust soekrisgpio driver to NetBSD 2013-06-10 07:14:01 +00:00
kardel
630a4e285d Import of proposed patch to OpenBSD for supporting GPIO and status
leds on a Soekris net6501

patch posted on 2013-01-14 17:11:00 at
http://permalink.gmane.org/gmane.os.openbsd.tech/31317
2013-06-10 06:04:35 +00:00
christos
a6933efe77 Never return ENXIO in ioctl anymore. We don't have a fixed number of vnd's
configured.
2013-06-09 13:26:25 +00:00
msaitoh
d060f6e507 Fix a bug in last commit that mii_ticks isn't inclemented. 2013-06-09 09:56:17 +00:00
njoly
5244c50dc0 Add missing parenthesis. 2013-06-09 09:44:51 +00:00
msaitoh
307e621cc0 Update link status quickly. This change is a part of FreeBSD's mii_physubr.c
r158649.
2013-06-09 09:31:32 +00:00
msaitoh
23515adb99 Tabify. No functional change. 2013-06-09 09:24:29 +00:00
msaitoh
d2c936ef4d Don't "return" but "break" in MII_TICK when the interface isn't doing
autonegotiaton or the link is up to update the status.
2013-06-09 09:15:51 +00:00
msaitoh
5102301e34 ciphy is gigabit PHY, so use MII_ANEGTICKS_GIGE instead of MII_ANEGTICKS. 2013-06-09 08:45:32 +00:00
msaitoh
a2fa750028 atphy, ciphy, ihphy and rgephy are gigabit PHY, so not only check IFM_AUTO
for autonegotiation but also check IFM_1000_T, too.
2013-06-09 08:42:16 +00:00
msaitoh
5cbe9dd2fb Fix a bug that the auto negotiation timer isn't cleard as we expected.
To not to forget clearing the timer and to reduce the code duplication,
clear mii_ticks in *mii_phy_auto().
2013-06-06 03:10:48 +00:00
msaitoh
9de0c89abb regen. 2013-06-05 05:19:11 +00:00
msaitoh
016555b5da Add some Intel devices from the following datasheets:
- Desktop 4th Generation Intel Core Processor Family Datasheet Volume 2 of 2
 - Mobile 4th Generation Intel Core Processor Family Datasheet Volume 2 of 2
 - Intel Xeon Processor E3-1200 v3 Product Family  Datasheet Volume 2 of 2
2013-06-05 05:18:44 +00:00
msaitoh
ccd17a16c3 Fix a bug that the check of reset complete fails on Intel 8 series with
"wm_lan_init_done: lan_init_done failed to complete" message.
The broken code was used for ICH8, 9... and PCH2 but I've never seen the
problem.
2013-06-04 16:55:07 +00:00
msaitoh
0ca069e8bb regen 2013-06-04 13:58:12 +00:00
msaitoh
8a3f000cf5 Add some Intel devices from document (Intel 8 Series / C220 Chipset
Family Platform Controller Hub (PCH) Datasheet)
2013-06-04 13:57:48 +00:00
christos
2fa09f799a widen the operation on the RHS as suggested in the PR. 2013-06-03 21:01:18 +00:00
msaitoh
997d64307d Use wm_gmii_hv_{read,write}reg() for I21[78]. 2013-06-03 18:47:52 +00:00
christos
417a118725 PR/47879: Takahiro HAYASHI: vnd cannot handle disk image larger than 2TiB
change size_t to uint64_t where needed.
2013-06-03 16:42:32 +00:00
msaitoh
c97206f9de Add Intel 8 Series KT. 2013-06-03 16:21:50 +00:00
msaitoh
c8bf6857f2 Regen. 2013-06-03 16:21:17 +00:00
msaitoh
e8b452b14e Add Intel 8 Series KT. 2013-06-03 16:20:53 +00:00
msaitoh
caa514cdf8 Cleanup. No functional change. 2013-06-03 01:31:37 +00:00
msaitoh
ee6c864922 - Fix a bug that wm_attach() may fail on some PCH2 or newer system.
wm_valid_nvm_bank_detect_ich8lan() misunderstood the NVM's bank number.
  Fixes PR#47878
- Remove a quick hack for NVM checksum that I added in last commit (rev. 1.249)
2013-06-02 17:23:33 +00:00
mlelstv
e4c6cefc70 The hardware only supports xon/xoff processing for both directions together,
enable it only if both directions are requested.
2013-06-02 12:45:00 +00:00
msaitoh
d403328cb4 Add I217 (and I218) support.
- The name of I217 is similar to I210, but the function is rather similar to
  PCH2.
- Not tested well. Tested with my own Intel DQ87PG which has I217LM onboard.
- It seems that PCH2 and PCH_LPT specific function for RAL should be written.
- Quick hack for the NVM checksum mismatch. if_wm.c currently has no
  wm_write_eeprom(), so it cannot update NVM's "updated bit". To avoid this
  problem, check only the last 12bits of the checksum. My own DQ87PG's
  updated bit is not set, and I could avoid the problem using with this
  hack.
2013-06-02 09:36:22 +00:00
msaitoh
aad6e39e2f regen 2013-06-02 09:13:27 +00:00
msaitoh
b20e6dbf2e Intel I217 PHY 2013-06-02 09:13:07 +00:00
msaitoh
72571d1b0a - Revert rev. 1.250. I really misunderstood. Add some comments.
- Set DMA watermark depend on the PCI max payload size.
2013-05-31 17:48:12 +00:00
msaitoh
66c65a0d58 Remove unused macros. 2013-05-31 17:15:19 +00:00