Commit Graph

166 Commits

Author SHA1 Message Date
shiba
a510b2c554 Add some code which read manufucturer id. This is for NEWCARD compatibility.
Reviewed by: imp
2002-02-20 14:48:23 +00:00
imp
08bd33abdf Update length more correctly when parsing a cis info field.
Before, we were using
	while (*p++ && --len > 0);
to do this.  However, len doesn't get decremented for the NUL byte, so when
we used len later to see if we still have CIS left for some optional fields,
we'd run off the end of an array and dump core.

Instead, replace it with
	len -= strlen(p) + 1;
	p += strlen(p) + 1;
which is more correct.  It is a little bogus to assume that p points to
a valid C string, but only a little.  The PC Card SPEC mandates that it
does, and we already depend on that with the use of strdup a few lines
earlier.  Since much of the rest of the cis parsing code isn't hyper
retentive about error checking, I'll leave that level of checking for
another time and/or another committer :-).
2002-01-06 18:03:55 +00:00
iwasaki
d3d3759831 Fix a bug about CIS string comparison. Pccardd should be able to distinguish
card "MELCO" "LPC2-T"
and
	card "MELCO" "LPC2-TX"
by this fix.

Reported by:	Kitagawa Shoichi <sk@xstar.kiu.ac.jp>,
		NINOMIYA Hideyuki <nin@shikoku.ne.jp>
MFC after:	1 week
2001-11-29 14:33:57 +00:00
imp
b5e56ba9ba Always set unit number to -1 unless some other unit is specified in
the config file.  This fixes the breakage caused by the recent change
in the behavior of device_add_child for ata (which shows soren's
reservations were well founded).

Submitted by:	OGAWA Takaya <t-ogawa@triaez.kaisei.org>
2001-11-02 17:28:43 +00:00
imp
3391d8db30 Don't core dump if we can't get the index automatically.
Debug info from:	Ben Hockenhull <benh@jpj.net>
2001-10-05 20:38:32 +00:00
non
73357cb1c1 Change the access width of memory window from 8 bits to 16 bits.
16 bits access is required by nsp driver to work in SMIT mode.
Since previously (1.65 and before in current, and 1.46.28 and before
in stable branch) 16 bits access was default, I hope it will break nothing.

Okayed-by: imp
2001-09-04 04:40:09 +00:00
imp
18915fe3f7 Fix ISA machines. Also, make it possible for the new pccardd to run
on older kernels correctly.  Terminate the loop when we find a
suitable irq.  Also, only try to select from the pool.  Cleaned up the
two cases (IRQ picked by the user and ?) into one.

MFC upon re approval.
2001-08-19 19:16:26 +00:00
imp
a3fd828ddb Ask the kernel about IRQ 0 first. If the kernel responds with an IRQ,
use it.  If not, then loop asking for each one, with normal -I
processing.  This will effectively disable -I for when the pcic is in
PCI function interrupt routing mode.
2001-08-14 19:18:33 +00:00
imp
98e35a9cd0 Only try to allocated properly aligned I/O segments. This should stop
some of the config problems that we've been seeing (where wi0 tries to
allocate 0x138-0x198, for example).

Use err(1,"foo") rather than perror + exit while I'm here.
2001-08-02 07:06:32 +00:00
imp
abf825601c Have pccardd always ask the kernel for the IRQ to use. The kernel
will soon return the irq from the pcic bridge in cases where't that's
appropriate.

Note: I've had to disbale -I option for the moment.  I've made it easy
to reenable it for people that need it.

MFC After: soon!
2001-07-31 06:12:01 +00:00
imp
5267dfb65d Improve wording for pccard memory assignement.
Document intended correct behavior for pccardc power and how it interacts
with suspend/resume.
2001-07-27 06:32:20 +00:00
obrien
4b92fa588b Perform a major cleanup of the usr.sbin Makefiles.
These are not perfectly in agreement with each other style-wise, but they
are orders of orders of magnitude more consistent style-wise than before.
2001-07-20 06:20:32 +00:00
obrien
b64625adfb Remove GCC'isms in CFLAGS. 2001-07-20 04:23:13 +00:00
dd
7d1013753f Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
ru
5617dbcc22 mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 15:12:08 +00:00
dd
978810079e mdoc(7) police: remove extraneous .Pp before and/or after .Sh. 2001-07-09 09:54:33 +00:00
dd
520fa8f9e1 Remove duplicate words. 2001-06-24 01:34:38 +00:00
imp
3ea89f1b8f Resetting using COR bit 7 appears to be bad on pci based systems.
#ifdef it out for now.
2001-06-04 07:41:05 +00:00
imp
4cb0516764 Add suggested parens around truth value. 2001-05-31 04:37:17 +00:00
imp
e2d522c3a3 From the PR:
The PCCard daemon can hang indefinately while reading its
	configuration file. If the last line of the file is a comment line
	that does not end in a newline, the program goes into an infinite
	loop searching for the non-existent newline.

This fix, provided by the PR, will allow files ending without a newline
to be read without hanging.

Submitted by: Crist J. Clark <cjclark@alum.mit.edu>
PR: bin/25791
2001-05-30 21:45:50 +00:00
dmlb
94169659c4 Use constants in <pccard/cis.h> for scannign the memory window with.
Approved by:	imp
2001-05-07 21:58:31 +00:00
dmlb
e33c5ff0f7 Ensure that pccardd sets up memory windows correctly for drivers other
than if_ed. The code for if_ed to set the offset and memory width
remains.

Approved by:	imp
2001-05-07 21:56:57 +00:00
dmlb
0c00e59bba Fix a minor printing bug that prints incorrect information for memory
block sizes.

This orginally worked in PAO-3 and worked on their r330 branch but got
broken in PAO-3 around December 1998!

Approved by:	imp
Obtained from:	PAO-3
2001-05-07 21:51:54 +00:00
ru
0326d42906 Backout revision 1.6 (removed the NOSHARED bit.)
These must be compiled static so that it is possible
to use them early in the boot process.

Requested by:	imp
2001-04-02 08:47:25 +00:00
ru
e759df540b Removed the NOSHARED bit. 2001-04-02 07:27:46 +00:00
ru
b15a893144 - Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.
2001-03-26 14:42:20 +00:00
ru
42350947e7 Set the default manual section for usr.sbin/ to 8. 2001-03-20 18:17:26 +00:00
gj
bba8b29dc7 Use vsnprintf in logmsg() to avoid overflowing the array on the stack.
The problem was noted with an older model 3Com 3C589 which seems
to return more than 256 bytes of data.
2001-02-25 19:52:42 +00:00
ru
522216623a Prepare for mdoc(7)NG. 2000-12-27 15:30:30 +00:00
toshi
2b9855af0a Fix output of -v option. 2000-12-24 15:30:36 +00:00
ru
cff3f1a066 mdoc(7) police: do not split author names in the AUTHORS section. 2000-11-22 09:35:58 +00:00
ru
c3189e713e mdoc(7) police: use the new features of the Nm macro. 2000-11-20 20:10:44 +00:00
ru
77559ae015 mdoc(7) police: use certified section headers wherever possible. 2000-11-17 11:44:16 +00:00
sanpei
4dda8545f9 add PC-Card melody beep(PC Card bus, kludge version)
Original idea from:	PAO3
2000-10-28 13:35:34 +00:00
sanpei
570de28bbf add -I option, ``Don't get and use a list of free
IRQs from kernel.''..

With IBM ThinkPad600.  ``sio1'' was disabled in BIOS
and irq 3 was free (also not listed in dmesg), I think.
But I could not use irq 3 for PC-Card with new(PIOCSRESOURCE
ioctl enabled) pccardd.
2000-10-20 13:08:18 +00:00
sanpei
7b09c45c49 cosmetic: resource -> res 2000-10-13 15:11:48 +00:00
sanpei
22e199d220 print out error reason if it was failed in assign_io
Obtained from:	PAO3
2000-10-10 13:01:18 +00:00
sheldonh
a2dc5f0833 Fix abuse of the Pa, Nm and Ar macros. This necessitated a rewording
of the description for the "power" internal command.

Reviewed by:	sanpei
2000-10-05 07:18:59 +00:00
sanpei
7fe55eb5ba check {IO,IRQ}_ASSIGNED flags before
release {io,irq} resources.

fix multi io window in release io routine

PR:		20454
2000-10-04 15:22:09 +00:00
sanpei
26b5cf578e fix some minor problem in PIOCSRESOURCE ioctl.
- If resource which was allocated for pcic was
  requested via this ioctl, bus_alloc_resource
  would be succeeded and that resource was
  returned as free resource.  So check whether
  requested resource was used for pcic or not
  before bus_alloc_resource test.

- merge SYS_RES_IRQ routine into other SYS_RES_*
  routine and clean up.

problem reported by:	Yohei Terada <terada@jiro.c.u-tokyo.ac.jp>
2000-10-01 12:36:14 +00:00
sanpei
59ef536c4d add ``check free resource rage code''
for PC-Card which has no address in cis.
2000-09-21 13:13:00 +00:00
sanpei
a81de55d66 fix previous PIOCSRESOURCE code in assign_card_index 2000-09-20 14:54:21 +00:00
sanpei
ae974aa25a pccard_beep parameter was already supported by rc.conf.
(removed in Rev.1.3)(A(B
2000-09-17 16:37:36 +00:00
sanpei
b7b2e21255 add PIOCSRESOURCE(IOC_GET_RESOURCE_RANGE)
Now /usr/sbin/pccardd read free resource(io,irq) range with
this ioctl.

Original Idea from:	PAO3
2000-09-17 15:37:53 +00:00
iwasaki
016590b285 Fix typo (rc.conf -> pccard.conf).
Submitted by:	OKAZAKI Tetsurou <okazaki@be.to>
2000-09-15 19:17:40 +00:00
sanpei
c344a8dd37 fix multi io window patch(Rev. 1.48)
Submitted by:	iwasaki
Obtained from:	PAO3
2000-09-01 08:51:37 +00:00
ume
c8ab4476bb Add UNIX domain socket feature to pccardd. This makes pccard
related PAO3/ports such as gxcardmon work.

Reviewed by:	imp
Obtained from:	PAO3
2000-08-20 16:16:57 +00:00
imp
b1c73fd7ac Add documentation on the new logstr command. 2000-07-14 19:54:47 +00:00
imp
7ccc05f810 Add new keyword "logstr". By default, we now use syslog outselves to
log insert/remove events using the logstr, if specified for that card,
or the manufacturer + version strings from the cis if not.  This
eliminates the need to have logger in the pccard.conf file which makes
it easier to move pcardd to /sbin later if we need to.  This also
reduces the pccard.conf file size from 53k to 28k, which will help the
install disk a little.

Also, minor cleanup of free usage (if (x != NULL) free(x); is
identical to free(x); for all versions of C that we care about).

Reviewed by: iwasaki (who proposed the logstr keyword).

Documentation and fixes to pccard.conf to follow.
2000-07-14 19:46:35 +00:00
kris
d9046a4f4a Don't call syslog() without a format string. 2000-07-12 01:43:55 +00:00