summaryrefslogtreecommitdiffstats
path: root/sys/dev/ed
Commit message (Collapse)AuthorAgeFilesLines
* Add Surecom EP-427X.imp2009-04-241-1/+2
|
* A couple of older Melco cards that missed the transition to newcardimp2009-04-221-1/+2
|
* Add Billionton LNT10TBimp2009-04-221-0/+1
|
* Add a few more models of AMBICOM cards from data from linux driver andimp2009-04-221-0/+4
| | | | pccard.conf.
* These were a placeholder and don't belong here. Remove them.imp2009-04-221-143/+1
|
* Kill stray bootverbose debug tool.imp2009-04-221-2/+0
| | | | Submitted by: juli@
* Turns out the code improvements I did for the TC5299J support wereimp2009-04-221-13/+154
| | | | | anti-improvements and broke support for this part. Revert the part of the improvement at fault.
* Sometimes we can call ed_detach() before the mtx has been initialized.imp2009-04-201-2/+4
| | | | Avoid it if it hasn't been initialized.
* Cleanup resource allocation code a bit. Store the rids on theimp2009-04-205-47/+48
| | | | | resources rather than on the softc. When we allocate resources for PC Card, if we only get 16 ports, try again to get the others.
* Make sure that the data in the ROM with a valid signature isn't allimp2009-04-181-1/+5
| | | | 0's. At least one PC Card ASIC does this...
* Add GVP NIC 2000P and New Media Livewire. Also New Media LanSurferimp2009-04-181-1/+3
| | | | doesn't have a function type of network, so add a quirk for that...
* Establish the interrupt handler AFTER we successfully attach. We needimp2009-04-184-22/+29
| | | | | to do this in case we have a shared interrupt that fires during the attach process....
* Remove debug write accidentally left in.imp2009-04-181-1/+0
|
* Don't specify a hint, since it isn't needed.imp2009-04-101-2/+2
|
* Fix commentimp2009-04-101-4/+3
| | | | Submitted by: danfe@
* Improvements for TC5299J MII support.imp2009-04-101-25/+15
|
* The D-Link DE-650 isn't tagged as a network card, so allow it toimp2009-04-101-1/+2
| | | | | | attach anyway. Add a comment about a 'common' mfg/prod pair that's used in a very large array of different cards.
* Fix some comments.imp2009-04-101-9/+12
|
* No need to check for chip type here.imp2009-04-101-1/+1
|
* More chip types, and fix a comment.imp2009-04-071-11/+14
|
* Fix a comment to match the code.imp2009-04-071-2/+1
|
* Remove DL10019 workaround, since the code it calls isn't quite ready.imp2009-04-071-1/+2
|
* Move tick to end of file for better code references.imp2009-04-071-24/+31
|
* The DL100xx cards have 24k of packet memory, not 16k. Use it for themimp2009-04-071-5/+20
| | | | | | | | | | and update comments about original patches doing this and it not working. It works for both the DL10019 and DL10022 based cards that I have. It really helps the DL10019 cards, since they were using 8k instead of the normal 16k that regular NE-2000 cards help. # Note to self: need to provide a common routine to setup memory # parameters.
* Apply generic media stuff to pccard case too, when we aren't using miibusimp2009-04-071-0/+3
| | | | for this.
* Minor fixes to comments about media autoselect.imp2009-04-071-5/+7
|
* Provide a generic ifmedia set of routines as a fallback. Theimp2009-04-075-8/+46
| | | | | | | | | DP8390-based cards have no generic way of reporting status of the link or setting the media type. Some specific versions of these cards do, however, allow for this, and we already support some of them. Make the 'ed' experience more uniform by providing "autoselect" as the meida and status "active" always. This won't affect the chips that provide more specific details.
* Remove more debug...imp2009-04-031-2/+0
|
* Retire two flags that haven't been used since OLDCARD was retiredimp2009-04-021-2/+0
| | | | | (well, since before OLDCARD was retired, since I removed their use somewhat before that).
* Kill debug that crept in.imp2009-04-021-2/+2
|
* Minor tweaks in the names to match the chips more closely.imp2009-04-022-13/+13
|
* Minor DLINK DL100xx support tweaks:imp2009-04-022-15/+3
| | | | | | | | | The DIROUT bit difference between the 19 and 22 is annoying. We can set both bits on both parts without ill effect. Use this trick to simplify the code. The DELAYS in the MII bus bit-bang code for the DL100xx parts aren't needed. Eliminate them.
* The AX88190 has 64k of external SRAM, of which 62k can be used forimp2009-04-021-50/+29
| | | | | | | | | | | packet data. However, the AX88190A moves this on-chip and reduces it to the more traditional 16k from 16k-32k. The AX88790 follows the '190A. Probe memory above 32k to see which flavor of the '190 we have and use the extra memory if we have it. Eliminate the kludgy read eeprom for the ID code. It really is just a memory read at location 0x400, so just use that instead. Makes the code easier to understand as well as eliminates some magic numbers.
* Force an autonegotiation at attach time for all the attached PHYs forimp2009-04-021-4/+30
| | | | | | | | | | | | ed cards. There's a number of minor nits in a lot of the PHYs on the PC Cards that use the Axis AX88190 or DLink DL10019 and DL10022 chips. Forcing the autonegotiation doesn't seem to cause problems on the cards that have sane PHYs, but makes several cards I have work without further workarounds. I'm not 100% sure that kicking the PHY and resetting them is the right thing to do on the media change callback. Other NICs seem to need this and do similar things.
* Add additional data on the MIIBUS WTF that I committed earlier.imp2009-03-311-0/+4
|
* It turns out that the initialization is required since it sets up theimp2009-03-311-0/+24
| | | | | readout of the MAC address. The 10ms delay was really needed. Ooops.
* o Minor tweaks to the AX88x90 probe routine, mostly related to comments.imp2009-03-311-48/+17
| | | | | | | o Don't run through the register initialization in the read mac routine for the AX88x90. It duplicates other stuff that we do. o Eliminate the 10ms delay after we reset the AX88x90. We already wait for the appropriate bits to indicate reset is done.
* Go back to filtering all PHY addresses above 16 since at least twoimp2009-03-311-8/+9
| | | | | cards still have issues with them. Maybe this is a silicon rev? In any case, doing the filtering only for the AX88790 for the moment.
* Hmmmm... This can't be right... But it looks like the DL100xx chipsimp2009-03-311-1/+3
| | | | | | | | | | don't have one of the clock cycles (the turn cycle) that the AX88x90 chips have. Make this conditional. But this seems totally crazy and can't possibly be right. Commit the fix for the moment until I can explore this mystery more deeply. On the plus side, the DL10022-based cards I have (D-Link DEF-670TXD and SMC8040TX) work after this fix.
* Two fixes:imp2009-03-301-7/+11
| | | | | | (1) Delete all children when detaching to keep from adding a phy each driver reload. (2) All AX88x90 chips have the RST issue.
* This is a major reworking of the AX88x90 support.imp2009-03-304-125/+230
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o Introduce new chip_type AX88790. There's a few places we need to know the exact chip for workaronds. o Explain the AX88190 workaround for the ISR bits being stuck, and don't apply them to the AX88790. The datasheet says the bits are fixed, and experience confirms. o Fix mii bit-bang read code to read and discard the 'floating' bit. o Remove empty ed_pccard_ax88x90_mii_reset routine o Report error from mii_phy_probe o Don't use ed_probe_Novel_generic for ax88x90 chips. It puts them into an odd state sometimes. Instead, use a more stream-lined version that avoids the trouble spots. This was copied and tweaked from the original. o Move chip reset into its own routine. o Minor code optimiation on getting MAC address o Add code for coping with AX88790 cards that are in power down state and need to be kicked before the PHY registers for the internal phy read right. o Remove ugly cap of PHYs at 17. o For AX88790, we need to set a special bit for accessig phy 16 (the internal phy) and clear it for all others according to a chip erratum. o streamline the bit-bang code for AX88x90: the delays aren't needed according to the datasheet timing diagrams and also the Linux driver o Fix minor bit definition for direction bit. o Generally: Some comments reformatted o Only try the toshiba probe on cards labelled as toshiba # From another Akihabara card (this one from a few years ago from a # friend in Japan). Fix the Corega FEther II PCC-TXD. This one is # still on sale new, as of a few weeks ago. should fix all other AX88x90 # based cards, but I have some testing left to finish on my collection...
* When reading via memory, read in (amount + 1) / 2 (to properly roundimp2009-03-281-1/+1
| | | | | | | up) rather than amount + 1 / 2, which is the same as amount, or 2x too many words which leads to data corruption. # This fixes the sbdrop panics I was seeing with the Toshiba LANCT00A.
* It turns out that the Toshiba LANCT00A PC Card is really like theimp2009-03-283-8/+27
| | | | | | | | | | | | | | | | | | Toshiba PCETC ISA card, and even has the same board type code in the card ID (0x14). So, for this card, call ed_probe_WD80x3_generic after setting things up apropriately. This makes the card attach and kinda work (I'm seeing panics in sbdrop). Since history has shown that the WD80x3 probe routine is dangerous, only do it for this card. Also, disable the memory range check to make sure it is an valid ISA memory. I think that it is bogus, but I'm not 100% sure, for these cards. I removed probing for the WD80x3 in 2005 when I added support for the AX88x90 and DL100xx cards since none of my cards had ever matched it and PAO3 removed it and none of the cards in their database died. It is possible there are other quirks about this card too, since no other open source OS supports it, or even claims to support it. But it was a fun half hour hack...
* Add bromax axnet based cards to the mix. This was harvested from the linuximp2009-03-271-0/+3
| | | | | | | | | | | | | | | driver. Not sure who sold it/rebadged it. Add stub entries for Mitsubishi B8895 and Toshiba LANCT00A to the driver with a comment that they don't work /* NG */.[*] These are DP83902A based cards, which should work, but don't seem to. Likely they are from the days before the ne2000 roamed the earth and use a non-standard hookup (see if_ed_isa or if_ed_cbus for some examples). Unless I happen to stumble into the right one, these may never work, but I'm tired of omitting them from commits. [*] The Japanese adopted OK from English, but also use NG for its opposite.
* Allow the attach routine to fail gracefully and not panic the system.imp2009-03-261-1/+2
|
* Tweak comments.imp2009-03-251-15/+16
|
* Add RIOS PCCARD 3.imp2009-03-251-0/+1
|
* o writereg needs to return a vlue.imp2009-03-121-2/+4
| | | | | o Add TJ PTJ-LAN_T card. Some more work may be needed to make this actually function correctly.
* When the miibus for the AX88x90 or TC5299J cards fails to attach, weimp2008-08-062-8/+10
| | | | | | | | | | | | | would call ed_release_resources() when we should have called ed_detach() to properly undo the effects of prior calls to ed_attach(). This would leave a stray ed interface ifnet alive in the system, which was, well, bad, since we called if_free() on the underlying memory... Fix the ed_detach routine to cope being called in this context now. This should never come up because the miibus is always there. Except for now when it seems to be failing for reasons unknown... That's a different bug that hits at least ed, xl, dc and fxp...
* Add two corega cards from NetBSD: FETEHR II PCC TXD and LAPCCTXD.imp2008-07-061-0/+2
|
OpenPOWER on IntegriCloud