| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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().
|
|
|
|
|
|
| |
(2) Add braces to avoid ambigious if/if/else
Reviewed by: bde
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
files. config will leave the whole file out if configured to do so.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
#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.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
PR: 11413
Submitted by: Christopher Peterson <cpeterso@cs.washington.edu>
|
|
|
|
|
| |
With this addition my ThinkPad 600E works with the stock FreeBSD
PCMCIA code.
|
|
|
|
|
|
| |
pccard_remove_beep.
Submitted by: PAO
|
|
|
|
|
|
|
| |
Remove useless initialization of static variable to 0.
Move static variable declaration into the only function that uses
it.
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
hurt the driver portability to 3.x too much for where drivers are shared.
|
|
|
|
| |
for LKM's..
|
|
|
|
|
|
|
| |
broadening chipset support in -current.
Reviewed by: joerg
Obtained from: PAO
|
|
|
|
|
|
| |
actually work.
Reviewed by: "Sean O'Connell" <sean@stat.Duke.EDU>, msmith
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
functions.
Posted for review to -smp and -mobile and -hackers with no objections.
Reviewed by: Nate
|
|
|
|
| |
No objections from -smp or -mobile or -hackers.
|
|
|
|
| |
Now we just untimeout the call to inserted() if it exists.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Obtained from: PAO3
Reviewed by: -current list
|
|
|
|
|
| |
environment by setting the variable machdep.pccard.pcic_irq. If
the IRQ is invalid, the PCIC will run in polled mode.
|
|
|
|
|
|
|
| |
kernel compile.
This commit includes significant work to proper handle const arguments
for the DDB symbol routines.
|
| |
|
|
|
|
| |
to the TI1131. At least it works in my Compaq Armada 7800.
|
|
|
|
|
|
| |
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).
|
| |
|
|
|
|
| |
and local variables, goto labels, and functions declared but not defined.
|
| |
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
My laptop (a CTX Cybernote) needs this. It claims to have a
PC-Card VLSI 82C146 (5 mem & 2 I/O windows)
|
|
|
|
|
| |
o update skel.c to lots of stuff that has happened since the last time
it was updated.
|
|
|
|
|
|
|
|
|
| |
We do the same thing we do with all the other Vadem chips and print the
right identification for these chips. Tested with the 365, and inferred
for the 465.
This allows the cheapo PCMCIA card that I got from necx to print the right
chip number on boot.
|
| |
|
|
|
|
| |
integers. Don't forget to cast to (void *) as well.
|
|
|
|
|
|
| |
`void *' arg. Fixed or hid most of the resulting type mismatches.
Handlers can now be updated locally (except for reworking their
global declarations in isa_device.h).
|
|
|
|
|
|
|
|
|
|
| |
FreeBSD/alpha. The most significant item is to change the command
argument to ioctl functions from int to u_long. This change brings us
inline with various other BSD versions. Driver writers may like to
use (__FreeBSD_version == 300003) to detect this change.
The prototype FreeBSD/alpha machdep will follow in a couple of days
time.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
was really removed, or simply 'faked' by a suspend/resume. Keep track
of both current and previous state, and send that information to the
userland programs.
[
XXX - This breaks binary compatability with older pccardd programs, but
they don't work reliably. :(
]
|
|
|
|
| |
controller hasn't been assigned an IRQ.
|
| |
|
|
|
|
|
|
| |
the patch I just submitted.
Noticed by: phk
|
|
|
|
|
|
|
|
| |
correctly unregister the interrupt from the system.
[ My fix is much simpler than the one provided in the PR ]
PR: 6249
|
|
|
|
| |
(for example, it kills my new laptop, Toshiba Libretto 100....)
|