Commit Graph

199 Commits

Author SHA1 Message Date
Warner Losh
0becf102d7 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
Warner Losh
56578b06a0 Add suggested parens around truth value. 2001-05-31 04:37:17 +00:00
Warner Losh
eae79da24b 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
Duncan Barclay
3105a10149 Use constants in <pccard/cis.h> for scannign the memory window with.
Approved by:	imp
2001-05-07 21:58:31 +00:00
Duncan Barclay
05ce3194c4 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
Duncan Barclay
dfb0b4cf55 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
Ruslan Ermilov
a381d6c906 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
Ruslan Ermilov
393a5770a8 Removed the NOSHARED bit. 2001-04-02 07:27:46 +00:00
Ruslan Ermilov
345e52e742 - Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.
2001-03-26 14:42:20 +00:00
Ruslan Ermilov
c73e22c3d4 Set the default manual section for usr.sbin/ to 8. 2001-03-20 18:17:26 +00:00
Gary Jennejohn
27ba031dff 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
Ruslan Ermilov
8b5c4af3ff Prepare for mdoc(7)NG. 2000-12-27 15:30:30 +00:00
Toshihiko ARAI
05546286ff Fix output of -v option. 2000-12-24 15:30:36 +00:00
Ruslan Ermilov
f4d874a1db mdoc(7) police: do not split author names in the AUTHORS section. 2000-11-22 09:35:58 +00:00
Ruslan Ermilov
e97407b4f2 mdoc(7) police: use the new features of the Nm macro. 2000-11-20 20:10:44 +00:00
Ruslan Ermilov
251c176f41 mdoc(7) police: use certified section headers wherever possible. 2000-11-17 11:44:16 +00:00
MIHIRA Sanpei Yoshiro
33eb563d67 add PC-Card melody beep(PC Card bus, kludge version)
Original idea from:	PAO3
2000-10-28 13:35:34 +00:00
MIHIRA Sanpei Yoshiro
2a2e255b8a 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
MIHIRA Sanpei Yoshiro
49ff3907a6 cosmetic: resource -> res 2000-10-13 15:11:48 +00:00
MIHIRA Sanpei Yoshiro
29d26e2f27 print out error reason if it was failed in assign_io
Obtained from:	PAO3
2000-10-10 13:01:18 +00:00
Sheldon Hearn
2687ca9f97 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
MIHIRA Sanpei Yoshiro
6b164dd5b7 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
MIHIRA Sanpei Yoshiro
975ce2575a 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
MIHIRA Sanpei Yoshiro
45d54d7ee2 add ``check free resource rage code''
for PC-Card which has no address in cis.
2000-09-21 13:13:00 +00:00
MIHIRA Sanpei Yoshiro
7e30ab7168 fix previous PIOCSRESOURCE code in assign_card_index 2000-09-20 14:54:21 +00:00
MIHIRA Sanpei Yoshiro
ec2892ee0c pccard_beep parameter was already supported by rc.conf.
(removed in Rev.1.3)(A(B
2000-09-17 16:37:36 +00:00
MIHIRA Sanpei Yoshiro
5935ef4c44 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
Mitsuru IWASAKI
ca2df34a1c Fix typo (rc.conf -> pccard.conf).
Submitted by:	OKAZAKI Tetsurou <okazaki@be.to>
2000-09-15 19:17:40 +00:00
MIHIRA Sanpei Yoshiro
06f748444a fix multi io window patch(Rev. 1.48)
Submitted by:	iwasaki
Obtained from:	PAO3
2000-09-01 08:51:37 +00:00
Hajimu UMEMOTO
e0faad6850 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
Warner Losh
4abef49222 Add documentation on the new logstr command. 2000-07-14 19:54:47 +00:00
Warner Losh
6c726135ad 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 Kennaway
9a47755d7c Don't call syslog() without a format string. 2000-07-12 01:43:55 +00:00
Warner Losh
097a95ebd9 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
Ollivier Robert
61ea53372a Fix building with -DDEBUG. 2000-06-18 20:22:11 +00:00
Mitsuru IWASAKI
6ebef682a8 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
Mitsuru IWASAKI
83896393a6 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
Bill Paul
2aea9e28cb 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
Mitsuru IWASAKI
10e6817efc 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
Mitsuru IWASAKI
1f4b0b5767 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
Mitsuru IWASAKI
b254720a71 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
Mitsuru IWASAKI
44e02d51e5 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
Mitsuru IWASAKI
83471a4c3c 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
Mitsuru IWASAKI
1ea7ed21c8 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
Mitsuru IWASAKI
891c44eae2 - 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
Sheldon Hearn
f2e366a105 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
Mitsuru IWASAKI
41c8853867 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
Mitsuru IWASAKI
29d1eb210d 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
Tatsumi Hosokawa
eac3536941 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
Tatsumi Hosokawa
a7da6b679e 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 Moolenaar
c292cf660e Remove -g compiler flag. 2000-01-03 12:01:30 +00:00
Warner Losh
17c770d7e5 Version 1.16 was a bad change, so revert it. 1999-12-08 18:12:02 +00:00
Warner Losh
f077fb2703 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
Warner Losh
87db5eaa0d 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
Warner Losh
677c39ac03 Fix typo from last commit.
Noticed by: Maxim Sobolev <sobomax@altavista.net>
1999-12-02 19:31:28 +00:00
Warner Losh
8622777b8e Forgotten part of pccardc power command 1999-12-02 05:56:36 +00:00
Warner Losh
78944e7259 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 Wemm
97d92980a9 $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
Tatsumi Hosokawa
0e568d4b12 Added "include" feature to pccard.conf to put the default pccard.conf
entries in /etc/defaults/.
1999-08-17 03:38:51 +00:00
Warner Losh
673b7bf483 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
Tatsumi Hosokawa
bcb5ab3765 Set correct "flags" value when pccardd allocates/initializes driver. 1999-07-23 14:58:33 +00:00
Tatsumi Hosokawa
f22ff34fba 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
Tatsumi Hosokawa
1b19dea47d Sorry, I forgot to test "iosize auto" before merging "iosize" patch. 1999-07-23 02:01:19 +00:00
Tatsumi Hosokawa
6886e4d9be Inappropriate commment for -i option. 1999-07-23 01:46:47 +00:00
Tatsumi Hosokawa
35e42bac95 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
Tatsumi Hosokawa
bff5ef3ac9 Release IRQ allocated dynamically. 1999-07-23 00:12:22 +00:00
Warner Losh
c0c4dbc6d4 Fix a dangling else warning from new egcs. 1999-07-15 03:04:31 +00:00
Nik Clayton
414a35e60a 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
Tatsumi Hosokawa
0f1bf4524a 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
Tatsumi Hosokawa
04b21fd64b Added -z and -i option. 1999-06-30 03:49:30 +00:00
Tatsumi Hosokawa
3e478b3901 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
Mike Pritchard
25b6a7d131 Minor mdoc fix. 1999-06-26 23:16:40 +00:00
Mark Murray
9c0592b821 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
Jun Kuriyama
e948f24a53 Fix typo.
Submitted by:	Hiroki Sato <hrs@geocities.co.jp>
1999-05-10 22:01:38 +00:00
Jun Kuriyama
86779ad4dd Activate pccardc.8. 1999-05-03 11:20:15 +00:00
Jun Kuriyama
8c4110d213 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
Warner Losh
f229c04eef 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
Jun Kuriyama
7164b74e64 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
Jun Kuriyama
f1165987f1 Add "beep" subcommand.
Obtained from:	PAO3
Reviewed by:	-current list
1999-02-13 11:32:01 +00:00
Jun Kuriyama
3e8f7cf5f9 Use O_RDONLY and O_RDWR for open() instead of number.
Encouraged by:	Nate
1999-02-05 16:00:17 +00:00
Jun Kuriyama
8877f51e9e s/card.conf/pccard.conf/ 1999-02-05 15:59:57 +00:00
Guido van Rooij
67c431ff57 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
Jun Kuriyama
f8a882d809 Fix typo. 1998-12-10 22:07:06 +00:00
Tatsumi Hosokawa
9b473222be Keywords "iosize" and "memsize" are unused since 1.5. Removed. 1998-04-25 18:10:10 +00:00
Tatsumi Hosokawa
af5311ffe2 #define'd KWD_XXX for keywords. 1998-04-25 17:52:15 +00:00
Nate Williams
d0c0b545a7 - 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 Williams
2d4c8d9d6c - 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 Williams
8ff8eb13f7 MF22: Finish fixing 'looping' bug. 1998-04-20 05:42:26 +00:00
Nate Williams
c4bf475b75 - 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
Philippe Charnier
f12a14713b .Sh AUTHOR -> .Sh AUTHORS. Use .An/.Aq. 1998-03-23 08:31:20 +00:00
Tatsumi Hosokawa
7d0ec55f03 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
Tatsumi Hosokawa
bc01c37da5 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 van Rooij
2dbace9154 bit_nset was not correctly used. 1998-03-02 20:51:06 +00:00
Guido van Rooij
8393eb700a 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
Tatsumi Hosokawa
cf76d25ad9 Removed a confusing "#if 0 ... #endif". 1998-02-27 09:47:36 +00:00
Tatsumi Hosokawa
07131beb35 Removed "#define EXTERN" because this file doesn't have main(). 1998-02-27 08:40:53 +00:00
Tatsumi Hosokawa
1b39ab6931 Moved main() to a new file (pccardd.c). 1998-02-27 08:19:25 +00:00
Tatsumi Hosokawa
d50ea5b440 Removed unused #include and unneccesary comments. 1998-02-27 08:00:18 +00:00
Tatsumi Hosokawa
26e41202ec "pccardc dumpcis" does not need write permission of /dev/card?. 1998-02-27 07:27:27 +00:00
Nate Williams
f8a88fe654 - <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