Commit Graph

342 Commits

Author SHA1 Message Date
wiz c5670263e0 Fix some typos. From Tom Cosgrove via jmc@openbsd. 2003-11-02 11:07:44 +00:00
briggs 1d2bfa591d Implement a separate nsphy_reset(). There are two reasons for this:
1) This PHY can take an inordinate amount of time to reset if
	   media is attached.  Under fairly normal circumstances, up
	   to near one second.  This is because it appears to go through
	   an implicit autonegotiation cycle as part of the reset.

	2) During reset and autonegotiation, the BMCR will clear the reset
	   bit before the process is complete.  It will return 0 until the
	   process is complete and it's safe to access the PHY again.

This gets the on-board pcnet + nsphy ethernet working properly for me on
an IBM PC Server/325.  Fixes PR/16346.
2003-11-02 01:42:28 +00:00
fvdl 44954feab8 Add a driver for the Intel IGPE1000 PHY as found on 82541 and 82547 chips.
Not yet enabled anywhere.
2003-10-28 00:15:40 +00:00
fvdl 4784db999a Regen after clarifying IGPE1000 name. 2003-10-26 22:25:53 +00:00
fvdl 4589fc061f Make the name of the IGPE1000 a bit clearer. 2003-10-26 22:24:58 +00:00
fvdl 7ec692e7d5 Regen after adding IGP01E1000. 2003-10-26 21:35:13 +00:00
fvdl 065b2aa956 Add Intel IGP01E1000 phy. 2003-10-26 21:34:44 +00:00
tron 9340e9d695 Fix build problem caused by integration of new I2C framework. 2003-09-30 09:35:15 +00:00
briggs 7f9445d14a It is best to allow a little time for the reset to settle in before
we start polling the BMCR again.  Greg Woods noted on tech-net@
that the DP83840A manual states that there should be a 500us delay
between asserting software reset and attempting MII serial operations.

I've also noted that a DP83815 can get into a bad state on cable
removal and reinsertion if we do not delay here.

This may well address PR/16346, and I seem to recall occasional
reports of auto-negotiation and flaky kinds of errors that this
might also alleviate.
2003-09-10 05:25:22 +00:00
tsutsui 4189ddf652 Remove advertising clauses from code written by Shingo WATANABE.
He has kindly consented it.
2003-09-04 15:17:38 +00:00
hannken b32066575d Regen. 2003-07-17 12:40:56 +00:00
hannken 7b247f3812 Add support for the BCM5705:
- Only BCM5705M asic rev A1 was tested.

Thanks to Bill Paul (wpaul@freebsd.org) for help and support.

Approved by: Frank van der Linden <fvdl@netbsd.org>
2003-07-17 11:44:26 +00:00
msaitoh 74b3acef2e - last commit (rev. 1.36) add a entry to keep model number of the PHY in
mii_softc. There are some situations to want to check model number.
- add comment
2003-07-01 22:58:48 +00:00
msaitoh d8a4a08a24 - last commit (rev. 1.32) fixes icsphy_reset()'s problem. ICSphys don't
restart auto negotiation, so it kick.
- add comment in icsphy_reset()
2003-07-01 22:51:13 +00:00
msaitoh 5af1b6934b Add ICS1889 and 1892 2003-07-01 22:46:08 +00:00
martin b464a5b71f Only read media status bits when they are valid.
From Makoto Fujiwara in PR kern/21810.
2003-06-06 23:22:56 +00:00
scw 37a9b25563 Match Broadcom's BCM5214 Quad 10/100 media interface. 2003-05-02 19:42:35 +00:00
scw 4c6f8bfaa7 Regen 2003-05-02 19:39:47 +00:00
scw 5f24295efa Add entry for Broadcom's BCM5214 Quad 10/100 media interface. 2003-05-02 19:39:29 +00:00
thorpej c31f87a5cb Use aprint*(). 2003-04-29 01:49:33 +00:00
kristerw b8943cbf89 Save some text segment space by not defining URLPHY_DEBUG. 2003-04-04 22:21:39 +00:00
drochner ba0f309a91 Before checking the (Intel specific) SCR_T4 register, make
sure the chip implements 100T4 (in BMSR).
The 82562 (which doesn't implement 100T4) has the SCR_T4 bit
(always?) set, which led to wrong media status reports.
approved by thorpej
2003-03-27 19:36:49 +00:00
matt 52f7db1beb Fix C&P tpyo. 2003-03-07 00:14:38 +00:00
matt c4d8a6226e Make the intel phy match the i82562 phys. 2003-03-06 22:38:09 +00:00
matt 4630a8e7f3 Add a MIIF_FORCEANEG flag to be passed to mii_attach. This forces an
autonegotiation to take place if IFM_AUTO is selected in mii_media_set.
Make the gem driver use it.  (XXX hme probably should use it but I can't
test that).
2003-02-20 00:55:21 +00:00
matt ee04df9a4d Add support for Am79C87[45]. 2003-01-26 06:25:08 +00:00
matt 5ade701481 Regen. 2003-01-26 06:21:03 +00:00
matt b9f79bf02f Add AMD Am79C87[45] (which use the Altima OUI). 2003-01-26 06:20:30 +00:00
gendalia 1f71c142cd Add altima (broadcom) AC101L, phy for 3com 3c905cx-tx on nForce2 MCP-T 2003-01-17 06:23:52 +00:00
gendalia 6672d83048 regenerate to match miidevs, added ac101L phy 2003-01-17 06:21:13 +00:00
gendalia 3f50762f0c Add altima (broadcom) AC101L, phy for 3com 3c905cx-tx on nForce2 MCP-T. 2003-01-17 06:20:07 +00:00
jonathan 1556fd569d Update first 16-bit word of 5401 DSP patch to match latest Linux drivers.
Add comment  saying what the magic values do: disable tap power management.
2003-01-16 20:02:05 +00:00
jonathan 0ecaf20a9d regen machine-generated files from miidevs rev 1.44 (bcm5704 phy) 2003-01-16 18:46:08 +00:00
jonathan 4b1bc17628 Add PHY entry for bcm5704c (copper) integral phy to miidevs.
Add 5704 phy and dsp patch, and untestsed dsp patch for 5703, to brgphy.c.
2003-01-16 18:43:40 +00:00
thorpej 72a7af27b0 Use aprint_normal() in cfprint routines. 2003-01-01 00:10:15 +00:00
matt 78b64fd232 Recognize BCM5703 phy. (with this and the bge changes, the bge0 on my
ASUS P4PE m/b is now working)
2002-12-27 03:15:52 +00:00
matt 9d04e25e82 Regen. 2002-12-27 03:14:23 +00:00
matt 2860168d98 Add BCM5703. 2002-12-27 03:14:06 +00:00
martin e750674637 Regen (MYSON MTD803 added) 2002-11-07 20:37:03 +00:00
martin d407db9cfd Add MYSON MTD803 2002-11-07 20:35:55 +00:00
thorpej d52f5f8ecb Make mii_media_active unsigned. 2002-11-07 07:45:03 +00:00
thorpej 499a491929 Fix signed/unsigned comparison warnings. 2002-11-07 07:41:22 +00:00
perry 43ed640ca5 fix lint warnings about things being stringified under cpp -traditional 2002-10-23 01:50:11 +00:00
fair 03f1a009cb If pnaphy attaches, make sure the mii_flags has MIIF_IS_HPNA in it. 2002-10-13 06:28:01 +00:00
thorpej c9b3657ce9 Add trailing ; to CFATTACH_DECL. 2002-10-02 16:33:28 +00:00
thorpej 71adb76f75 Use CFATTACH_DECL(). 2002-09-30 21:57:46 +00:00
wiz b1c7ac0e6d "definitions" has lots of 'i's, but that's not reason to leave one out. 2002-09-29 23:23:56 +00:00
thorpej 0720e04052 Remove a debugging printf. 2002-09-28 19:07:43 +00:00
scw cbc5db835b Try a little harder to work around the "Isolated After Reset" lossage. 2002-09-28 10:27:21 +00:00
thorpej f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
provos 0f09ed48a5 remove trailing \n in panic(). approved perry. 2002-09-27 15:35:29 +00:00
thorpej 6c88de3b53 Introduce a new routine, config_match(), which invokes the
cfattach->ca_match function in behalf of the caller.  Use it
rather than invoking cfattach->ca_match directly.
2002-09-27 03:17:40 +00:00
thorpej d1ad2ac4f2 Rather than referencing the cfdriver directly in the cfdata entries,
instead use a string naming the driver.  The cfdriver is then looked
up in a list which is built at run-time.
2002-09-27 02:24:06 +00:00
scw ce2ec9e63e Add support for the SMsC LAN83C183 PHY, which actually probes as a
Seeq 84220.

Also add an 84220-specific work-around for some braindamage (at least
in the PHY I'm working with) where the PHY always comes out of reset
isolated, regardless of the previous state of the BMCR_ISO bit. This
happens even if the PHY has address zero, which is contrary to the
part's datasheet...

The work-around is only applied if we notice BMCR_ISO is set when it
should be clear following reset. The fix is to wait 30mS and clear
it manually. (The change doesn't stick if it's cleared sooner than this)
2002-08-26 11:13:13 +00:00
fvdl 660edcbaff Match 881011 PHY. 2002-08-08 00:04:57 +00:00
fvdl 86710d1b0a Regen after addition of marvell 881011. 2002-08-08 00:04:28 +00:00
fvdl b068d9297a Add ID for Marvell 881011 phy found on newer i8254x-based gig-e cards. 2002-08-08 00:03:42 +00:00
thorpej 7d85789f0a Move the BCM5401 DSP patch out of the bge driver and into
the brgphy driver; all users of the BCM5400 and BCM5401 need
the DSP patch and the sledgehammer-reset-at-media-set-time.

Also add a DSP patch for the BCM5411 gleaned from Apple's
GMAC driver for Darwin.

Tested with a 3Com 3c996-T (BCM5700 + BCM5401).
2002-07-13 01:23:27 +00:00
thorpej b13f958c53 Match the BCM5421, found on the Apple Xserve. From Matt Thomas. 2002-07-12 04:00:10 +00:00
matt 97f6bca3e2 Regen. 2002-07-09 23:25:07 +00:00
matt 537e1f17d9 Add Broadcom BCM5421 2002-07-09 23:24:33 +00:00
simonb c19a094675 Don't include <malloc.h> - no memory management style functions are use
in any of the MII drivers.
2002-07-03 06:25:49 +00:00
drochner 8d07c19c5e regen 2002-06-25 12:26:28 +00:00
drochner 4ded79cbb4 After I found a press release of 1998 which states that AMD sold
Davicom PHY chips, merge the identical entries for DM9101 and Am79c873
into one.
Should also fix PR kern/17369 by Dave Huang.
2002-06-25 12:25:56 +00:00
fvdl 64fc3ae071 Match BCM5701 2002-06-22 14:38:34 +00:00
fvdl bc97012696 Add more register definitions. From FreeBSD. 2002-06-22 14:37:58 +00:00
fvdl 506d548f6c Regen. 2002-06-22 14:36:26 +00:00
fvdl 3cfd73048b Aff BCM 5701 PHY Id. 2002-06-22 14:35:52 +00:00
matt 1f4c6f5868 Regen. 2002-05-15 22:48:42 +00:00
matt 0bfea741e8 Correct/add more PMC-Sierra PHYs 2002-05-15 22:48:17 +00:00
matt 57752d8c7f Regen. 2002-05-15 21:25:28 +00:00
matt 5a4d71be86 Add another PMC-SIERRA phy 2002-05-15 21:24:59 +00:00
thorpej c1f51e00c0 Back out change accidentally committed. 2002-05-12 21:39:46 +00:00
thorpej 0cc96b0fbe Make sure ifp->if_baudrate is valid when the parent's statchg
callback is made.

Pointed out by Matt Thomas.
2002-05-10 20:45:05 +00:00
uwe 41e6fbc398 Delint somewhat. 2002-05-07 04:52:49 +00:00
wiz b9abd324c6 Fix typo in comment. kern/16382 by Sean Davis. 2002-04-17 09:14:21 +00:00
thorpej e1f3e69604 * Move the mii_bitbang attribute into dev/mii/files.mii
* Pull in dev/mii/files.mii from conf/files, rather than playing
  the magic "files include order" dance in N machine-dependent
  configuration definitions.
2002-04-17 00:35:04 +00:00
mycroft aa878fabc4 For 78Q2120 revisions 3 and earlier, punt to ukphy, as our special media status
routine does not work on those chips.
2002-04-15 16:50:52 +00:00
ichiro 2aa38fbf8b add urlphy 2002-03-29 02:05:05 +00:00
ichiro 8e2f0b253e Add a driver for the Realtek RL8150L Ethernet PHY. 2002-03-28 21:07:53 +00:00
thorpej b017898534 Get flags passed down to PHY drivers correctly. This was done on
an adhoc basis in a couple of PHY drivers, this fixes it more generally.

Per a discussion w/ Cliff Neighbors <cliff@allegronetworks.com>.
2002-03-25 20:51:24 +00:00
chs 4b6d0e2df5 lxtphy needs the ukphy_subr attribute now. 2002-03-17 01:34:48 +00:00
chs e444e2ddd4 regen 2002-03-14 04:41:09 +00:00
chs dc3bc0c490 add support for LXT971 PHYs. 2002-03-14 04:40:26 +00:00
wiz 5c800297c6 Match ICS 1893. 2002-02-10 17:09:41 +00:00
wiz c48956e61c Regen [ICS 1893] 2002-02-10 17:09:08 +00:00
wiz 9f4c1b7c26 Add ICS 1893 2002-02-10 17:08:24 +00:00
thorpej edd394b53e Update for 88E1000 model number changes. 2002-01-15 21:01:59 +00:00
thorpej 60ed1aba47 Regen; add another Marvell 88E1000 PHY model number. 2002-01-15 21:00:50 +00:00
thorpej dcc3d13f0d Add another Marvell 88E1000 PHY model number. 2002-01-15 20:59:52 +00:00
augustss c6df7d4358 Regen. 2001-12-15 00:31:43 +00:00
augustss 385b05e2f9 Add another Altima PHY. From Peter Seebach. 2001-12-15 00:31:03 +00:00
lukem ecb81c3f6d - convert usage of "defopt" to "defflag" where the relevant option does
not support a value (e.g., it's to be used as "options FOO" instead of
  "options FOO=xxx"). options that take a value were converted to
  defparam recently.
- minor whitespace & formatting cleanups
2001-11-28 10:21:10 +00:00
lukem 0fa231134c - replace "defopt" with "defparam" for options which must take a value,
as config(8) will warn for value-less defparam options
- minor whitespace/formatting cleanup
- consolidate opt_tcp_recvspace.h and opt_tcp_sendspace.h into opt_tcp_space.h
2001-11-20 14:34:18 +00:00
lukem 8b7bb91219 add RCSID 2001-11-13 07:38:28 +00:00
perry 82540eeaca fix a couple of signed->unsigned warnings lint found 2001-11-11 00:25:23 +00:00
thorpej 89893e42b7 ANSI'ify. 2001-08-25 18:04:01 +00:00
thorpej 11be81ff63 Regen. 2001-08-25 06:00:01 +00:00
thorpej c783391d0a Note compatibility with the Am79c874, and document some more
registers.
2001-08-25 05:57:12 +00:00
thorpej 9d50e2e95a Back out previous; closer inspection of the manual reveals that the
Am79c874 has the same ID register contents as the AC101.
2001-08-25 05:55:19 +00:00