Commit Graph

262 Commits

Author SHA1 Message Date
jdolecek
3ea04717bf do not include "compat/aout/files.aout", COMPAT_AOUT is soon to be removed 2004-09-14 16:51:57 +00:00
drochner
070747cba1 remove the (superfluous) definition of "cpu" as an interface attribute 2004-08-30 15:35:20 +00:00
drochner
46289e1fef Phase out the use of a string as first "attach args" member to control
which bustype should be attached with a specific call to config_found()
(from a "mainbus" or a bus bridge).
Do it for isa/eisa/mca and pci/agp for now. These buses all attach to
an mi interface attribute "isabus", "eisabus" etc., and the autoconf
framework now allows to specify an interface attribute on config_found()
and config_search(), which limits the search of matching config data
to these which attach to that specific attribute.
So we basically have to call config_found_ia(..., "foobus", ...) where
such a bus is attached.
As a consequence, where a "mainbus" or alike also attaches other
devices (eg CPUs) which do not attach to a specific attribute yet,
we need at least pass an attribute name (different from "foobus") so
that the foo bus is not found at these places. This made some minor
changes necessary which are not obviously related to the mentioned buses.
2004-08-30 15:05:15 +00:00
cube
ca1f4e2485 Add an option to allow any user to write to machdep.est.frequency.target,
which is very handy on a laptop to control EST through another program that
you don't necessarily want to run as root (in my case, gkrellm).

The option's name is EST_FREQ_USERWRITE, and is disabled by default.
2004-07-10 18:51:01 +00:00
drochner
af0dfbe584 don't need md timing functions for joystick anymore 2004-07-08 22:07:47 +00:00
christos
0122ef6740 add darwin_commpage_machdep.S [does nothing for now, and the name is too long] 2004-07-04 15:22:03 +00:00
lukem
2df026b026 Integrate support for Enhanced SpeedStep Technology (est) that
Michael Eriksson posted to port-i386 on 20031102, with various
modifications by me to work in the new sysctl(9) framework.

The code is enabled with 'options ENHANCED_SPEEDSTEP', and if
the CPU supports EST the following sysctl(8) nodes appear
(with the values that a Dell Inspiron 8600 + WUXGA with a
1.4GHz Pentium M CPU supports):
	machdep.est.cpu_brand = Intel(R) Pentium(R) M processor 1400MHz
	machdep.est.frequency.target = 1400
	machdep.est.frequency.current = 1400
	machdep.est.frequency.available = 1400 1200 1000 800 600

If EST support isn't available, the "machdep.est" sysctl sub-MIB
is not created.

Once we have a more general "CPU frequency" control API we can
migrate this code to using that.

Thanks to Michael Erikkson for providing this code!
2004-04-30 02:05:42 +00:00
fvdl
07fd2b039b Adapt for new aapic.c location. 2004-04-18 18:36:56 +00:00
jmc
77e0ba6695 Convert athhal-elf.o to a .uue and add appropriate make hooks to use it 2004-03-25 23:32:10 +00:00
wiz
f1b19ce1db Backout previous -- this is not enough, config needs to be taught
how to reach partitions above h. Noted by Simon Burge, related to
PR 24905.
2004-03-25 15:26:35 +00:00
wiz
3afe1a1d87 Define maxpartitions to the same value as MAXPARTITIONS in disklabel.h.
Addresses PR 24905 by Simon Burge.
2004-03-25 12:38:49 +00:00
minoura
b332b550b9 Add Intel ICHn PCI-LPC bridge driver.
It is a pcib, but with sysmon watchdog support.
2004-03-14 08:04:38 +00:00
bjh21
dff5222d3a Abstract the interface between pckbc(4), and the pckbd(4) and pms(4)
drivers that attach to it.  This allows for other host interface chips
that use the same keyboards and mice, such as the ones in the ARM
IOMD20, ARM7500, and SA-1111.  The PC-compatible driver is still
called pckbc(4), and the new abstraction layer is "pckbport", so the
child devices have moved from sys/dev/pckbc to sys/dev/pckbport, which
also contains some code shared between all host controllers.  To avoid
incompatibility, pckbdreg.h is still installed in
/usr/include/dev/pckbc.

In theory, this shouldn't cause any behavioural changes in the drivers
concerned.  Thy just use rather more function pointers than before.  Tested
on i386 and (with a new host driver) acorn32.  Compiled on several other
affected architectures.
2004-03-13 17:31:33 +00:00
wiz
bb3980ab7a Remove last traces of DUMMY_NOPS option that was removed some
time ago.
From Jeff Rizzo in PR 24442.
2004-02-16 17:11:26 +00:00
bjh21
5aca86918f Add a new MI attribute, pckbc_machdep_cnattach, and change pckbc_cnattach()
to only call pckbc_machdep_cnattach() if this is present.  This allows
pckbc_machdep_cnattach() to be omitted entirely on most ports, where it only
returns ENXIO anyway.

The devices with this attribute at the moment are pc(4) on i386 and bebox, and
pckbc on sparc, where pckbc_machdep_cnattach() mysteriously returns 0 rather
than ENXIO.
2004-02-14 14:33:28 +00:00
jdolecek
6c14651ea0 cleanup old lpt(4) attachment, and glue ppbus in so that they can coexist:
* lpt device is defined in MI place (dev/ppbus/files.ppbus), dev/ic/lpt.c
  is included there too; dev/ic/lpt.c is not included if ppbus is
  configured or if there is alternative platform lpt (like for pc532)
* g/c MD lpt definitions and custom puc/upc attachments,
  glue moved to conf/files and dev/pci/files.pci respectively; remove
  device lpt definition from dev/isa/files.isa
* add ppbus parport attribute, atppc device attachments, adjust plip and lpt
  glue
2004-01-20 19:58:00 +00:00
tls
2a94b617f1 We can't use bf_cbc.S if I386_CPU is defined; the 80386 doesn't have
bswapl, and bf_cbc.S uses it.  Unfortunately, this means that GENERIC
will no longer use the asm code -- though it will still use the asm
for the basic Blowfish transform.  This won't slow down the KAME IPsec
(since it rolls its own CBC) but may slow down fast-ipsec in kernels
that have I386_CPU defined.
2003-11-16 12:02:15 +00:00
dyoung
18cc6db280 For PCI attachment, ath(4) needs both the HAL binary and the files
listed in dev/pci/files.ath.
2003-10-13 06:40:14 +00:00
christos
5dfabd4458 Add compat_16_machdep.c 2003-09-10 19:49:47 +00:00
fvdl
5a759ef06c Move the bulk of pci_intr_string into a seperate intr_string function. Use
that new function to print the pciide compat interrupt in pciide_machdep.c.
Share pciide_machdep.c between amd64 and i386.
2003-09-06 17:44:36 +00:00
thorpej
063033a023 Since everyone uses clock_subr.c (or should, if they don't currently),
list it in conf/files instead of in every port's files.*.
2003-07-27 01:17:37 +00:00
dsl
227f8466e9 Switch to using MI code to find disklabel on MBR disks. 2003-07-07 13:34:08 +00:00
gmcgarry
0a3dc90fb5 Pull-in GPIB. 2003-06-02 04:02:20 +00:00
wiz
ee6d7b94d4 Remove last traces of obsolete olms and omms drivers.
Ok'd by drochner and fvdl.
2003-05-15 13:13:21 +00:00
drochner
b370f1bff8 remove opms attachment stuff which is pointless after
opms itself was removed
2003-05-14 12:04:56 +00:00
fvdl
2e91dc8e00 Update for acpi file move to sys/arch/x86/x86. 2003-05-11 18:24:12 +00:00
jmmv
68fc25182e Implement the beep on halt feature. When enabled, it makes the kernel beep
the computer speaker when it's completely safe to power down the machine
(after the "The operating system has halted." message).  This is useful for
headless machines.

The feature is only enabled if the BEEP_ONHALT option is defined (disabled      by default).  It can be tuned through the BEEP_ONHALT_{COUNT,PERIOD,PITCH}      options.

Closes my own PR kern/18792.
2003-03-25 19:37:12 +00:00
christos
767bfa5fb6 microtime.S depends on assym.h 2003-03-02 22:19:05 +00:00
fvdl
f555536d9b Move lock_machdep.c to arch/x86/x86. 2003-03-01 22:53:39 +00:00
fvdl
a3b7772adf Move the CPU identification out of machdep.c into a seperate file. 2003-03-01 16:37:51 +00:00
fvdl
ba3f3ceb24 Catch up with consinit.c move. 2003-02-27 01:49:29 +00:00
fvdl
d89d6b98f7 Catch up with isa_machdep.c and pci_machdep.c move. 2003-02-27 00:39:40 +00:00
fvdl
f720949c2c Adapt for move of files to arch/x86. 2003-02-26 21:33:36 +00:00
augustss
8f123087a2 Undo accidental commit of this file. 2003-02-16 17:42:13 +00:00
augustss
519f8f3d30 Add uax(4) (and url(4) in some cases). 2003-02-16 17:35:13 +00:00
nakayama
64eb1178ab Share i386/tsc_microtime.c with alpha and sparc64 as kern_microtime.c.
(approved by martin)
2003-02-05 12:18:01 +00:00
fvdl
06b5330bc7 Add MPACPI option (commented out). Add MPBIOS option by default, it is
needed now to do MP BIOS MP configuration.
2003-01-07 18:55:36 +00:00
jmcneill
8eb0fffdfc Add an npx at acpi(4) attachment 2002-12-28 17:51:16 +00:00
manu
53356d6169 Added an empty shell for signal delivery. Now we just have to fill the
machine dependant bits.
2002-11-25 22:25:12 +00:00
fvdl
ae4b76c8d3 New interrupt code. The basic idea behind it is to hide the differences
in interrupt controllers in struct pic, and try to keep as much
common code as possible. At the lowest (asm) level, this is done
with CPP macros.

The main structure is now struct intrsource, describing an established
interrupt line, of any kind (soft/hard local apic/legacy apic/IO apic).
For quick masking, there may be a maximum of 32 sources per CPU.
Sources can be assigned to any CPU in the MP case, though currently they
all go to the boot CPU.
2002-11-22 15:23:35 +00:00
christos
09495207e1 darwin needs us. 2002-11-14 21:38:51 +00:00
christos
ce4326d8cd add COMPAT_DARWIN 2002-11-13 19:20:24 +00:00
jdolecek
c82ab2eb79 now that mem_no is emitted by config(8), there is no reason to keep
copy of more or less identical iskmemdev() for every arch; move the function
to spec_vnop.c, and g/c machine-dependant copies
2002-10-26 13:50:17 +00:00
thorpej
0ab79d5327 * Move config defns for the crypto algorithms into their own files.
Define an attribute for each crypto algorithm, and use that attribute
  to select the files that implement the algorithm.
* Give the "wlan" attribute a dependency on the "arc4" attribute.
* Give the "cgd" pseudo-device the "des", "blowfish", "cast128", and
  "rijndael" attributes.
* Use the new attribute-as-option-dependencies feature of config(8) to
  give the IPSEC_ESP option dependencies on the "des", "blowfish", "cast128",
  and "rijndael" attributes.
2002-10-11 01:52:04 +00:00
fvdl
288a0ddc5d lock_machdep.c only depends on LOCKDEBUG, in which case it's also
needed in the non-MP case (since pmap.c now calls __cpu_simple_lock
directly)
2002-10-07 07:54:31 +00:00
fvdl
5e33ec48d8 Define NOREDZONE and use it in the *_TINY config files to save a page
per process.
2002-10-06 12:36:16 +00:00
elric
d19d268a95 assign majors for raw and cooked cgd's. 2002-10-04 18:28:24 +00:00
fvdl
26ab868e68 Merge Bill Sommerfeld's i386 MP branch. This code has some known
caveats, but works quite well in a lot of MP cases, and all
UP cases that I have tested. Parts of this will hopefully be
reworked in the not-too-distant future.
2002-10-01 12:56:36 +00:00
gehenna
77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
thorpej
7d2b11a8b0 Add a driver for the AMD Elan SC520 System Controller. The "elansc"
driver attaches where "pchb" would normally attach (it matches at a
higher match priority).  The "elansc" driver currently provides support
for the watchdog timer built-in the SC520.

Thanks to Jasper Wallace for laying the ground-work for this (most
notably by providing a work-around for a watchdog-related bug in the
SC520).
2002-08-12 01:03:12 +00:00