Commit Graph

6212 Commits

Author SHA1 Message Date
msmith
171c883fd5 Remove an unnecessary panic when sparse PCI bus numbering is encountered.
This is found eg. on some Compaq  Proliant systems.

Submitted by:	peter
1999-06-22 20:54:25 +00:00
yokota
4f4eb0cfe5 The second phase of syscons reorganization.
- Split syscons source code into manageable chunks and reorganize
  some of complicated functions.

- Many static variables are moved to the softc structure.

- Added a new key function, PREV.  When this key is pressed, the vty
  immediately before the current vty will become foreground.  Analogue
  to PREV, which is usually assigned to the PrntScrn key.
  PR: kern/10113
  Submitted by: Christian Weisgerber <naddy@mips.rhein-neckar.de>

- Modified the kernel console input function sccngetc() so that it
  handles function keys properly.

- Reorganized the screen update routine.

- VT switching code is reorganized.  It now should be slightly more
  robust than before.

- Added the DEVICE_RESUME function so that syscons no longer hooks the
  APM resume event directly.

- New kernel configuration options: SC_NO_CUTPASTE, SC_NO_FONT_LOADING,
  SC_NO_HISTORY and SC_NO_SYSMOUSE.
  Various parts of syscons can be omitted so that the kernel size is
  reduced.

  SC_PIXEL_MODE
  Made the VESA 800x600 mode an option, rather than a standard part of
  syscons.

  SC_DISABLE_DDBKEY
  Disables the `debug' key combination.

  SC_ALT_MOUSE_IMAGE
  Inverse the character cell at the mouse cursor position in the text
  console, rather than drawing an arrow on the screen.
  Submitted by: Nick Hibma (n_hibma@FreeBSD.ORG)

  SC_DFLT_FONT
  makeoptions "SC_DFLT_FONT=_font_name_"
  Include the named font as the default font of syscons.  16-line,
  14-line and 8-line font data will be compiled in.  This option replaces
  the existing STD8X16FONT option, which loads 16-line font data only.

- The VGA driver is split into /sys/dev/fb/vga.c and /sys/isa/vga_isa.c.

- The video driver provides a set of ioctl commands to manipulate the
  frame buffer.

- New kernel configuration option: VGA_WIDTH90
  Enables 90 column modes: 90x25, 90x30, 90x43, 90x50, 90x60.  These
  modes are mot always supported by the video card.
  PR: i386/7510
  Submitted by: kbyanc@freedomnet.com and alexv@sui.gda.itesm.mx.

- The header file machine/console.h is reorganized; its contents is now
  split into sys/fbio.h, sys/kbio.h (a new file) and sys/consio.h
  (another new file).  machine/console.h is still maintained for
  compatibility reasons.

- Kernel console selection/installation routines are fixed and
  slightly rebumped so that it should now be possible to switch between
  the interanl kernel console (sc or vt) and a remote kernel console
  (sio) again, as it was in 2.x, 3.0 and 3.1.

- Screen savers and splash screen decoders
  Because of the header file reorganization described above, screen
  savers and splash screen decoders are slightly modified.  After this
  update, /sys/modules/syscons/saver.h is no longer necessary and is
  removed.
1999-06-22 14:14:06 +00:00
peter
64e8e1a4e0 Handle suspend/resume methods
Obtained from: Warner Losh <imp@freebsd.org>
1999-06-22 09:44:00 +00:00
grog
ded53d5e01 Correct description of Vinum. 1999-06-20 04:35:22 +00:00
jkh
123a8903b7 Clean up some of the documentation at the top. 1999-06-20 03:36:46 +00:00
rnordier
a65645ce8a Goodbye to vaules, becasue, similiar, backgroud, aquired, freelisat, etc. 1999-06-19 20:20:52 +00:00
green
c9de5b7165 K6-family MTRR support
This is tested, but I really can't say whether it works entirely. I
don't know exactly what to look for when testing it. So let's say this
is open for testing. Send any results to green@FreeBSD.org

Reviewed by:	msmith (long ago)
1999-06-18 19:56:02 +00:00
green
6284b6ea4d Harmless change to prevent possible problems in the future. I made
sure that i686_mem was only used when
	1. CPUID had MTRR set (this was there before)
	2. the CPU was GenuineIntel (not there)
	3. the CPU is a 686 (also not there)

This should prevent any problems with CPUs that set MTRR but aren't
compatibile with Intel's interface (none that I know of yet.)
1999-06-18 19:24:40 +00:00
bde
72f8c1311e Changed the global `idt' from an array to a pointer so that npx.c
automatically hacks on the active copy of the IDT if f00f_hack()
has changed it.  This also allows simplifications in setidt().
This fixes breakage of FP exception handling by rev.1.55 of
sys/kernel.h.  FP exceptions were sent to npx.c's probe handlers
because npx.c "restored" the old handlers to the wrong copy of the
IDT.  The SYSINIT for f00f_hack() was purposely run quite late to
avoid problems like this, but it is bogusly associated with the
SYSINIT for proc0 so it was moved with the latter.

Problem reported and fix tested by:  Martin Cracauer <cracauer@cons.org>
1999-06-18 14:32:21 +00:00
markm
396943f469 Add a kernel config for PC-Card machines. This is part of the
(safe) PAO integration.

Submitted by:	Tatsumi HOSOKAWA
1999-06-17 23:53:20 +00:00
tegge
c3bdb5a79b Clean up bitrot in interrupt tracing code. 1999-06-16 03:53:52 +00:00
julian
d58122c6dd Add a couple of command definitions.
Also add offsets into the IDE parameter block so that it is humanly
possible to match the structure to the manufacturer's documentation.
(basically this is just changes to comments)
1999-06-15 23:13:09 +00:00
des
5d9e5afb2b Kill option FAILSAFE.
PR:		i386/12187
Approved by:	bde
1999-06-15 13:14:56 +00:00
alc
70fc5132d7 Use pmap_kenter instead of pmap_enter to map the message buffer. 1999-06-13 19:20:25 +00:00
jlemon
500be34fdd Change variable used for calculating ending address of physical memory
from 'int' to 'vm_offset_t'.

Spotted by:	 Richard Cownie <tich@ma.ikos.com>
1999-06-10 02:48:51 +00:00
dt
024e4a4a7e Use kmem_alloc_nofault() rather than kmem_alloc_pageable() to allocate
kernel virtual address space for UPAGES.
1999-06-08 17:14:22 +00:00
steve
b7a6590c61 The FD options are now in /sys/conf/options so need to duplicate them
here and keep people from building new kernels. :)
1999-06-06 22:45:04 +00:00
wpaul
be5f98696c Small optimization: use wi_seek() in wi_read_record() and wi_write_record()
instead of frobbing the buffer access path registers directly. Saves a
few lines of duplicated code.
1999-06-06 16:44:04 +00:00
phk
05395ae05f Reserve cdev major 126 for sync support. 1999-06-06 10:41:35 +00:00
luoqi
758e37e0fb Fix an accounting problem when prefaulting 4M pages.
PR:		kern/11948
1999-06-05 16:16:37 +00:00
bde
8e183f96d3 Fixed null setting of `rc_started'. This was fixed for the
corresponding variable `rc_wakeup_started' in rev.1.36 but broken
again in rev.1.37.  This bug only caused excessive polling (it gave
NRC activations for each of the SWI handler and the timeout handler
instead of 1 of each).

Moved cdevsw attachment from the driver probe routine to the driver
attach routine.
1999-06-04 18:53:47 +00:00
bde
2906737cf2 Really fix cy-driver-related panics when SMP is configured. Rev.1.88 only
fixed half the problem.

Tested by:	Michael Scott Boers <mboers@datacompusa.com>
1999-06-04 18:13:25 +00:00
peter
c398b85a52 Remove a rather bogus search path reference.. 1999-06-03 22:07:41 +00:00
peter
90151273b0 Quieten the bt_isa_probe() messages since they get a bit much when
the isa probe has gone hunting for a card on it's own.
1999-06-03 20:56:09 +00:00
peter
078a9624dd remove references to isa_device, it's no longer associated with interrupts. 1999-06-03 20:41:00 +00:00
newton
f45463e353 Back out last commit (did I get all of them?)
Submitted by:	Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
1999-06-02 15:35:46 +00:00
jlemon
528563d156 Unbreak memory sizing for SMP. 1999-06-01 23:45:48 +00:00
phk
a6b150ee30 Introduce the makebdev() function, it does the same as the makedev()
function for now, but that will change.
1999-06-01 18:56:26 +00:00
jlemon
91a6d42ba0 Null commit; note that there is a new memory sizing routine that uses
the BIOS calls to determine the memory configuration.  This should fix
problems with >64M for good.

Reviewed by:	Mike Smith
1999-06-01 18:25:26 +00:00
jlemon
b5d4171ff6 Unifdef VM86.
Reviewed by:	silence on on -current
1999-06-01 18:20:36 +00:00
jlemon
d4d2c87363 Make vm86 a standard component
Reviewed by:	silence on on -current
1999-06-01 18:18:39 +00:00
jlemon
edc341f25c Unifdef VM86
Reviewed by:	silence on on -current
1999-06-01 18:17:50 +00:00
dfr
cc72e6d28f Correct dumb mistake in previous commit. 1999-06-01 11:16:23 +00:00
dfr
7be18a9615 Move fd driver back to files.${arch} since pc98 has a special fd driver. 1999-06-01 09:02:27 +00:00
dfr
1fc0ec64f0 Remove fd driver from its old home and change files which include rtc.h
to account for its new location.
1999-05-31 18:36:14 +00:00
dfr
7435fd956d The fd driver has moved from i386/isa to isa. 1999-05-31 18:33:24 +00:00
phk
6a5dc97620 Simplify cdevsw registration.
The cdevsw_add() function now finds the major number(s) in the
struct cdevsw passed to it.  cdevsw_add_generic() is no longer
needed, cdevsw_add() does the same thing.

cdevsw_add() will print an message if the d_maj field looks bogus.

Remove nblkdev and nchrdev variables.  Most places they were used
bogusly.  Instead check a dev_t for validity by seeing if devsw()
or bdevsw() returns NULL.

Move bdevsw() and devsw() functions to kern/kern_conf.c

Bump __FreeBSD_version to 400006

This commit removes:
        72 bogus makedev() calls
        26 bogus SYSINIT functions

if_xe.c bogusly accessed cdevsw[], author/maintainer please fix.

I4b and vinum not changed.  Patches emailed to authors.  LINT
probably broken until they catch up.
1999-05-31 11:29:30 +00:00
phk
7e4a9dced9 This commit should be a extensive NO-OP:
Reformat and initialize correctly all "struct cdevsw".

        Initialize the d_maj and d_bmaj fields.

        The d_reset field was not removed, although it is never used.

I used a program to do most of this, so all the files now use the
same consistent format.  Please keep it that way.

Vinum and i4b not modified, patches emailed to respective authors.
1999-05-30 16:53:49 +00:00
dfr
9246fc0c80 No support for pnp yet. 1999-05-30 11:12:30 +00:00
dfr
5c03878b71 No support for pnp devices yet. 1999-05-30 11:10:10 +00:00
dfr
1978cc5b90 Allow up to 8 ports, 4 memory regions and two irqs and drqs. 1999-05-30 11:05:39 +00:00
dfr
21de0868b3 * Use ISA_DELETE_RESOURCE to cancel memory resource if driver clears maddr.
* Don't allow new-style isapnp devices through the compat interfaces.
1999-05-30 11:04:31 +00:00
dfr
cc731817af Don't include isa_dma.h if we have already seen isavar.h 1999-05-30 11:03:10 +00:00
dfr
8a8d1b8c17 Activate/deactivate resources by calling the method, not through the
resource manager automatic handling of RF_ACTIVE.
1999-05-30 10:50:57 +00:00
phk
f0e4180b10 Stop the TSC from being used as timecounter on K5/step0 machines. 1999-05-29 06:57:55 +00:00
bde
639d459251 Fixed glitches (jumps) of about 1/HZ seconds for the i8254 timecounter.
The old version only worked right when the time was read strictly
more often than every 1/HZ seconds, but we only guarantee reading
it every (1/HZ + epsilon) seconds.  Part of rev.1.126-1.127 attempted
to fix this but didn't succeed.  Detect counter rollover using the
heuristic from the old version of microtime() with additional
complications for supporting calls from fast interrupt handlers.
This works provided i8254 interrupts are not delayed by more than
1/(2*HZ) seconds.

This needs more comments, and cleanups for the SMP case, and more
testing of the SMP case before it is merged into RELENG_3.

Tested by:		jhay
1999-05-28 14:08:59 +00:00
bde
7e52c731df Don't call disable_intr() when interrupts are already disabled, since
disable_intr() does non-recursive locking in the SMP case.  This should
fix cy-driver-related panics when SMP is configured.

Broken in:	rev.1.73 (3.1 and -current)
1999-05-28 13:23:21 +00:00
roger
f631be9220 Add new Bt848/Bt878 driver options.
(Eventually I expect to move these into the man page)
1999-05-28 10:27:22 +00:00
alc
a9b474952d pmap_object_init_pt:
The size of vm_object::memq is vm_object::resident_page_count,
	not vm_object::size.
1999-05-28 05:38:56 +00:00
roger
5d6a76d153 Add support for ASound Gold card using the ALS120
chipset (a vibra 16x clone)
Identified automatically by its PnP ID

Approved by: Luigi
1999-05-27 06:12:40 +00:00