Commit Graph

5333 Commits

Author SHA1 Message Date
Andrey A. Chernov
24c7337e25 Restore static of sc_flags.
Restore set_destructive_cursor prototype.
1998-10-01 21:04:52 +00:00
Jonathan Lemon
582b2d100e Don't try to save FP state if npxproc is null.
Submitted by:	Tor Egge
1998-10-01 20:45:28 +00:00
Mike Smith
d35326ae28 Remove lpt1 - we have userconfig if you have a weird port.
Remove mse0 - the Microsoft Bus Mouse is a dinosaur.  There are probably
              more Pintos on the road than these on peoples' desks.
1998-10-01 19:35:28 +00:00
Mike Smith
882ffc4bbd Remove the bi_vesa field, as vesa modeswitching is no longer performed
by the bootblocks.
1998-10-01 18:25:04 +00:00
Mike Smith
c2316d3e9a Pass the BIOS unit number from which the kernel/loader was obtained in
the bootinfo struct so that it can be reused later.
1998-10-01 18:22:52 +00:00
Kazutaka YOKOTA
38e152d29d Fix typo.
PR: kern/8118
Submitted by: Sheldon Hearn
1998-10-01 11:48:38 +00:00
Kazutaka YOKOTA
def802441f Yet another round of fixes for the VESA support code.
- Express various sizes in bytes, rather than Kbytes, in the video
  mode and adapter information structures.
- Fill 0 in the linear buffer size field if the linear frame buffer
  is not available.
- Remove SW_VESA_USER ioctl. It is still experimetal and was not meant
  to be released.
- Fix missing cast operator.
- Correctly handle pointers returned by the VESA BIOS. The pointers
  may point to the area either in the BIOS ROM or in the buffer supplied
  by the caller.
- Set the destructive cursor at the right moment.
1998-10-01 11:39:18 +00:00
Søren Schmidt
ff2c4726bc Changed tuner code to autodetect tuner i2c address.
Addresses were incorrectly hardcoded.

Submitted by:   Roger Hardiman <roger@cs.strath.ac.uk>
1998-09-30 20:43:25 +00:00
Dag-Erling Smørgrav
afc8ba89ef Document that we support the CS4236B. 1998-09-30 14:09:00 +00:00
Dag-Erling Smørgrav
e401e55f33 Add PnP ID for Crystal Semiconductors CS4236B codecs (register-
compatible with CS4236, so no driver changes are required)

Reviewed by:	Luigi Rizzo <luigi@iet.unipi.it>
1998-09-30 14:06:25 +00:00
Peter Wemm
6b7a14ce57 Make the ELF kernel build produce a dynamic executable (!). This enables
the in-kernel linker to access the _DYNAMIC data for doing loadable elf
modules.  The alpha kernel is already done this way, I've borrowed some of
the hacks from there.

This is primarily aimed at the 3-stage boot process which is intended to
be able to do pre-loading of kernel modules.

Note that the entry point isn't 0xf0100000 any more, it'll be a little
further on - but this value is stored in the headers.  I don't think this
will be a problem, but I'm sure somebody will tell me if it is. :-)

I'm not sure if btxboot is going to like this, it doesn't do proper ELF
header checking and assumes that there are exactly two program header
entries and that they are both PT_LOAD entries - a bad assumption.
1998-09-30 12:14:39 +00:00
Justin T. Gibbs
013a898f40 Remove SCSI support as the only driver in this kernel config, aic, is not
currently supported by CAM.
1998-09-30 03:48:23 +00:00
John Fieber
f18bad6e73 Add several missing ioctl handlers. One needed by Sybase, the others
found while looking for the one.
1998-09-30 01:42:53 +00:00
Andrey A. Chernov
6b491db1bd vm86_datacall: always use workaround since temp. malloced buffer or stack
area can be passed (and mapped to page1!) as vesa.c does. Use contigmalloc
now to get proper alignment. Bump max buffer size to PAGE_SIZE
1998-09-29 22:06:33 +00:00
Andrey A. Chernov
cecc3abb9d Restore v1.3 - page align workaround moved to vm86_datacall now 1998-09-29 20:38:54 +00:00
Andrey A. Chernov
0e4c0f17f3 Move workaround about page aligned data buffer directly to vm86_datacall,
it is impossible to use this func otherwise, i.e. all vesa calls are
potentially broken. Max arg size limited to 1024 for now, bump it, if needed.
1998-09-29 20:36:31 +00:00
Jonathan Lemon
9379f795cd Don't erase curproc when making a vm86() call. The previous behavior
was a pessimization that broke schedcpu(). (It caused the process to
be remrq()'d).
Reviewed by:	Tor Egge
1998-09-29 18:01:18 +00:00
Andrzej Bialecki
c796cfa18a Make #define NO_SWAPPING a normal kernel config option.
Warn unsuspecting users against current DEVFS pitfalls.

Reviewed by:	jkh
1998-09-29 17:33:45 +00:00
Andrzej Bialecki
dede34d355 Add sysctl 'machdep.msgbuf_clear'. Setting it to anything causes the
kernel message buffer to be cleared. It comes handy in situations when
the only logging facility you have is the msgbuf.

Reviewed by:	jkh
1998-09-29 11:20:16 +00:00
Bruce Evans
0c71101cb7 Don't pretend to support ix86's with 16-bit ints by using longs just
to ensure 32-bit variables.  Doing so broke ix86's with 64-bit longs.
1998-09-29 09:06:00 +00:00
Andrey A. Chernov
81e30e2649 cosmetique - remove unneded static in previous commit 1998-09-29 04:11:35 +00:00
Andrey A. Chernov
bb2691312e workaround painful vm86_datacall requirement that segment+offset
must be withing the same PAGE frame
1998-09-29 04:09:39 +00:00
Andrey A. Chernov
d4b2d02fc1 Fix destructive cursor shape after text mode switch.
This is only for standard modes, I don't check vesa modes yet.
1998-09-29 02:00:57 +00:00
Andrey A. Chernov
83eda2d885 fix handling more than one cards
Submitted by: "Sergey V.Dorokhov" <svd@kbtelecom.nalnet.ru>
1998-09-28 23:27:57 +00:00
Peter Wemm
b9b5f72bb6 Fix (?) EISA interrupt configuration based on observation of what we've
seen in practice.  The MPspec is ambiguous and/or contradicts itself.
We now look at the ELCR to determine the trigger mode (edge/level) of an
interrupt tagged as "conforming" in the mptable.  EISA interrupts appear
to be presented to the APIC as active high in all cases (they are level
inverted) that we've seen, so use this for the 'conforming' level case.

Of note, the system I'm using has 2 PCI cards in it, and the PCI cards
interrupts (5 and 9) appear in the ELCR register as level sensitive and the
mptable lists 5 and 9 as coming from the EISA bus.  The PCI interrupts
are active-high by the time they reach the APIC even though they are
electrically active low at the slot.

We should still work should somebody implement this on motherboards
differently in the future as long as the mptable is clear about the
trigger/polarity.

Current should work on Holm Tiffe's machine now.

Based on code from: Tor.Egge@fast.no
1998-09-28 13:47:23 +00:00
Peter Wemm
eb70c7babf Back out rev 1.6 (temporarily at least). <machine/asmacros.h> is used
here for getting the #defines for the removal of the leading '_' in symbols
in the assembler code.  We could probably #include <machine/asnames.h>
instead, but everything else seems to use asmacros.h directly as well.
Once we convert symbols, this becomes irrelevant.
1998-09-28 12:20:46 +00:00
Jonathan Lemon
95b246f166 Use defines APM_BIOS and SYSTEM_BIOS instead of hardcoding 0x53 and 0x15. 1998-09-28 03:41:12 +00:00
Tor Egge
a16edda365 Initialize pcb_mpnest to 1 in the child process in cpu_fork(). This should
fix the 50% idle problem that the ELF /sbin/init triggered.  The problem
appeared when the last context switch before a fork() call was due to
the kernel faulting in user pages via normal page faults (e.g. copyin).
Reviewed by:	Peter Wemm <peter@netplex.com.au>
1998-09-28 03:34:39 +00:00
Tor Egge
8fce521a54 Use correct virtual address when configuring the per CPU idle page directory
for a vm86 call under SMP.
1998-09-28 03:26:22 +00:00
Joseph Koshy
71c1bf9fa5 strings' -> strings -aout -n 3'
Pointer out by:	Ben Smithurst <ben@scientia.demon.co.uk> and
		<des@freebsd.org>
1998-09-27 11:47:24 +00:00
Kazutaka YOKOTA
ef7b5df757 Cosmetic changes:
- there were too many global variables (there still are :-).
- the data section was bloated by explicit initializations of static
  variables to 0 (only fixed the recently changed ones).
- WRAPHIST() had silly parentheses around foo->bar.
- the comment about inline functions was stale.
- the comment about Userconfig presumes too much about the boot environment.
- `i' was reused confusingly in scioctl().
- the declaration of `butmap' used a deprecated K&R misfeature.
- the initializeation of `butmap' had an unnecessary line break.
- `unsigned char' was not consistently (mis)spelled as u_char.
- English was poor in a comment in videoio.c.
Submitted by: bde
1998-09-26 03:38:40 +00:00
Kazutaka YOKOTA
a8dedb0cfb - Use `u_long cmd' ioctl arg.
- Fix some external function declaration.
Submitted by: bde
1998-09-26 03:34:10 +00:00
Dag-Erling Smørgrav
b9546bc180 Silence a harmless warning. 1998-09-26 00:55:53 +00:00
Peter Wemm
10baba4b95 Goodbye BOUNCE_BUFFERS, for a hack it has served us well.
The last consumer of this code (the old SCSI system) has left us and
the CAM code does it's own bouncing.  The isa dma system has been
doing it's own bouncing for a while too.

Reviewed by:	core
1998-09-25 17:34:49 +00:00
Kazutaka YOKOTA
a3cd018562 Cosmetic change: adjust copyright notice. 1998-09-25 11:55:46 +00:00
Kazutaka YOKOTA
60d4fee48a Slightly adjust the description on SC_ALT_SEQACCESS in the previous
commit.
1998-09-25 11:38:30 +00:00
Jordan K. Hubbard
85e3676076 Match LINT with SC_BAD_FLICKER change.
Submitted by:	Sheldon Hearn <axl@iafrica.com>
1998-09-25 11:00:11 +00:00
Jordan K. Hubbard
7337727eca Add entry for ThunderLAN NIC. 1998-09-25 09:04:24 +00:00
Jordan K. Hubbard
9587f05dcb MF22: revert time bogon. 1998-09-24 13:25:43 +00:00
Kazutaka YOKOTA
e91db91d4e SC_BAD_FLICKER -> SC_ALT_SEQACCESS
Now supposedly less harmful way of accessing VGA sequencer registers
is default. An alternative, often troublesome, I/O access is optional.

Discussed with: sos, jkh
1998-09-24 13:20:47 +00:00
Bruce Evans
f28d6834e1 Removed unused include of "ioconf.h" again. The CAM changes made ioconf.h
empty but regressed to including it here.
1998-09-24 10:43:42 +00:00
Bruce Evans
849ded1371 Removed a stale comment about "ioconf.h". 1998-09-24 10:41:13 +00:00
Bruce Evans
dade759d9f Don't redefine kernel. Makefile.i386 now defines it.
Removed some unused includes.
1998-09-24 10:22:21 +00:00
Jordan K. Hubbard
c9297a7328 return time in proper format for linux. 1998-09-23 14:50:26 +00:00
Kazutaka YOKOTA
95bafc8f5a Fix and update for VESA BIOS support in syscons.
- Handle pixel (raster text) mode properly.
   - Clear screen and paint border right.
   - Paint text attribute (colors).
   - Fix off-by-one errors.
   - Add some sanity checks.
- Fix some function prototypes.
- Add some comment lines.
- Define generic text mode numbers so that the user can just give
  "80x25", "80x60", "132x25"..., rather than "VGA_xxx", to `vidcontrol'
  to change the current video mode.  `vidoio.c' and `vesa.c' will map
  these numbers to real video mode numbers appropriate and available
  with the given video hardware.  I believe this will be useful to make
  syscons more portable across archtectures.
1998-09-23 09:59:00 +00:00
Kazutaka YOKOTA
3cd3a6936b Remove the -b boot option. It is no longer necessary now that the VESA
BIOS support is optionally available for syscons.
1998-09-23 06:50:45 +00:00
John Birrell
3ab87a0f91 Post C-day sync with GENERIC. 1998-09-22 11:13:14 +00:00
Mike Smith
26dd997fbe New major for 3dfx driver. 1998-09-21 22:04:07 +00:00
Bruce Evans
5b036e2b3c Fixed missing dependencies of genassym.o, gensetdefs.o and vers.o
on opt_global.h.  This actually matters for genassym.o (it depends
on at least SMP).

Don't undefine KERNEL for compiling genassym.c.  genassym.o really
depends on KERNEL, and the prototype mismatches that required
undefining KERNEL in rev.1.49 no longer exist.

Compile gensetdefs* with the same flags as genassym*.  External
`gen' programs such linux_genassym should also use these flags
(${GEN_CFLAGS}).

Fixed missing dependency generation for gensetdefs.o.  C sources
for external `gen' programs should be added to GEN_CFILES to get
their dependencies generated.

Cleaned up flags definitions and use.  All of ${CFLAGS} is now
passed to mkdep and the assembler (both are actually variants of
${CC} and will ignore the irrelevant flags).
1998-09-21 06:39:11 +00:00
Bruce Evans
6ed49410a5 Attempt to work around a bug in the previous commit related to
non-reentrancy of SMP clock locking.  Depend on the giant lock
protecting clkintr().
1998-09-20 19:56:28 +00:00