summaryrefslogtreecommitdiffstats
path: root/sys/dev/pccard
Commit message (Collapse)AuthorAgeFilesLines
* Another round of the <sys/queue.h> FOREACH transmogriffer.phk2001-02-041-2/+1
| | | | | Created with: sed(1) Reviewed by: md5(1)
* Convert the vendor/product cis strings to an array of CIS entries. Thisimp2001-01-212-6/+6
| | | | | allows us to use the PCCARD_CIS #defines generated to distinguish cards that don't have a Manufacturer and OEM.
* remove duplicate entry that snuck in during the merge.imp2001-01-212-8/+0
|
* Sync to pccarddevs 1.9imp2001-01-201-2/+17
|
* Sync with NetBSD (again, after I got the most up to date file):imp2001-01-201-1/+10
| | | | | | | o 1.111 imp Sync with FreeBSD. o 1.110 nonaka Add Roland SCP-55 o 1.109 ichiro add NANOSPEED ROOT-RZ2000 WLAN Card o 1.108 ichiro add EMTAC A2424i 11Mbps WLAN Card
* sync with pccarddevs 1.8.imp2001-01-201-2/+2
|
* Correct entry for RATOC REX_R280 to comply with style used in the restimp2001-01-201-1/+1
| | | | of the file.
* Sync with pccarddevs.imp2001-01-201-9/+45
|
* Sync with NetBSD. v1.98->1.107:imp2001-01-201-4/+22
| | | | | | | | | | | | | | o 1.107 haya Add IO Data CBIDE2 ata interface card. o 1.106 jhawk s/NULL}/NULL }/ o 1.105 thorpej " " -> "&sp" in two entries, per Rafal Boni. o 1.104 thorpej Add SMC 2632W. From Rafal Boni, kern/11775. o 1.103 drochner add IBM microdrive o 1.102 soren Typo. o 1.101 hubertf Add ELSA WaveLAN card & a noname clone(?) o 1.100 toddpw Socket Comm. PC Card Ethernet, and tidy up naming. o 1.99 msaitoh MELCO LPC2-TX, Telecom Device TCD-HPC100, MACNICA ME1-JEIDA o 1.98 imp Sort BAY into numerical order. (already in FreeBSD)
* This is a bandaid for a problem that is not entirely fixed yet.peter2001-01-071-1/+5
| | | | | | | | | | | | | | | | | | The pccard_function_init() call creates a bunch of inactive resources that are persistant and configured on demand. When the child driver "allocates" a resource it is connected up to one of these. When the child releases the resource, we should not delete our copy, just deactivate it again. Otherwise there is nothing to recreate it again after several probe functions have run and done an alloc/release cycle. INVARIANTS shows 0xdeadc0de without this. More work is needed to do a sweep though the pccard_function_disable() call to actually delete the resources for real. Right now, we leak memory on eject (at best), so Dont Do That(TM) yet. This affects 16 bit pccards on a cardbus bridge only. This will be fixed soon, but for now it gets the cards working. Reviewed by: imp
* This file follows style(9), so adjust various nits in the last few commitsimp2001-01-071-17/+24
| | | | | | | | to conform to style(9), plus one other convention that I use: o Declare variables at the start of the function, rather than in blocks when it doesn't help understanding (mine). o 80 column limit. o BSD style statement continuation, rather than "gnu" style.
* For bus_setup_intr, cookiep is a pointer to storage for the parentimp2001-01-071-1/+1
| | | | | | | | | | | | | | | bus to use. We need to set it here. This fixes the problem where a probe routine establishes and disestablishes the interrupt and then we get a panic in the probe routine. However, we pass the pointer to the interrupt hanlder count to the parent bus, which writes its own cookie there, so there may be some problems with that which isn't apparent at the moment. Commit made from: laptop running NEWCARD with sn driver (which works, but gets the wrong ethernet address).
* o Now that I've had time to test the new interface, reintegrate it back in.imp2001-01-072-7/+4
| | | | | | | | | | | | | | | o Fix OLDCARD to use the new interface. o Rename the offsetp argument to deltap to more closely reflect what it is returning (it returns the delta from the requested value to the actual value). o Remove duplicate $FreeBSD$ in pccbb.c o Allow deltap to be NULL. o Convert new isa pcic driver and add XXX comments that this function isn't actually implemented there (which means that NEWCARD pccard stuff won't work there until it is). o Revert attempts to make old inferface work in NEWCARD. Subitted by: peter (Parts of the new version code)
* Undo the interface change to CARD_GET_MEMORY_OFFSET. It wasn't testedimp2001-01-072-6/+11
| | | | | | | | | | | by even a compile of the OLDCARD code, was unapproved by me the keeper of OLDCARD and broke OLDCARD and the ray driver. Adjust new code to cope with the older interface. If the interface changes in the future, it ***MUST*** be cleared by me so that the OLDCARD impacts taken into account. It code in card_if.m is used jointly by both OLDCARD and NEWCARD.
* We do not, and hopefully never will, use the static pccard device table.peter2001-01-072-1274/+1
|
* * Better kld support in pccbb/cardbusjon2001-01-063-63/+258
| | | | | | | | | | | | | | | | | | | | | | | | | - pccbb no longer needs to remember whether a card is inserted. - pccbb reissues insertion on load of cardbus/pccard modules. - got rid of unnecessary delays in power functions. - Cardbus children are no longer deleted if probe/attach fails. - non-attached child devices are reprobed at driver_added. * CARD interface to read CIS - added card_cis_read/card_cis_free interface to read arbitrary CIS data. This currently is only implemented in cardbus. * pccard begins to work - pccard can now use higher memory space (and uses it by default). - set_memory_offset interface changed. - fixed ccr access, which was broken at multiple locations. - implement an interrupt handler - pccard can now share interrupts. - resource alloc/release/activate/deactivate functions gutted: some resources are allocated by the bridge before the child device is probed or attached. Thus the resource "belongs" to the bridge, and the pccard_*_resource functions need to fudge the owner/rid. - changed some error conditions to panics to speed debugging. * Mutex fix - Giant is entered at the beginning of thread
* Oops, broke newcard because I forgot to commit this in my last round of ↵jon2000-11-281-0/+4
| | | | changes to pccbb.c
* Regenerate. Note that pccarddevs_data.h is not used.peter2000-11-252-2/+22
|
* Add Kingston and the KNE-PC2 cardpeter2000-11-251-0/+4
|
* Make a few more mallocs use M_ZERO.dwmalone2000-10-292-6/+4
| | | | | | Submitted by: josh@zipperup.org Submitted by: Robert Drehmel <robd@gmx.net> Approved by: imp
* o Remove lots of kludges with iospace and irq.imp2000-10-221-10/+13
| | | | | | o Make sure that I/O space is aligned properly based on the length of the resource we're allocating. o Add bootverbose message when we fail.
* Get the interrupt correct.imp2000-10-201-1/+1
|
* o Fix memory leak in ivarsimp2000-10-191-6/+25
| | | | | | o Change name of bus o Change the panic on resource allocation failure to just a message. We'll work out why this fails later in the pcic/pccbb code merge.
* o Remove a boatload of debugging printfs.imp2000-10-181-12/+18
| | | | | | | | o Report function number and config index on probe line o Activate the resources (I hope) when RF_ACTIVE is set on those resources I'm allocating on behalf of my children. o Always enable interrupts on multifunction cards in the multifunction register.
* More NEWCARD fixes. We now almost properly print the probe message.imp2000-10-171-9/+72
| | | | | | | | | o Remember the resources we allocate for the config entry. o When we get the resource, do an resource_list_add and do a resource_list_delete if we fail later in the resource list. o In the pccard bus, we allocate the resources. When a child asks for them, just return the resources that we allocated (thanks to Paul Richards and Mike Smith for the idea).
* First cut at allocating the resources from the CIS after the probe, butimp2000-10-162-20/+48
| | | | | | | | before the attach. Things aren't completely working, but this is a good checkpoint. Also, initialize the dev member of the function as soon as we add it to the parent.
* Lots of little fixes. We no longer panic on card insert:imp2000-10-152-19/+53
| | | | | | | | | o initialize ivars with bzero. o remove interrupt function pointer. netbsd needs it, but we don't. o add lots of comments about bogus things that I've been kludging to try to make the simple cases work. o add new ivar accessor for cis4 to match cis3. likely neither will be needed, but it doesn't hurt to have it.
* o Record the pccard_function in the ivar.imp2000-10-092-8/+12
| | | | | o Use a macro function to get the ivar for the child rather than the casting directly. This should be a little safer and easier to read.
* o Implement get_ivars so matching routines will work (this causesimp2000-10-071-3/+38
| | | | | | | | | | | | compat probe routines to work). o Have a null driver_added routines. We need to be careful about probing until after we know we have a card. For the moment, we do nothing (which is safe). This fixes a panic when a driver is loaded w/o a card in the slot. XXX still need to fix the resource list code. It is totally busted and XXX causes a panic in the child printing routine after the probe has XXX succeeded.
* o Merge in changes to the NetBSD sources:imp2000-09-222-8/+93
| | | | | | | | | | | | | | | | | | | | | | pcmciavar.h 1.9->1.12 1.12, enami, minor coding nits 1.11, augustss, (pcmcia_devinfo NRFB) 1.10, cgd, add generic lookup routines pcmcia.c 1.14->1.23 1.23, drochner, (probe code printing, NRFB) 1.22, augustss, KNF 1.21, uch, (hpcmips tweaks NRFB) 1.20, chopps, remove bogus debug 1.19, enami, minor coding nits 1.18, augustss, (pcmcia_devinfo NRFB) 1.17, nathanw, LP64 printf fixes 1.16, cgd, add generic lookup routines 1.15, aymeric, printf fixes NRFB == not relevant to freebsd o Expand the pccard matching routines to include the ability to match against the CIS strings since our current driver database is based on that. o Add lots more ivars to get the information necessary to snag these values.
* Implement indirection in the pccard probe/attach. This should make itimp2000-09-193-0/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | possible to have different probe/attach semantics between the two systems and yet still use the same driver for both. Compatibility methods for OLDCARD drivers. We use these routines to make it possible to call the OLDCARD driver's probe routine in the context that it expects. For OLDCARD these are implemented as pass throughs to the device_{probe,attach} routines. For NEWCARD they are implemented such such that probe becomes strictly a matching routine and attach does both the old probe and old attach. compat devices should use the following: /* Device interface */ DEVMETHOD(device_probe), pccard_compat_probe), DEVMETHOD(device_attach), pccard_compat_attach), /* Card interface */ DEVMETHOD(card_compat_match, foo_match), /* newly written */ DEVMETHOD(card_compat_probe, foo_probe), /* old probe */ DEVMETHOD(card_compat_attach, foo_attach), /* old attach */ This will allow a single driver binary image to be used for both OLDCARD and NEWCARD. Drivers wishing to not retain OLDCARD compatibility needn't do this. ep driver minorly updated. sn driver updated more than minorly. Add module dependencies to allow module to load. Also change name to if_sn. Add some debugging code. attempt to fix the cannot allocate memory problem I'd been seeing. Minor formatting nits.
* Change the interface to pccard_function_init. The interface is suchimp2000-09-162-8/+17
| | | | | | | | | | | | | | | | | that it looks for an acceptible one. Once it finds it, it should set the resources for the device. I say "should" because I've not written that. Also set an ivar for the child of pccard. Minor fix to the attach message printed, we lose the slot number, which I'll have to restore later. Adjust the pccard ivar so that we can save the function that corresponds to this driver so we can enable and disable it more easily. Save a pointer to the function so we know what we're dealing with. There should be some way for the driver to specify which cfg it wants to activate. For now the pccard_function_init function just picks one, but we'll have to revisit this going forward. I'm not doing it now because I'd need some way to activate the card many times and I'm not sure that is desirable or even safe with some cards.
* MFNetBSD:imp2000-09-051-1/+24
| | | | | | | | | 1.6 2000/04/12 21:07:55 scw Add support for the SOHOware PCMCIA Ethernet card, model ND5100-E. This seems to be a re-badged NDC (National Datacomms. Corp) card. It needs a quirk entry due to lack of manufacturer tuple in the CIS. For some reason, the 'Tx/Rx' LED on the connector module is inverted such that it is off during network activity...
* Minor tweaks to have the card be properly enabled via the CCR.imp2000-08-261-6/+9
| | | | | Minor debug changes Minor power management pessimizations
* Sync to pccarddevs 1.5imp2000-08-242-107/+286
|
* o Fix unterminated commentimp2000-08-241-28/+53
| | | | | | | | | | | | | | | | | | | | o Sync to NetBSD (rev NetBSD-user edited-log): 1.97 onoe add Samsung MagicLAN SWL-2000N 1.96 gmcgarry Add entries for all Xircom ethernet models. 1.95 onoe Add Farallon SkyLINE 11mb card as Intersil Prism2 [...] 1.94 joda add 3Com 3CRWE737A (AirConnect) 1.93 soren Include vendor name for IBM products. 1.92 onoe Add Farallon SkyLINE Wireless LAN Card for awi(4) [...] 1.91 soren Add Olicom GoCard. 1.90 gmcgarry Clean up XIRCOM entries - Add entry for Xircom CreditCard Ethernet + Modem 28 - Add entry for Intel EtherExpress PRO/100 - Add entry for Compaq Netelligent 10/100 Ethernet 1.89 is RATOC REX-R280 (another if_mbe_pcmcia card) support by [...] 1.88 joda Panasonic KXLC003 1.87 scw [...] SOHOware PCMCIA Ethernet card, model ND5100-E [...] 1.86 itojun add CIS for Corega Wireless LAN PCC-11 [...] o Minor diffs between the two files corrected to aid future sync.
* Save a pointer to the dev, if any, that each function attach.imp2000-08-222-2/+7
| | | | Remove some bogus printfs.
* o Move to using PCCARD_SOFTC(dev)imp2000-08-194-20/+16
| | | | | o fill in the size of the actual softc, rather than 1 in data structure o minor debugging improvements.
* Define get_memory_offset methodimp2000-08-111-0/+7
|
* Matching commits to pccard for last pcic changes. We now at least toimp2000-06-183-29/+32
| | | | probe/attach. This is a checkpoint.
* Add new functions. Also add comments to existing functions. Theseimp2000-06-181-0/+37
| | | | are needed for the pccard changes I've just committed.
* Back out the previous change to the queue(3) interface.jake2000-05-261-4/+4
| | | | | | It was not discussed and should probably not happen. Requested by: msmith and others
* Change the way that the queue(3) structures are declared; don't assume thatjake2000-05-231-4/+4
| | | | | | | | the type argument to *_HEAD and *_ENTRY is a struct. Suggested by: phk Reviewed by: phk Approved by: mdodd
* Remove bogus commentimp2000-04-201-2/+0
|
* OK. Next step: we read in CIS.imp2000-04-195-155/+9
| | | | | | | | | | | I've done this by having requests to allocate memory propigate up the tree. We'll see how well this works and reevaluate if it isn't working well. Also initialize ptr in the tuple. As well as minor reorg of memory allocation. Likely need to do similar things for I/O when the time comes. I've move all defines from pccardchip.h into pccardvar.h and eliminated pccardchip.h.
* Include <sys/bus.h>, which is needed after Doug's latest object changes.imp2000-04-162-0/+4
|
* checkpoint latest pccard/pcic hacking:imp2000-04-134-142/+89
| | | | | | | | | | | | | | | | | | | | o Eliminate cross calls between the devices. Instead move to using the newbus messaging system. Added three new card calls: attach_card, detach_card, get_type. o Eliminate interrupt routine in pccard we never use. o Move from deactivate to detach for removing cards. o Start mapping CIS memory, but it is broken and causes panics. At least it is closer to working than before. o Eliminate struct device everywhere. It was bogus. o Initialize softc for pccard device so we have valid pointers to ourselves. o Implement routine to find the pcic ivar for a child device of the pccard so we can use it to talk to the pcic hardware. o Lots of minor tiding up. This version now panics when we try to read the CIS. The next batch of work to make this work is what was outlined in my posting to mobile about resource allocation and such.
* Fix pcic_detach_socket to get right pcic_handle.imp2000-04-041-1/+1
| | | | | | | | Pass sc->dev rather than a bogusly cast pccard_softc *sc. This allows us to insert and remove cards w/o panicing the kernel. However, the cis isn't mapped in, so the pccard_scan_cis function fails.
* Minor changes to some of the interfaces.imp2000-03-264-8/+16
| | | | | | Remove RF_PCCARD_ATTR in anticipation of removing it from sys/rman.h Add interface for setting "attributes" of pccard/cardbus devices. Minor formatting nits.
* Regenimp2000-03-252-28/+362
|
OpenPOWER on IntegriCloud