summaryrefslogtreecommitdiffstats
path: root/sys/pccard/pcic.c
Commit message (Collapse)AuthorAgeFilesLines
...
* Uninitialized pointer reference may happen on particular environment.hosokawa1998-03-191-1/+6
| | | | (for example, it kills my new laptop, Toshiba Libretto 100....)
* - Remove the code that cleared out the registers (previously enabled by thenate1997-12-021-7/+0
| | | | | | | | option PCIC_NOCLRREGS). This is now the default behavior since it's apparently required for the CLPD6832, and doesn't negatively affect any of my test machines. Requested by: Ted Faber <faber@ISI.EDU>
* - Remove PCI code from here, now that the PCI framework lives in /sys/pci.nate1997-12-021-86/+5
|
* - Renamed 'card.h' to 'cardinfo.h', to avoid namespace collisions withnate1997-11-181-1/+1
| | | | | | the card.h that config builds. [ Repository renaming done in the background to save the card.h history ]
* MF22:nate1997-11-151-1/+1
| | | | | | | | | | | | (update_intr_masks might not need to be done in 3.X, but the new generic interrupt code is incomplete w/regard to support for the PCCARD code, so to avoid any potential problems use it. It can't hurt). - Correctly register pcic_imask with the system interrupt code. - Call update_intr_masks() so that pcic_imask modifications that occur when card interrupts are registered get updated in the system interrupt code.
* - Reset the pcic controller interrupt 'poll' timeout *after* we call thenate1997-11-041-6/+6
| | | | interrupt routine.
* - More style nits (sorry, I should have done this last time).nate1997-10-281-10/+10
|
* - Style nit.nate1997-10-281-20/+20
|
* - Do a bunch of gratuitous changes intended to make the code easier tonate1997-10-261-76/+75
| | | | | | | | | | | | follow. * Rename/reorder all of the pccard structures, change many of the member names to be descriptive, and follow more closely other 'bus' drivers naming schemes. * Rename a bunch of parameter and local variable names to be more consistant in the code. * Renamed the PCCARD 'crd' device to be the 'card' device * KNF and make the code consistant where it was obvious. * ifdef'd out some unused code
* - KNF the PCI stuff, no functional changes.nate1997-10-251-20/+24
|
* - Recognize the Cirrus Logic PD6729/6730 PC-Card Controller behind thenate1997-10-241-2/+13
| | | | | | | | PCI bus. [ Re-organized the code to be easier to extend, based on Michael's patch ] Submitted by: Michael Reifenberger <root@totum.plaut.de>
* LEarn about the TI 1131.wollman1997-10-171-0/+2
|
* - Fix braino in last commit.nate1997-10-061-11/+3
|
* Modem cards send the speaker audio (dialing noises) to the host'snate1997-10-061-18/+41
| | | | | | | | | speaker. Cirrus Logic PCIC chips must enable this. There is also a Low Power Dynamic Mode bit that claims to reduce power consumption by 30%, so enable it and hope for the best. PR: 4650 Submitted by: Nick Sayer <nsayer@quack.kfu.com>
* - Don't start at IRQ 0 in build-freelist, but instead start at IRQ 1.nate1997-10-061-1/+1
| | | | (Not sure if this makes muich difference, but you never know.)
* - Style policenate1997-10-061-21/+21
| | | | | | - Updated some comments using data from the most recent PAO release. Obtained (partially) from: PAO-970616
* Update for new callout interface.gibbs1997-09-211-3/+5
|
* Oops, unremoved used #include.bde1997-07-211-0/+3
|
* Use soft_imask instead of SWI_MASK in the LKM version. SWI_MASK shouldn'tbde1997-07-211-6/+1
| | | | | | | have been visible in LKMs, since it had the wrong value for the APIC_IO case. Removed unused #includes.
* Make this puppy compile again - add two includes.jkh1997-06-011-0/+2
|
* Don't apply 5V when we want 3.3V.phk1997-05-221-1/+9
| | | | | Kludge around the case where the PCIC refuses to use 5V because it knows better than us.
* Recognize, but don't actually do much with a TI PCI1130 PcCard/CardBus bridge.phk1997-05-031-0/+65
|
* 1. i82365.h: Chip identifiers should not be #ifdef PC98. Add identifierphk1997-04-201-40/+60
| | | | | | | | | | (pt. unused) for TI PCI1130. 2. pccard.c: PCIC_RESUME_RESET is now (also) a sysctl. (Never make it a #ifdef if it can be made a sysctl!) 3. pcic.c: make getb() and putb() proper member functions of struct pcic_slot. Add a couple of missing casts.
* Make MOD_* macros almost consistent:dufault1997-04-061-1/+2
| | | | | | | | | | | | | | | | | | | | Use the name argument almost the same in all LKM types. Maintain the current behavior for the external (e.g., modstat) name for DEV, EXEC, and MISC types being #name ## "_mod" and SYCALL and VFS only #name. This is a candidate for change and I vote just the name without the "_mod". Change the DISPATCH macro to MOD_DISPATCH for consistency with the other macros. Add an LKM_ANON #define to eliminate the magic -1 and associated signed/unsigned warnings. Add MOD_PRIVATE to support wcd.c's poking around in the lkm structure. Change source in tree to use the new interface. Reviewed by: Bruce Evans
* Argh, this time get the parentheses right. This hasn't been a good day for me.nate1997-02-211-3/+3
|
* Whoops, make sure we have enough parenthesis.nate1997-02-211-1/+1
| | | | Pointed out by: bde
* Try to make the BROKEN_VLSI chipset detection better, and not breaknate1997-02-181-2/+8
| | | | | | | | | | | | non-broken chipssets whose ID is 0x84, such as the one found in the NEC 6030H. > The code relies on the assumption that on a genuine_broken vlsi, you > don't get 0x84 when probing slot 1 in the normal location. On the versa I > do get 0x84 when probing slot 1 in the normal location. What you get on > genuine_broken at the normal slot 1 location is unknown to me; Submitted by: Chris Timmons <skynyrd@opus.cts.cwu.edu>
* One other minor include file change.nate1997-01-141-2/+3
| | | | Submitted by: bde
* Include file cleanups.nate1997-01-131-23/+4
| | | | Submitted by: bde
* Initialize pcic_imask with SWI_MASK to interference from timeout routines.nate1997-01-111-0/+1
| | | | Suggested by: bde
* Whoops, typo.nate1997-01-111-1/+1
|
* Update the PCIC controller's imask with individual slot IRQ's.nate1997-01-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Assuming that the intr_mask[] was updated by changing the maskptrs (the existing update_intr_masks() function will not work) this code was written so the PCIC controller insertion/removal events will not interrupt the card IRQ handler events. Some possible scenarios: + Card is removed during IRQ handler: - PCIC card handler is allowed to interrupt - card removal event is called, removing the driver and data structures * card interrupt handler continues w/out driver, data structures, and hardware OR (the code just committed) * card IRQ handler has no hardware to read/write to, but has code and data to run on (XXX- Assume it completes and doesn't spin forever) - PCIC card handler unloads the card driver The current situation at least leaves the card interrupt handlers the drivers and data structures to work with although the hardware can't be guaranteed. Reviewed by: bde
* Now that all of the IRQ's should be allocated by the time thisnate1997-01-111-3/+40
| | | | | | | pccard_configure() is called (except for LKm's :( ), build a list of unassigned interrupts for the PCCARD code to use. Reviewed by: bde
* - Added PCIC resume functionnate1997-01-081-35/+29
| | | | | | - Cleaned up VLSI-PCIC work-around code Submitted by: nate & the Nomads
* - Don't include <machine/laptops.h>. It was a kludge I should nevernate1996-09-071-1/+0
| | | | have imported.
* Yet another merge. Remove support.s by deleting memcopy. Removeasami1996-09-071-3/+1
| | | | | | autoconf.c by merging icu.h. Fix a couple of typos. Submitted by: The FreeBSD(98) Development Team.
* Remove devconf, it never grew up to be of any use.phk1996-09-061-39/+0
|
* The Great PC98 Merge.asami1996-06-141-0/+235
| | | | | | | | All new code is "#ifdef PC98"ed so this should make no difference to PC/AT (and its clones) users. Ok'd by: core Submitted by: FreeBSD(98) development team
* Adds the APM hooks into the generic pccard kernel files. With this codenate1996-04-231-1/+3
| | | | | | | | | in place device drivers can now register power-down/power-up routines so that we can use common routines to power-up/power-down cards for insert/removals, suspend/resume, etc.. Reviewed by: phk Submitted by: the 'Nomads'
* Changed #includes of <i386/include/foo.h> to #includes of <machine/foo.h>.bde1996-04-071-2/+1
|
* pccard.c:gpalmer1996-04-061-0/+2
| | | | | | | | #include <i386/include/clock.h> to get sysbeep() prototype pcic.c: add appropriate #ifdef around a prototype to quiet GCC because fn decl. is also #ifdef'd.
* Removed un-used code.nate1996-02-211-12/+0
|
* Updated PC-CARD support to contain most of the code from the latestnate1996-02-211-12/+103
| | | | | | | Japanese BSD-Nomad release. Reviewed by: phk Submitted by: hosokawa@mt.cs.keio.ac.jp and the rest of the Nomads
* Don't rely on the card 'automatically' powering up when we probe it.nate1996-01-061-2/+2
| | | | | | | | | | | On some laptops, this doesn't work (ie; IBM 75x series), so force it to power on. With this modification, I am able to read the tuples off 4 different PCMCIA cards on my ThinkPad. Reviewed by: phk@FreeBSD.org Obtained from: if_zp.c
* Completed function declarations and/or added prototypes and/or addedbde1995-12-161-1/+2
| | | | #includes to get prototypes.
* Make the LKM version compile again.phk1995-11-211-4/+3
| | | | Pointed out by: Michael Smith <msmith@atrad.adelaide.edu.au>
* Changed the first (name) arg of MOD_DEV(), MOD_EXEC() and MOD_MISC()bde1995-11-141-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | from a string to an identifier so that it can be used to generate declarations and strings. It's much easier to stringize an identifier than to identifize a string. A uniform naming scheme must be used for the automatically generated things to apply. This is a feature. Used the module identifer to generate prototypes for the module load, unload and stat functions. Removed the few prototypes for these that already existed. Used the module identifier to generate a unique struct tag in MOD_DEV(). This should probably be done for all the MOD_*() macros. Moved the trailing semicolon from the MOD_*() macro definitions to the macro invocations that didn't already (bogusly) have it. Staticized the module load and unload functions. Added function return types for the module load, unload and stat functions. lkm/ibcs2/ibcs2.c: Included <sys/sysproto.h> to get everything prototyped. Cleaned up #includes. lkm/ibcs2/ipfw.c: Cleaned up #includes. lkm/linux/linux.c: The module name had to change from "linux_emulator" to "linux_mod" to be automatically generated. Cleaned up #includes. lkm/syscons/*/*_saver.c: Completed delcarations of function pointers. sys/i386/isa/atapi.c: The module name had to change from "atapi" to "atapi_mod" to be automatically generated. sys/i386/isa/wcd.c: Used the fixed MOD_DEV(). This module has two devices and expanded the macro in the source instead of fixing it. The module names had to change from "wcd" and "rwcd" to "wcd_mod" and "rwcd_mod" to be automatically generated. sys/pccard/pcic.c: The module name had to change from "pcic" to "pcic_mod" to be automatically generated.
* Fixed the type of yet another timeout function.bde1995-11-131-7/+8
| | | | | | | Fixed the type of pcic_unload(). Replaced nosys() by lkm_nullcmd() in pcic_mod() and in a misplaced comment about the lkm interface.
* Clean up the ident style.phk1995-11-091-317/+327
| | | | | | | Remove the APM stuff Add support for VA469 Submitted by: Janic.Thaillandier@ratp.fr
* Fixed the type of a timeout function and an interrupt mask variable.bde1995-11-091-3/+3
|
OpenPOWER on IntegriCloud