Commit Graph

131 Commits

Author SHA1 Message Date
dd
e70f6b318d Correct a typo.
PR:		36214
Submitted by:	Nagy Attila <bra@fsn.hu>
2002-03-24 02:34:59 +00:00
shiba
20a87ba61a Add some code which read manufucturer id. This is for NEWCARD compatibility.
Reviewed by: imp
2002-02-20 14:48:23 +00:00
imp
4e1080d4dc 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
844abb905a 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
bf4b2ea40e 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
d3e4b82b69 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
e24b3c902b 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
9860c27835 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
566a98cb13 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
09aa99ee9b 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
88d723fb61 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
obrien
9c97c8f02d 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
dd
911ca14c87 Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
ru
0d5f9334cf mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 15:12:08 +00:00
dd
eaa6ee03b8 mdoc(7) police: remove extraneous .Pp before and/or after .Sh. 2001-07-09 09:54:33 +00:00
dd
04d1b1c8dd Remove duplicate words. 2001-06-24 01:34:38 +00:00
imp
69da75afd3 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
d762ae3867 Add suggested parens around truth value. 2001-05-31 04:37:17 +00:00
imp
189d400eed 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
5a262f2f9a Use constants in <pccard/cis.h> for scannign the memory window with.
Approved by:	imp
2001-05-07 21:58:31 +00:00
dmlb
06904b781a 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
ru
afd506414e - Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.
2001-03-26 14:42:20 +00:00
gj
e795dfb15b 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
4bb5f49662 Prepare for mdoc(7)NG. 2000-12-27 15:30:30 +00:00
toshi
3f9a519b47 Fix output of -v option. 2000-12-24 15:30:36 +00:00
ru
71e2293ad4 mdoc(7) police: use the new features of the Nm macro. 2000-11-20 20:10:44 +00:00
ru
eb8c554f56 mdoc(7) police: use certified section headers wherever possible. 2000-11-17 11:44:16 +00:00
sanpei
2ee7f81b57 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
132dda752c cosmetic: resource -> res 2000-10-13 15:11:48 +00:00
sanpei
ebcd791ed8 print out error reason if it was failed in assign_io
Obtained from:	PAO3
2000-10-10 13:01:18 +00:00
sanpei
65239bc8b2 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
451ab62921 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
8723cf3500 add ``check free resource rage code''
for PC-Card which has no address in cis.
2000-09-21 13:13:00 +00:00
sanpei
2ad52d2b59 fix previous PIOCSRESOURCE code in assign_card_index 2000-09-20 14:54:21 +00:00
sanpei
62e0e10410 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
294b957fa6 Fix typo (rc.conf -> pccard.conf).
Submitted by:	OKAZAKI Tetsurou <okazaki@be.to>
2000-09-15 19:17:40 +00:00
sanpei
c1223233b1 fix multi io window patch(Rev. 1.48)
Submitted by:	iwasaki
Obtained from:	PAO3
2000-09-01 08:51:37 +00:00
ume
1c624ac57c 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
8959045f6e Add documentation on the new logstr command. 2000-07-14 19:54:47 +00:00
imp
acd7546a67 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
cada2988fa Don't call syslog() without a format string. 2000-07-12 01:43:55 +00:00
imp
78429444cb MFPAO vis Iwasaki-san on the train from Tokyo to Osaka.
Document "reset", "iosize" and "memsize".  The code for these was
merged in some time ago.

Reviewed by: iwasaki-san
2000-06-24 05:51:35 +00:00
roberto
cfda42a5ec Fix building with -DDEBUG. 2000-06-18 20:22:11 +00:00
iwasaki
3777474658 Add regex(3) matching feature for card line strings.
- This feature will be enabled only if the string is
   enclosed by '/' something like;
	card "SunDisk" "/.*/"
 - Also added matching additional information strings
   followed by version string.  This is for the card which is
   difficult to idendentify by only the manufacturer and
   card version strings matching.
	card "MACNICA" "MIRACLE SCSI" "mPS100" "D.0"

Reviewed by:	imp
Obtained from:	PAO
2000-05-30 15:33:56 +00:00
iwasaki
4cc2182ced Add CIS string comparison function.
This should solve tentatively the pccardd core dump problem when
there's no CIS (likely CardBus cards).
Later, this function will have regex CIS string comparison capability
too.

Obtained from:	PAO
2000-05-17 18:29:17 +00:00
wpaul
517c12e124 When setting up an iomem resources, remember to set the MEM_ASSIGNED bit
so that pccardd actually does something to set up the memory range.
2000-05-09 22:01:16 +00:00
iwasaki
4a077665a2 Add ioctl() in read_ether() so that pccardd ensure reading its ether
address from the attribute memory area.
2000-05-04 15:38:18 +00:00
iwasaki
2fda642081 MFPAO3. Improvement of of pccard cis tuple parsing capability.
- Fixed bogus CIS tuple dumping (Network node ID, IRQ modes and etc.)
 - Include telling drivers ethernet address if Network node ID
   tuple is available.  This is usefull for some bogus ehter cards which
   can't get correct ethernet address from CIS tupple.

Obtained from:	PAO3
2000-04-26 15:36:43 +00:00
iwasaki
669bd2a6bb MFPAO3. Add support multi io window. This code support following cards;
Accton UE2212
	PLANET-SMART-COM-CREDITCARD-2000
	Melco LPC-T
	ME-3000II
	Laneed LD-CDY
	Melco LPC3-TX

Submitted by:	MIHIRA Sanpei Yoshiro <sanpei@sanpei.org>
Obtained from:	PAO3
2000-04-26 15:11:17 +00:00
iwasaki
60fa3b257b Fix minor bugs.
- reset line number when new file is included.
 - activate `-i' command lline option (specify available IRQ) again.
2000-04-14 18:04:15 +00:00