Commit Graph

195 Commits

Author SHA1 Message Date
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
dmlb
386e9afad3 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
162a118d7d 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
dc9de76619 Removed the NOSHARED bit. 2001-04-02 07:27:46 +00:00
ru
afd506414e - Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.
2001-03-26 14:42:20 +00:00
ru
f10dc9aca1 Set the default manual section for usr.sbin/ to 8. 2001-03-20 18:17:26 +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
835a46c9c2 mdoc(7) police: do not split author names in the AUTHORS section. 2000-11-22 09:35:58 +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
9c17a07343 add PC-Card melody beep(PC Card bus, kludge version)
Original idea from:	PAO3
2000-10-28 13:35:34 +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
sheldonh
8deb3ff4ab 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
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
a272c78c36 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
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
iwasaki
6927b5bc64 Add restart capability by SIGHUP. On restart, working configuration
(resource and card configuration being used) is to be maintained for
consistency.  Part of resource pool re-initialization would be rewrite
later using on Warner-san's hints driver API :-)

Reviewed by:    nate, imp and -nomads ML in Japan.
Obtained from:  http://www.freebsd.org/~iwasaki/pccard/pccardd-signal.diff
Commited at:    BSD HANAMI Party 2000 in Japan
2000-04-08 05:19:44 +00:00
iwasaki
d32d2f4d4f MFPAO: support wildcard entry for generic serial and fixed
disk as fallthrough entry.

Submitted by:	MIHIRA Sanpei Yoshiro <sanpei@sanpei.org>, iwasaki
Reviewed by:	imp, -mobile ML and nomads ML in Japan
Obtained from:	http://www.freebsd.org/~iwasaki/pccard/pccardd-generic.diff
		http://home.jp.freebsd.org/~sanpei/4-current/usr.sbin-pccard-pccardd.diff
2000-04-05 18:39:21 +00:00
iwasaki
6b6649defb - default config file changed from /etc/pccard.conf to
/etc/defaults/pccard.conf in pccardd. But system default pccardd
  config file is still /etc/pccard.conf.sample specified in /etc/rc.conf
  for the testing this changes.
- improved `include' keyword function for error handling.
- now that resource pool (io, irq, mem) can be overridden.
- pccard config entries is searched following the first match rule if
  there are more than two entries which have the same card identifier.

Note that the /etc/defaults/pccard.conf related files is not committed
at this time, will come a week later.  I'll prepare the test version
of /etc/defaults/pccard.conf, /etc/pccard.conf and other files soon.

Reviewed by:	imp and nomads in Japan.
2000-03-30 16:01:37 +00:00
sheldonh
b2240fc1c0 Remove single-space hard sentence breaks. These degrade the quality
of the typeset output, tend to make diffs harder to read and provide
bad examples for new-comers to mdoc.
2000-03-01 14:09:25 +00:00
iwasaki
6d698ef3f5 Merge from PAO; Add new keywords for pccard.conf, auto and default.
This will help importing pccard entries (and users :) from PAO
into -CURRENT.
2000-01-26 17:54:00 +00:00
iwasaki
fc58a07bed Merge from PAO3 -- Quick fix a bug which assign_driver() checks wrong
member variable to find the configuration on new driver allocation.
Correct condition is that card_config and driver are not in use.  Both
of them are cleared in card_removed() (conf->driver->card never be
cleared).

This fix problems `No free configuration for card' on insertion, and
pccardd core dump on removal in condition of the same driver but
different card.

Also this might be emergency measures, complete solution would be made
after Hosokawa-san come back.

Consulted with:	imp
Waiting for:	hosokawa
2000-01-24 13:15:05 +00:00
hosokawa
aab344a69c Added "attr2" MAC address encoding (used by Megahertz Ethernet Card)
support.

Reviewed by:	Warner Losh <imp@village.org>
Obtained from:	PAO
2000-01-21 09:12:00 +00:00
hosokawa
721d34c8d9 This fixes a bug that /etc/pccard_ether did not work without DHCP.
For example, when /etc/pccard.conf had ed0 in config line, but kernel
refused this name and said

devclass_alloc_unit: ed0 already exists, using next availale unit
number

Kernel used ed1 as device name and it did not match with config and
insert/remove lines.  Fortunately, dhclient was called without args,
and it works, but if we wanted to use static IP address for PC-card,
it did not work.

This modification makes pccardd to execute insert/remove lines with
the true device name that returns from kernel.  (Last change to
etc/pccard.conf.sample eliminated all hardwired device name from
insert/remove lines in /etc/pccard.conf)
2000-01-16 06:44:48 +00:00
marcel
5ed0012e79 Remove -g compiler flag. 2000-01-03 12:01:30 +00:00
imp
21e16d7051 Version 1.16 was a bad change, so revert it. 1999-12-08 18:12:02 +00:00
imp
6cc83bf12d If last state was supended, remove the card. This is a kludge, there
is a race here that the old code didn't deal with, and I'm not
completely sure this is the right way to solve it, but it works here.

Should get rid of the dreaded "No free configuration for card" message.
1999-12-08 07:47:41 +00:00
imp
0e463632a3 Bump CIS_MAXSTR from 30 to 254. pccard appears to define the entire
section we take them from to be up to 255 bytes long, so that's the
max size for the string.  They can't all be this big, but I don't have
a better number and better to be a little long than a little short.

Also only consume len characters of the cis buffer so we don't run off
the end into the next buffer and get garbage.  This second patch
shouldn't impact anything, but I'll hold off back porting this to
-stable until I get more reports on the stability before/after this
fix.
1999-12-07 19:23:56 +00:00
imp
c97e39268b Fix typo from last commit.
Noticed by: Maxim Sobolev <sobomax@altavista.net>
1999-12-02 19:31:28 +00:00
imp
fa8350304d Forgotten part of pccardc power command 1999-12-02 05:56:36 +00:00
imp
5a3a6c5951 Implement pccardc power command. This allows one to power off
individual slots at one's whim.  Useful for turning the slots into
card carrying cases, etc.  Patch was originally from mihira-san in
message to freebsd-mobile.  He ported the code originally from PAO.

Submitted by: MIHIRA Sanpei Yoshiro <sanpei@sanpei.org>
1999-12-02 05:52:58 +00:00
peter
efabb9ccb1 $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
hosokawa
b22fe64f8a Added "include" feature to pccard.conf to put the default pccard.conf
entries in /etc/defaults/.
1999-08-17 03:38:51 +00:00
imp
564b182ca1 o Add "debuglevel" keyword to config file.
o Document debug level keyword
o Implement debug level:
	o For most of the diagnostic messages, change them from #ifdef DEBUG
	  to if (debuglevel > 0).
	o Add a couple more diagnostic messages that weren't present before
	o Fix a couple of excessively long lines.
Reviewed by: hosokawa-san

o Start to implement the stopgap kludge for -current's pccard code by passing
  the length of the i/o range.  If DEV_DESC_HAS_SIZE is defined, we'll set
  the size.  This is done as an ifdef so that I can generate patches
  against the kernel more easily.
o Add preliminary support for tweaking sleep times, but leave it
  disabled until a good range of values can be established.

Didn't fix: logmsg problem noted by Nate.
1999-08-01 18:04:26 +00:00
hosokawa
021a163935 Set correct "flags" value when pccardd allocates/initializes driver. 1999-07-23 14:58:33 +00:00
hosokawa
dc44066b55 Removed a very very old hack (I disabled it in PAO long time ago)
that existed in original PC-card driver for FreeBSD 2.0 (maybe).
This prevents from utilizing flags for drivers.
1999-07-23 08:53:20 +00:00
hosokawa
8f4f22aaa5 Sorry, I forgot to test "iosize auto" before merging "iosize" patch. 1999-07-23 02:01:19 +00:00
hosokawa
0967207c88 Inappropriate commment for -i option. 1999-07-23 01:46:47 +00:00
hosokawa
6ba53a2e29 Added "iosize" directive in /etc/pccard.conf
Allocate free I/O window with given size to card.

(example)
# IBM PCMCIA Ethernet I/II
card "IBM Corp." "Ethernet"
	config	0x1 "ed0" ?
	iosize	32
	ether	0xff0

(it's currently only useful for externalizing hacks for broken CIS cards,
 but it will play an important role with "function" directive I'm planninng
 to merge)

Reviewed by:	freebsd-mobile list
Obtained from:	PAO3's "cardio" directive
1999-07-23 01:33:34 +00:00
hosokawa
563a4c8cb2 Release IRQ allocated dynamically. 1999-07-23 00:12:22 +00:00
imp
edc82f2b81 Fix a dangling else warning from new egcs. 1999-07-15 03:04:31 +00:00
nik
559bbb333e Add $Id$, to make it simpler for members of the translation teams to
track.

The Id line is normally at the bottom of the main comment block in the
man page, separated from the rest of the manpage by an empty comment,
like so;

     .\"    $Id$
     .\"

If the immediately preceding comment is a @(#) format ID marker than the
the $Id$ will line up underneath it with no intervening blank lines.
Otherwise, an additional blank line is inserted.

Approved by:            bde
1999-07-12 20:12:29 +00:00
hosokawa
c8760ef377 pccard_beep parameter is not supported by rc.conf and rc.pccard of -current.
(I'll port it later...)
1999-06-30 04:16:08 +00:00
hosokawa
b741c9ce12 Added -z and -i option. 1999-06-30 03:49:30 +00:00
hosokawa
cd20be7e99 FreeBSD does supports LKM now.
PR: doc/10331
Reviewed by: mpp@freebsd.org
Submitted by: Andreas Gustafsson <gson@araneus.fi>
1999-06-29 23:59:15 +00:00
mpp
89db2f3e26 Minor mdoc fix. 1999-06-26 23:16:40 +00:00
markm
21c748c149 More uncontroversial PAO updates. Make the IRQ wildcarding work a lot better,
and improve the daemonizing code.

Submitted by: Tatsumi HOSOKAWA
1999-06-17 21:07:59 +00:00
kuriyama
9823b67503 Fix typo.
Submitted by:	Hiroki Sato <hrs@geocities.co.jp>
1999-05-10 22:01:38 +00:00
kuriyama
3daf801302 Activate pccardc.8. 1999-05-03 11:20:15 +00:00
kuriyama
b1b9afbc88 New translation of pccardc.8.
Obtained from:	PAO (written in Japanese)
Reviewed by:	bsd-nomads@clave.gr.jp
		freebsd-mobile@freebsd.org
		Randy Bush <randy@psg.com>
		Bill Trost <trost@grey.cloud.rain.com>
		Bruce Campbell <bc@apnic.net>
1999-05-02 16:33:13 +00:00
imp
60e55d5faa When printing out V1 info, make sure that there is additional info
before printing it.  Terminate when we come to a 0xff byte.  This
allows there to be zero or more additional info fields printed
correctly.  Before, the old code would print bogons or dump core when
presented with this case.

I don't know what the spec says about this, exactly, but this allows
me to do a dumpcis of my non-ATA AMP 4M FLASH cards w/o pccardc
dumping core.
1999-03-13 04:41:35 +00:00
kuriyama
6df3a4da61 Cleanup usage of err() and warn().
Add error handling for ioctl().

Reviewed by:	-current
Obtained from:	PAO
1999-02-27 12:08:02 +00:00
kuriyama
8883e5d538 Add "beep" subcommand.
Obtained from:	PAO3
Reviewed by:	-current list
1999-02-13 11:32:01 +00:00
kuriyama
bb6581fcda Use O_RDONLY and O_RDWR for open() instead of number.
Encouraged by:	Nate
1999-02-05 16:00:17 +00:00
kuriyama
8e2b9b4978 s/card.conf/pccard.conf/ 1999-02-05 15:59:57 +00:00
guido
b0b895bf98 When resuming with 2 identical cards in 2 slots, the initialisation
of the second card fails. This fixes that.
1999-01-10 13:00:09 +00:00
kuriyama
6c6616f30e Fix typo. 1998-12-10 22:07:06 +00:00
hosokawa
de1c025be0 Keywords "iosize" and "memsize" are unused since 1.5. Removed. 1998-04-25 18:10:10 +00:00
hosokawa
3513b406d6 #define'd KWD_XXX for keywords. 1998-04-25 17:52:15 +00:00
nate
d41836ff17 - Argh, fix stupid logic error in the laststate/state fix previously. That's
what I get for trying to do too many things at once.
1998-04-20 16:24:03 +00:00
nate
56e458e6ec - Don't try and keep track of the previous state, since the kernel may
change it w/out informing the program.  Instead, use the (now available)
  previous state returned by the kernel to make intelligent card
  removal/insertion decisions.
1998-04-20 15:24:28 +00:00
nate
54cd1c491d MF22: Finish fixing 'looping' bug. 1998-04-20 05:42:26 +00:00
nate
be1676525f - If we see a tuple we don't expect, don't spin forever. Withouth this fix,
I can't run pccardc dumpcis on my Wavelan card. :(

Obtained from:	PAO
1998-04-19 18:41:45 +00:00
charnier
6e321f37d4 .Sh AUTHOR -> .Sh AUTHORS. Use .An/.Aq. 1998-03-23 08:31:20 +00:00
hosokawa
f4dbb36a3e Some parameter was left uninitialized when the card with incomplete
"Version 1" CIS tupple is plugged after normal card.
1998-03-20 04:49:19 +00:00
hosokawa
971d61ef3e Reviewed by: mike@smith.net.au
Submitted by:	nate@mt.sri.com
Removed global variables. (and style(9) fix.)
1998-03-09 05:18:59 +00:00
guido
fb33e403b2 bit_nset was not correctly used. 1998-03-02 20:51:06 +00:00
guido
8b76f70d01 Fix use of bit_nclear. Amazing that we didn't get more complaints
about inserting 2 pcmcia cards.
1998-03-02 19:00:01 +00:00
hosokawa
68d701fa42 Removed a confusing "#if 0 ... #endif". 1998-02-27 09:47:36 +00:00
hosokawa
d746039957 Removed "#define EXTERN" because this file doesn't have main(). 1998-02-27 08:40:53 +00:00
hosokawa
ffec1d6f3e Moved main() to a new file (pccardd.c). 1998-02-27 08:19:25 +00:00
hosokawa
7dc5b867a8 Removed unused #include and unneccesary comments. 1998-02-27 08:00:18 +00:00
hosokawa
43502abbcd "pccardc dumpcis" does not need write permission of /dev/card?. 1998-02-27 07:27:27 +00:00
nate
1587a18c3e - <pccard/card.h> doesn't exist in -current, so use the include file
<pccard/cardinfo.h>.  I don't know if this will compile, but at least
  it's using an include file that exists.

Forgotten by:	hosokawa
1998-02-27 05:12:48 +00:00
hosokawa
728f78d263 added "rdattr" (read attribute memory) function. 1998-02-26 14:36:01 +00:00
guido
1c9cf806f1 This seems to fix my problem that after resume/suspend, sometimes
pccard claims that the driver is already allocated.
It works around a race when pccardd gets woken up too late after a resume.

This is a 2.2.6 candidate.
Reviewed by:	nate@freebsd.org
1998-02-04 20:19:39 +00:00
hoek
100ffb8b0a Use consistent spelling,
writeable -> writable (recall prior debate over this? :-)
	initialise -> initialize
	recognise -> recognize

Merry Christmas! :)
1997-12-25 09:36:42 +00:00
nate
db661a8b0c - Changed strcmp to strncmp for checking the CIS manufacturer strings,
since we only store CIS_MAXSTR data, and the users may stick the
  'entire' CIS string returned from the card in /etc/pccard.conf and
  cause the comparison to (bogusly) fail.

Submitted by:	Brad Karp <karp@eecs.harvard.edu>
1997-12-08 06:35:07 +00:00