summaryrefslogtreecommitdiffstats
path: root/sys/pccard
Commit message (Collapse)AuthorAgeFilesLines
* s/Brige/Bridge/.kuriyama1999-11-211-4/+4
|
* Allow NULL for startp and/or countp in bus_get_resource() so that you canpeter1999-11-201-2/+4
| | | | get one of the two without having to use a dummy variable.
* Kill unneeded includesimp1999-11-203-8/+0
| | | | Found by phk's script a while ago.
* I'm told this makes more laptops work with the new attachment code.imp1999-10-291-1/+1
| | | | Submitted by: archie cobbs
* Do not add children for new bus kludge version of pccard.imp1999-10-282-10/+2
| | | | Fix some compile warnings.
* Remove debug printfs and Debugger() calls.imp1999-10-252-85/+49
| | | | | | | Add support for memory mapping This should allow pccard that need memory mapping to work, but I don't have one to test against.
* Massive rewrite of pccard to convert it to newbus.imp1999-10-259-1122/+322
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o Gut the compatibility interface, you now must attach with newbus. o Unit numbers from pccardd are now ignored. This may change the units assigned to a card. It now uses the first available unit. o kill old skeleton code that is now obsolete. o Use newbus attachment code. o cleanup interfile dependencies some. o kill list of devices per slot. we use the device tree for what we need. o Remove now obsolete code. o The ep driver (and maybe ed) may need some config file tweaks to allow it to attach. See config files that were committed for examples on how to do this. Drivers to be commited shortly. This is an interrum fix until the new pccard. ed, ep and sio will be supported by me with this release, although others are welcome to try to support other devices before new pccard is working. I plan on doing minimal further work on this code base. Be careful when upgrading, since this code is known to work on my laptop and those of a couple others as well, but your milage may vary. BUGS TO BE FIXED: o system memory isn't allocated yet, it will be soon. o No devices actually have a pccard newbus attach in the tree. BUGS THAT MIGHT BE FIXED: o card removal, including suspend, usually hangs the system. Many thanks to Peter Wemm and Doug Rabson for helping me to fill in the missing bits of New Bus understanding at FreeBSD Con '99.
* Remove name field from controller information. Fix name setting inimp1999-10-163-38/+44
| | | | | | | | pc98 case that I missed before. Attempt to get the irq for the PCIC first from the loader env var and second from the config system. I've been able to boot my laptop with a kernel that hardwired the irq to 10. This should allow boot -c to finally start working for pcic irq, but I've not tested that. Add $FreeBSD$ to slot.h.
* Add new file for pccard compatibilty code. Add it to files so it getsimp1999-10-151-0/+218
| | | | pulled in as well.
* Reorganize the attachement point for pcic (it was unattached andimp1999-10-154-296/+50
| | | | | | | | | | | | | | | | | | | | | | floating before). Attach pccard devices to pcic, one per slot (although this may change to one per pcic). pcic is now attached to isa (to act as a bridge) and pccard is attached to pcic, cbb and pc98ic (the last two are card bus bridge and the pc98ic version of pcic, neither of which are in the tree yet). Move pccard compat code into pccard/pccard_compat.c. THIS REQUIRES A CONFIG FILE CHANGE. You must change your pcic/card entries to be: # PCCARD (PCMCIA) support controller pcic0 at isa? controller pcic1 at isa? controller card0 The old system was upside down and this corrects that problem. It will make it easier to add support for YENTA pccard/card bus bridges. Much more cleanup needs to happen before newbus devices can have pccard attachments. My previous commit's comments were premature.
* Make it easier to have completely new bus attachment points for pccardimp1999-10-153-32/+70
| | | | | | | | | | devices. There may still be problems with said drivers, if so please let me know. o Move attach-like functionality to the nbk attach compatibility code. o Smarter probe code: for the compatibility code probe succeeds if strcmp succeeds, for noncompatibility you can do anything you like. o Get rid of some compiler warnings introduced in last commit.
* *** empty log message ***imp1999-09-265-18/+31
|
* Kill printf warnings.imp1999-09-261-1/+1
|
* Remove five now unused fields from struct cdevsw. They should neverphk1999-09-251-5/+0
| | | | | | | | have been there in the first place. A GENERIC kernel shrinks almost 1k. Add a slightly different safetybelt under nostop for tty drivers. Add some missing FreeBSD tags
* $Id$ -> $FreeBSD$peter1999-09-062-2/+2
|
* Kludge together support for the old pccard system with newbus. Thisimp1999-09-065-19/+388
| | | | | | | | will allow newbus based drivers to have pccard attachments. Also start printing out probe messages for pccards stating the resources used and regularize many of the pccard printfs. Reviewed by: Peter Wemm.
* $Id$ -> $FreeBSD$peter1999-08-284-4/+4
|
* Convert DEVFS hooks in (most) drivers to make_dev().phk1999-08-232-13/+2
| | | | | | | | | | | | | | | | Diskslice/label code not yet handled. Vinum, i4b, alpha, pc98 not dealt with (left to respective Maintainers) Add the correct hook for devfs to kern_conf.c The net result of this excercise is that a lot less files depends on DEVFS, and devtoname() gets more sensible output in many cases. A few drivers had minor additional cleanups performed relating to cdevsw registration. A few drivers don't register a cdevsw{} anymore, but only use make_dev().
* (1) Fix a spelling mistake in a comment.billf1999-08-171-2/+3
| | | | | | (2) Add braces to avoid ambigious if/if/else Reviewed by: bde
* o Add additional printfs for error cases when we can't attach the device.imp1999-08-013-9/+29
| | | | | | | | o Add field to dev_desc for the size of the io port range. This isn't used yet in the committed sources, but will make the transition easier in the future. If you build this into your kernel, you will need to rebuild pccardd.
* Eliminate a bunch of #include "pci.h" and #if NPCI > 0 around entirepeter1999-07-031-5/+1
| | | | files. config will leave the whole file out if configured to do so.
* Simplify cdevsw registration.phk1999-05-311-16/+2
| | | | | | | | | | | | | | | | | | | | | | | | | The cdevsw_add() function now finds the major number(s) in the struct cdevsw passed to it. cdevsw_add_generic() is no longer needed, cdevsw_add() does the same thing. cdevsw_add() will print an message if the d_maj field looks bogus. Remove nblkdev and nchrdev variables. Most places they were used bogusly. Instead check a dev_t for validity by seeing if devsw() or bdevsw() returns NULL. Move bdevsw() and devsw() functions to kern/kern_conf.c Bump __FreeBSD_version to 400006 This commit removes: 72 bogus makedev() calls 26 bogus SYSINIT functions if_xe.c bogusly accessed cdevsw[], author/maintainer please fix. I4b and vinum not changed. Patches emailed to authors. LINT probably broken until they catch up.
* This commit should be a extensive NO-OP:phk1999-05-301-5/+22
| | | | | | | | | | | | | Reformat and initialize correctly all "struct cdevsw". Initialize the d_maj and d_bmaj fields. The d_reset field was not removed, although it is never used. I used a program to do most of this, so all the files now use the same consistent format. Please keep it that way. Vinum and i4b not modified, patches emailed to respective authors.
* Simplify the COMPAT_PCI_DRIVER/DATA_SET hack. We can add:peter1999-05-091-5/+1
| | | | | | | | #define COMPAT_PCI_DRIVER(name,data) DATA_SET(pcidevice_set,data) .. to 2.2.x and 3.x if people think it's worth it. Driver writers can do this if it's not defined. (The reason for this is that I'm trying to progressively eliminate use of linker_sets where it hurts modularity and runtime load capability, and these DATA_SET's keep getting in the way.)
* Unbreak slot_irq_handler(). The problem here is that slot_irq_handler()wpaul1999-05-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | abuses its argument, which is supposed to be an integer unit number, as a pointer to the head of the 'struct slot' list. When this code was hacked^Wupdated for newbus, a new mechanism for registering slot_irq_handler() was put in place and the significance of the unit number was overlooked. When registering an interrupt, we have both device_id and unit. The unit number is passed as 'unit' but /sys/i386/usa/intr_machdep.c:register_intr() drops unit on the floor and uses device_id instead. Since pccard_alloc_intr() always sets device_id to 0, this means the unit number is always zero, and slot_irq_handler() is always called with 0, which becomes a NULL pointer which slot_irq_handler() tries to dereference and the kernel explodes. Result: if you assign a PCMCIA driver in the kernel config file like this: device wi0 at isa? port? irq? Then the system will panic the moment a PCMCIA device is attached and an interrupt is triggered. The quick fix: make pccard_alloc_intr() pass the unit number as both the device_id and unit arguments to register_pcic_intr(). The correct fix would be to rewrite /sys/pccard to be less disgusting.
* Operator precedence (nit: in #if 0 code) bug.peter1999-05-021-1/+1
| | | | | PR: 11413 Submitted by: Christopher Peterson <cpeterso@cs.washington.edu>
* - Added PCI identification support for the TI1251 PCI/CardBus bridge.nate1999-05-022-2/+5
| | | | | With this addition my ThinkPad 600E works with the stock FreeBSD PCMCIA code.
* - When the card is inserted, call pccard_insert_beep instead ofnate1999-05-021-2/+2
| | | | | | pccard_remove_beep. Submitted by: PAO
* Eliminate compiler warning about missing type in declaration.jdp1999-04-271-3/+2
| | | | | | | Remove useless initialization of static variable to 0. Move static variable declaration into the only function that uses it.
* Fix the code that prints the "Initializing PC-card drivers" messagejdp1999-04-271-4/+3
| | | | | | | | so that the list of drivers is correct. This is a slightly simplified version of the patch from the PR. PR: misc/10544 Submitted by: Christophe Colle <colle@krtkg1.rug.ac.be>
* Suser() simplification:phk1999-04-271-5/+5
| | | | | | | | | | | | | | | | | | | 1: s/suser/suser_xxx/ 2: Add new function: suser(struct proc *), prototyped in <sys/proc.h>. 3: s/suser_xxx(\([a-zA-Z0-9_]*\)->p_ucred, \&\1->p_acflag)/suser(\1)/ The remaining suser_xxx() calls will be scrutinized and dealt with later. There may be some unneeded #include <sys/cred.h>, but they are left as an exercise for Bruce. More changes to the suser() API will come along with the "jail" code.
* Use COMPAT_PCI_DRIVER() for registration if it exists. This shouldn'tpeter1999-04-241-1/+5
| | | | hurt the driver portability to 3.x too much for where drivers are shared.
* Well folks, this is it - The second stage of the removal for build supportpeter1999-04-172-2/+1
| | | | for LKM's..
* Import PCI pccard bridge chip probing from PAO. Hopeful prelude fornsayer1999-04-012-13/+44
| | | | | | | broadening chipset support in -current. Reviewed by: joerg Obtained from: PAO
* - Made the setting of the machdep.pccard.pcic_irq from the boot config filenate1999-03-261-5/+6
| | | | | | actually work. Reviewed by: "Sean O'Connell" <sean@stat.Duke.EDU>, msmith
* Remove static delcarations from {,un}register_pcic_intr declarationsimp1999-03-121-2/+2
| | | | | | | | in the not APIC_IO case. This should silence the warnings when building pcic.c as well as the undefined functions when the kernel links. Noticed by: several people in -current and me building the kernel
* Updated to use new APIC (SMP) safe interrupt register/unregisterroger1999-03-102-7/+48
| | | | | | | functions. Posted for review to -smp and -mobile and -hackers with no objections. Reviewed by: Nate
* Header file for pcic interrupt register/unregister functions.roger1999-03-101-0/+36
| | | | No objections from -smp or -mobile or -hackers.
* On second thought: do previous fux in pcic.c better.guido1999-02-142-9/+3
| | | | Now we just untimeout the call to inserted() if it exists.
* Somehow, it is possible to get a pcicintr() when in the resume process.guido1999-02-141-1/+8
| | | | | | | This will trigger inserted()) to be called twice which confuses pccardd. Add code to not process pcicitr())'s when in the middle of a resume process. The real insertion of cards and the emulated one in the suspend/resume code really do not mix up.
* Add "beep" ioctl. (#10 is reserved for PIOCSVIR)kuriyama1999-02-134-4/+14
| | | | | Obtained from: PAO3 Reviewed by: -current list
* Allow the interrupt allocated to the PCIC to be tuned from the kernelmsmith1999-01-291-1/+13
| | | | | environment by setting the variable machdep.pccard.pcic_irq. If the IRQ is invalid, the PCIC will run in polled mode.
* Fix warnings in preparation for adding -Wall -Wcast-qual to thedillon1999-01-271-4/+4
| | | | | | | kernel compile. This commit includes significant work to proper handle const arguments for the DDB symbol routines.
* Include <sys/select.h> -- don't depend on pollution in <sys/proc.h>.bde1999-01-271-1/+2
|
* Identify the TI1250 PCMCIA/CardBus bridge. It seems that it's compatibletorstenb1999-01-252-2/+5
| | | | to the TI1131. At least it works in my Compaq Armada 7800.
* Initial update pccard code for KLD module support. Module supportpeter1999-01-195-156/+84
| | | | | | however is only marginally useful until the new-style bus (pci and isa) stuff comes onboard to give us a better shot at actually pci and isa drivers loadable (or preloadable anyway).
* probe function changed from returning char * to const char *.dillon1998-12-141-3/+3
|
* The "easy" fixes for compiling the kernel -Wunused: remove unreferenced staticarchie1998-12-071-1/+1
| | | | and local variables, goto labels, and functions declared but not defined.
* Add #include to get a prototype for update_intr_masks().peter1998-11-091-1/+2
|
* - Fix a bug where a "power_off_slot' timeout was not cancelled when thenate1998-09-241-1/+6
| | | | | | | | computer 'suspended', although the slot was powered off. There was a race where the slow could be powered off *after* it was assigned a new driver when the computer was 'resumed'. Noticed by: Brian Somers <brian@Awfulhak.org>
OpenPOWER on IntegriCloud