Commit Graph

1568 Commits

Author SHA1 Message Date
KATO Takenori
3606d88937 Merged from sys/i386/isa/clock.c revision 1.152. 2000-06-28 03:17:51 +00:00
KATO Takenori
8ff264ff5b Merged from sys/i386/conf/GENERIC revisions 1.261 and 1.262. 2000-06-28 03:15:27 +00:00
Peter Wemm
1bce768912 Report the line number where gethints.pl does not understand something
in an old device line.
2000-06-26 09:08:23 +00:00
Mark Murray
0de838f6c0 Remove old entropy-harvesting hooks; this is going to be re-engineered
later.
2000-06-25 09:55:12 +00:00
Mark Murray
7b5362fde0 Remove the old /dev/random device. There is a new machine-independant
version.
Reviewed by:	 dfr
2000-06-25 09:48:12 +00:00
KATO Takenori
16a3f31561 Oops! Disabled the ed driver becasue it cannot be compiled.
Pointed out by:	nyan
2000-06-23 13:51:52 +00:00
KATO Takenori
c12d4fdc56 Include pc98/pc98/pc98.h in which M_EPSON_PC98 is defined when the
EPSON_MEMWIN option is specified.
2000-06-23 12:01:10 +00:00
Yoshihiro Takahashi
9c9e869881 Sync with sys/dev/syscons/scterm-sc.c revisions 1.6 and 1.7. 2000-06-22 10:03:28 +00:00
KATO Takenori
926eda94b9 PC-98 version of ed driver is a statically limited driver.
Pointed out by:	haro@tk.kubota.co.jp (Munehiro Matsuda)
2000-06-21 14:54:19 +00:00
Yoshihiro Takahashi
b5f05e294c Fixed to support RSA98-III non-pnp mode. rman_get_start() had returned
iobase + 8 because the I/O address table for RSA98-III starts with +8.
Now, bus_alloc_resource() is used instead of isa_alloc_resourcev() if
device type is RSA98III.
2000-06-21 11:21:14 +00:00
Peter Wemm
c46d792d58 Deal with quoted arguments. This hack parser uses whitespace to delimit
fields, not lex/yacc grammar so it is not an exact match but should be
close enough for most cases.
Deal with 'port?', 'irq?' style specifications.  These are parsed as
seperate values in lex/yacc in config(8) but tripped up this helper tool.
2000-06-17 20:10:55 +00:00
Peter Wemm
7ebe1c3acf Use while (<>) instead of while(<STDIN>) so that perl will automagically
deal with filename arguments.  It is amazing how much you forget over time.

Thanks to the people that reminded me this.  I knew there was an easy way
that didn't involve messing with $argv, filehandles, etc, but just could
not remember - all of my books are on the opposite side of the planet..
2000-06-17 19:06:13 +00:00
Yoshihiro Takahashi
c04eccbd1e - Moved "hint" informations to GENERIC.hints.
- Cosmetic changes.
2000-06-17 14:46:20 +00:00
KATO Takenori
2d43b347ec Merged from sys/isa/syscons_isa.c revision 1.13. 2000-06-17 04:54:50 +00:00
KATO Takenori
869f0b9b22 bs, olpt, pckbd are static limited devices. 2000-06-17 03:58:06 +00:00
KATO Takenori
bf7c3a8311 Catch up with Peter's config(8) changes. 2000-06-14 09:20:43 +00:00
Peter Wemm
2c7c3a91e9 Print error messages to stderr, not stdout. 2000-06-14 02:45:11 +00:00
Peter Wemm
f71c01cc52 Borrow phk's axe and apply the next stage of config(8)'s evolution.
Use Warner Losh's "hint" driver to decode ascii strings to fill the
resource table at boot time.

config(8) no longer generates an ioconf.c table - ie: the configuration
no longer has to be compiled into the kernel.  You can reconfigure your
isa devices with the likes of this at loader(8) time:
  set hint.ed.0.port=0x320

userconfig will be rewritten to use this style interface one day and will
move to /boot/userconfig.4th or something like that.

It is still possible to statically compile in a set of hints into a kernel
if you do not wish to use loader(8).  See the "hints" directive in GENERIC
as an example.

All device wiring has been moved out of config(8).  There is a set of
helper scripts (see i386/conf/gethints.pl, and the same for alpha and pc98)
that extract the 'at isa? port foo irq bar' from the old files and produces
a hints file.  If you install this file as /boot/device.hints (and update
/boot/defaults/loader.conf - You can do a build/install in sys/boot) then
loader will load it automatically for you.  You can also compile in the
hints directly with:  hints "device.hints"  as well.

There are a few things that I'm not too happy with yet.  Under this scheme,
things like LINT would no longer be useful as "documentation" of settings.
I have renamed this file to 'NOTES' and stored the example hints strings
in it.  However... this is not something that config(8) understands, so
there is a script that extracts the build-specific data from the
documentation file (NOTES) to produce a LINT that can be config'ed and
built.  A stack of man4 pages will need updating. :-/

Also, since there is no longer a difference between 'device' and
'pseudo-device' I collapsed the two together, and the resulting 'device'
takes a 'number of units' for devices that still have it statically
allocated.  eg:  'device fe 4' will compile the fe driver with NFE set
to 4.  You can then set hints for 4 units (0 - 3).  Also note that
'device fe0' will be interpreted as "zero units of 'fe'" which would be
bad, so there is a config warning for this.  This is only needed for
old drivers that still have static limits on numbers of units.
All the statically limited drivers that I could find were marked.

Please exercise EXTREME CAUTION when transitioning!

Moral support by: phk, msmith, dfr, asmodai, imp, and others
2000-06-13 22:28:50 +00:00
KATO Takenori
0f38731801 Merged from sys/i386/i386/machdep.c rev 1.395. 2000-06-13 13:05:51 +00:00
KATO Takenori
e276b136e4 Merged from sys/i386/i386/machdep.c revision 1.394. 2000-06-06 08:21:59 +00:00
KATO Takenori
dc41b25cb0 Merged from sys/i386/isa/{clock.c,npx.c} revisions 1.151 and 1.82,
respectively.
2000-06-06 08:20:22 +00:00
KATO Takenori
031491c0a6 Merged from sys/i386/isa/npx.c revision 1.81. 2000-06-06 08:12:17 +00:00
Yoshihiro Takahashi
932d2288a0 Update of isa drivers using compatability shims to use COMPAT_ISA_DRIVER().
Submitted by:	haro@tk.kubota.co.jp (Munehiro Matsuda)
2000-05-31 10:51:53 +00:00
Yoshihiro Takahashi
6042137954 Sync with sys/isa/ppc.c revision 1.27. 2000-05-31 10:49:58 +00:00
Yoshihiro Takahashi
0a67fdf343 Removed ICMP_BANDLIM option. It no longer exists. 2000-05-31 10:49:19 +00:00
Peter Wemm
23dff9e066 The dreaded isa_compat.h tables are no longer used, so there is no need
for a seperate pc98 version of this stuff.  Applying the same changes
from the i386 version yields identical files so remove these and use the
common ones.
2000-05-28 13:32:49 +00:00
Yoshihiro Takahashi
c4de295680 Fixed header file path (machine/lpt.h -> dev/ppbus/lptio.h). 2000-05-26 12:25:01 +00:00
Yoshihiro Takahashi
6f37f14225 Sync with sys/i386/isa/isa_compat.h revisions 1.28, 1.29 and 1.33. 2000-05-22 13:11:12 +00:00
Peter Wemm
0385347c1a Implement an optimization of the VM<->pmap API. Pass vm_page_t's directly
to various pmap_*() functions instead of looking up the physical address
and passing that.  In many cases, the first thing the pmap code was doing
was going to a lot of trouble to get back the original vm_page_t, or
it's shadow pv_table entry.

Inspired by: John Dyson's 1998 patches.

Also:
Eliminate pv_table as a seperate thing and build it into a machine
dependent part of vm_page_t.  This eliminates having a seperate set of
structions that shadow each other in a 1:1 fashion that we often went to
a lot of trouble to translate from one to the other. (see above)
This happens to save 4 bytes of physical memory for each page in the
system.  (8 bytes on the Alpha).

Eliminate the use of the phys_avail[] array to determine if a page is
managed (ie: it has pv_entries etc).  Store this information in a flag.
Things like device_pager set it because they create vm_page_t's on the
fly that do not have pv_entries.  This makes it easier to "unmanage" a
page of physical memory (this will be taken advantage of in subsequent
commits).

Add a function to add a new page to the freelist.  This could be used
for reclaiming the previously wasted pages left over from preloaded
loader(8) files.

Reviewed by:	dillon
2000-05-21 12:50:18 +00:00
Yoshihiro Takahashi
3ec91ea962 Sync with sys/i386/conf/GENERIC revisions from 1.246 to 1.256. 2000-05-19 16:36:42 +00:00
Yoshihiro Takahashi
7c14268dbd Supported the mss on PC-98 and Sound Blaster 98.
Submitted by:	"T.Yamaoka" <taka@windows.squares.net>
2000-05-19 15:41:52 +00:00
Archie Cobbs
2e2de7f23f Move code to handle BPF and bridging for incoming Ethernet packets out
of the individual drivers and into the common routine ether_input().
Also, remove the (incomplete) hack for matching ethernet headers
in the ip_fw code.

The good news: net result of 1016 lines removed, and this should make
bridging now work with *all* Ethernet drivers.

The bad news: it's nearly impossible to test every driver, especially
for bridging, and I was unable to get much testing help on the mailing
lists.

Reviewed by:	freebsd-net
2000-05-14 02:18:43 +00:00
Yoshihiro Takahashi
0f90341e15 Use bus_space stuff except where it needs high performance. 2000-05-12 12:38:25 +00:00
Poul-Henning Kamp
9626b608de Separate the struct bio related stuff out of <sys/buf.h> into
<sys/bio.h>.

<sys/bio.h> is now a prerequisite for <sys/buf.h> but it shall
not be made a nested include according to bdes teachings on the
subject of nested includes.

Diskdrivers and similar stuff below specfs::strategy() should no
longer need to include <sys/buf.> unless they need caching of data.

Still a few bogus uses of struct buf to track down.

Repocopy by:    peter
2000-05-05 09:59:14 +00:00
Yoshihiro Takahashi
987887c000 GENERIC98 -> GENERIC 2000-05-05 08:03:31 +00:00
KATO Takenori
c3a6416c86 Rename GENERIC98 to GENERIC. 2000-05-04 04:58:30 +00:00
Peter Wemm
365c5db0a7 Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
Peter Wemm
ab063af911 Move the MSG* and SEM* options to opt_sysvipc.h
Remove evil allocation macros from machdep.c (why was that there???) and
use malloc() instead.
Move paramters out of param.h and into the code itself.
Move a bunch of internal definitions from public sys/*.h headers (without
#ifdef _KERNEL even) into the code itself.

I had hoped to make some of this more dynamic, but the cost of doing
wakeups on all sleeping processes on old arrays was too frightening.
The other possibility is to initialize on the first use, and allow
dynamic sysctl changes to parameters right until that point. That would
allow /etc/rc.sysctl to change SEM* and MSG* defaults as we presently
do with SHM*, but without the nightmare of changing a running system.
2000-05-01 13:33:56 +00:00
Yoshihiro Takahashi
517b2a8d5c Clean up MAXMEM routine.
Submitted by:	"K.Magara" <magara@maizuru-ct.ac.jp>
2000-04-30 08:52:47 +00:00
Yoshihiro Takahashi
de64b8c968 Fixed to support JIS7 KANJI.
Submitted by:	Nobuyuki Koganemaru <kogane@koganemaru.co.jp>
2000-04-30 08:40:43 +00:00
Poul-Henning Kamp
87150cb06d s/biowait/bufwait/g
Prodded by: several.
2000-04-29 16:25:22 +00:00
Poul-Henning Kamp
eb95c536ad Remove unneeded #include <sys/kernel.h> 2000-04-29 15:36:14 +00:00
Yoshihiro Takahashi
e73f2591dc Fixed typo. 2000-04-29 05:55:33 +00:00
Yoshihiro Takahashi
d3331668b3 Supported EGC 640x400, PEGC 640x400 and PEGC 640x480 graphics modes.
Submitted by:	Chiharu Shibata <chi@bd.mbn.or.jp> and
		Tomokazu HARADA <tkhara@osk4.3web.ne.jp>
2000-04-27 13:34:32 +00:00
Yoshihiro Takahashi
cd6f7fcd8d machine/random.h -> sys/random.h 2000-04-27 13:13:43 +00:00
Yoshihiro Takahashi
f23d815dbd Add wormio.h. The wd driver needs it. 2000-04-27 13:09:07 +00:00
Yoshihiro Takahashi
b81eb9cfd6 Sync with sys/i386/conf/GENERIC revision 1.252. 2000-04-23 09:04:42 +00:00
Yoshihiro Takahashi
4b38c2c0ac Release allocated resources and return ENXIO on error. 2000-04-22 15:12:52 +00:00
Poul-Henning Kamp
3389ae9350 Remove ~25 unneeded #include <sys/conf.h>
Remove ~60 unneeded #include <sys/malloc.h>
2000-04-19 14:58:28 +00:00
Poul-Henning Kamp
0991b97a30 Convert three drivers not covered by any of our kernel configs.
We really need a LINT98 and possibly LINTALPHA kernels.
2000-04-18 13:21:46 +00:00
Warner Losh
487e50ecdb hm committed newbused vt driver this weekend, so it is no longer needed
in isa_compat.

LINT now builds again.
2000-04-17 23:01:53 +00:00
Poul-Henning Kamp
8177437d85 Complete the bio/buf divorce for all code below devfs::strategy
Exceptions:
        Vinum untouched.  This means that it cannot be compiled.
        Greg Lehey is on the case.

        CCD not converted yet, casts to struct buf (still safe)

        atapi-cd casts to struct buf to examine B_PHYS
2000-04-15 05:54:02 +00:00
Yoshihiro Takahashi
e81dafee50 Added wdreg.h. PC-98 still uses the wd driver. 2000-04-14 11:29:15 +00:00
Yoshihiro Takahashi
f71c82a792 Added wdreg.h and fixed path. 2000-04-13 10:37:49 +00:00
KATO Takenori
df01d25d3e Include pc98.h instead of isareg.h.
Submitted by:	Akio Morita <amorita@meadow.scphys.kyoto-u.ac.jp>
Reminded by:	nyan
2000-04-12 14:08:02 +00:00
KATO Takenori
86cc4d7dfa - Fixed counter number (timer2 -> timer1).
- Fixed operator in pcaintr (andb -> orb).

Pointed out by:	nyan
2000-04-12 13:19:44 +00:00
Yoshihiro Takahashi
00add4ed4f The nss driver is compatible mode.
Submitted by:	Akio Morita <amorita@meadow.scphys.kyoto-u.ac.jp>
2000-04-12 13:02:54 +00:00
KATO Takenori
cae3675927 Merged from sys/i386/isa/isa_compat.c revisions 1.19 and 1.20. 2000-04-12 11:23:16 +00:00
Yoshihiro Takahashi
4b00895121 Newbusify adv driver.
Reviewed by:	imp
2000-04-07 11:32:42 +00:00
Poul-Henning Kamp
c244d2de43 Move B_ERROR flag to b_ioflags and call it BIO_ERROR.
(Much of this done by script)

Move B_ORDERED flag to b_ioflags and call it BIO_ORDERED.

Move b_pblkno and b_iodone_chain to struct bio while we transition, they
will be obsoleted once bio structs chain/stack.

Add bio_queue field for struct bio aware disksort.

Address a lot of stylistic issues brought up by bde.
2000-04-02 15:24:56 +00:00
KATO Takenori
769e7115b7 Merged from sys/isa/sio.c revisions 1.293 and 1.294. 2000-04-01 11:27:31 +00:00
Peter Wemm
255108f385 Make sysv-style shared memory tuneable params fully runtime adjustable
via sysctl.  It's done pretty simply but it should be quite adequate.
Also move SHMMAXPGS from $machine/include/vmparam.h as the comments that
went with it were wrong... we don't allocate KVM space for the pages so
that comment is bogus..  The only practical limit is how much physical
ram you want to lock up as this stuff isn't paged out or swap backed.
2000-03-30 07:17:05 +00:00
Warner Losh
5664bf9cea NewBus the cs driver.
Submitted by: max@rsu.ru
2000-03-30 05:16:16 +00:00
Yoshihiro Takahashi
239fe111cd - Added PC-98 Cbus frontend.
- Move dev/aic/aic_isa.c entry from conf/files to conf/files.MACHINE
   because PC-98 uses different file.

Submitted by:	nyan and IMAI Takeshi <take-i@ceres.dti.ne.jp>
2000-03-29 14:32:34 +00:00
Yoshihiro Takahashi
3de3db30db Newbusify mse driver. 2000-03-29 14:23:16 +00:00
KATO Takenori
af5d822f28 Commented out apm0. It could cause hang-up. 2000-03-29 13:39:15 +00:00
Yoshihiro Takahashi
6566129694 - Supported display suspended mode.
- Switch on/off not only text screen but also graphic screen.

Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
2000-03-29 12:29:27 +00:00
Yoshihiro Takahashi
8b838a7ac2 Merge from the following changes.
File				Revision
sys/conf/files.i386		1.303 and 1.304
sys/dev/kbd/atkbd.c		1.23
sys/dev/syscons/scterm-sc.c	1.2
sys/dev/syscons/scvgarndr.c	1.5
sys/dev/syscons/scvtb.c		1.5
sys/dev/syscons/syscons.c	1.335
sys/isa/syscons_isa.c		1.11
sys/isa/vga_isa.c		1.17
2000-03-29 12:26:41 +00:00
KATO Takenori
a729b39d7c Merged from sys/isa/fd.c revision 1.180. 2000-03-28 15:09:13 +00:00
KATO Takenori
ab067f0297 Merged from sys/i386/i386/userconfig.c revision 1.179. 2000-03-28 15:07:28 +00:00
KATO Takenori
d46a1af4b6 Merged from sys/i386/i386/machdep.c revision 1.387. 2000-03-28 15:04:29 +00:00
KATO Takenori
6eeafd696c Merged from sys/i386/isa/clock.c and sys/isa/sio.c revisions 1.150 and
1.292, respectively.
2000-03-23 08:55:45 +00:00
KATO Takenori
bef3dd268d Removed B_READ and B_WRITE. 2000-03-23 08:53:15 +00:00
KATO Takenori
aad7652706 Disable fdctl_wr_foo. This feature is not supported by PC98. 2000-03-23 08:50:56 +00:00
Yoshihiro Takahashi
9d97e36cc4 Added the joy driver (commented out).
Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
2000-03-22 03:19:37 +00:00
Yoshihiro Takahashi
562039fa5b Fixed style bugs. 2000-03-20 14:50:48 +00:00
KATO Takenori
de6c289a4d Removed old boot loader. 2000-03-20 12:14:12 +00:00
Poul-Henning Kamp
b99c307a21 Rename the existing BUF_STRATEGY() to DEV_STRATEGY()
substitute BUF_WRITE(foo) for VOP_BWRITE(foo->b_vp, foo)

substitute BUF_STRATEGY(foo) for VOP_STRATEGY(foo->b_vp, foo)

This patch is machine generated except for the ccd.c and buf.h parts.
2000-03-20 11:29:10 +00:00
Poul-Henning Kamp
21144e3bf1 Remove B_READ, B_WRITE and B_FREEBUF and replace them with a new
field in struct buf: b_iocmd.  The b_iocmd is enforced to have
exactly one bit set.

B_WRITE was bogusly defined as zero giving rise to obvious coding
mistakes.

Also eliminate the redundant struct buf flag B_CALL, it can just
as efficiently be done by comparing b_iodone to NULL.

Should you get a panic or drop into the debugger, complaining about
"b_iocmd", don't continue.  It is likely to write on your disk
where it should have been reading.

This change is a step in the direction towards a stackable BIO capability.

A lot of this patch were machine generated (Thanks to style(9) compliance!)

Vinum users:  Greg has not had time to test this yet, be careful.
2000-03-20 10:44:49 +00:00
KATO Takenori
bf8a6679dc Merged from sys/isa/fd.c. 2000-03-19 15:18:22 +00:00
KATO Takenori
7c0e7abcf9 Merged from sys/i386/i386/userconfig.c rev 1.178. 2000-03-19 14:46:22 +00:00
KATO Takenori
9b8b69aae4 Added COMPAT_OLDPCI and COMPAT_OLDISA options. 2000-03-19 14:42:52 +00:00
Yoshihiro Takahashi
1bb26f3a43 Fixed header file path and added necessary file. 2000-03-17 12:56:23 +00:00
Yoshihiro Takahashi
05f94cca19 Sync with sys/i386/i386/userconfig.c revision 1.175 and 1.176. 2000-03-17 12:24:59 +00:00
Yoshihiro Takahashi
54bfac8fdc Backed out ppc0 flags addtion. It isn't necessary without PPC_PROBE_CHIPSET
option.

Pointed out by:	peter
2000-03-17 11:37:03 +00:00
Yoshihiro Takahashi
2b60363d7f Fixed to probe extended memory for over 256M or under 64M.
Submitted by:   chi@bd.mbn.or.jp (Chiharu Shibata)
2000-03-16 12:14:00 +00:00
Yoshihiro Takahashi
a97d495cb9 Fixed to support old parallel interface.
Submitted by:   chi@bd.mbn.or.jp (Chiharu Shibata)
2000-03-16 12:06:29 +00:00
Yoshihiro Takahashi
13b6f8f604 Added 'flags 0x40' to ppc0. 2000-03-16 12:03:36 +00:00
Yoshihiro Takahashi
1a9a318055 Changed sio1 flags to 0x12000010 to enable serial console.
Submitted by:   IMAI Takeshi <take-i@ceres.dti.ne.jp>
2000-03-16 11:53:16 +00:00
Poul-Henning Kamp
d8b47cbb70 Stop isadma from abusing the B_READ, B_RAW and B_WRITE flags.
Define ISADMA_{READ,WRITE,RAW} macros with the same numeric
values as the B_{READ,WRITE,RAW} and use them instead throughout.
2000-03-13 10:19:32 +00:00
KATO Takenori
5a9a82e820 Merged from sys/isa/sio.c revision 1.291. 2000-03-12 13:14:51 +00:00
KATO Takenori
e299a9db22 Merged from sys/isa/sio.c revisions 1.289 and 1.290. 2000-03-10 10:34:36 +00:00
KATO Takenori
f1b7989974 Merged from sys/i386/isa/isa_compat.h revision 1.27. 2000-03-01 08:56:47 +00:00
KATO Takenori
bb8a9f4d25 Merged from sys/i386/i386/userconfig.c revision 1.174. 2000-03-01 08:55:23 +00:00
KATO Takenori
ce4274863e Merged from sys/i386/i386/machdep.c revisions 1.384 and 1.385. 2000-03-01 08:53:59 +00:00
KATO Takenori
9c675e3c19 Merged from sys/i386/conf/GENERIC revisions 1.243, 1.244 and 1.245. 2000-03-01 08:52:28 +00:00
KATO Takenori
df16ced79a Merged from sys/isa/sio.c rev 1.288. 2000-02-17 15:09:12 +00:00
KATO Takenori
baf67f3c77 Synced with sys/i386/i386/userconfig.c rev 1.173. 2000-02-17 14:45:05 +00:00
Peter Wemm
242c5536ea Clean up some loose ends in the network code, including the X.25 and ISO
#ifdefs.  Clean out unused netisr's and leftover netisr linker set gunk.
Tested on x86 and alpha, including world.

Approved by:	jkh
2000-02-13 03:32:07 +00:00
KATO Takenori
6ccd04a652 Synced with sys/dev/syscons/syscons.c rev 1.336. 2000-02-11 08:54:56 +00:00