Commit Graph

6282 Commits

Author SHA1 Message Date
tron 0fba6709ad Add entry for bce(4). 2003-10-05 11:42:38 +00:00
jdolecek e6286b949a Add some framework for MI assignment of device majors - add sys/dev/majors
which is automatically included during kernel config, and add comments
to individual machine-dependant majors.* files to assign new MI majors
in MI file.

Range 0-191 is reserved for machine-specific assignments, range
192+ are MI assignments.

Follows recent discussion on tech-kern@
2003-10-05 08:04:24 +00:00
junyoung d1486d51cb Rearrange instructions for better use of pipeline. This shaves off 0.5%
of time on interrupt/trap entry on my Athlon 1800.
2003-10-04 05:57:51 +00:00
mrg 3942bb7a51 enable broadcom BCM4401 (bce) driver (as found on recent dell laptops) 2003-09-27 13:16:16 +00:00
christos 6fc26a7684 add SIGTRAMP_VALID and gc old sigcontext <-> ucontext macros. 2003-09-27 03:14:31 +00:00
nathanw 4d59420344 Move __cpu_simple_lock_t and __SIMPLELOCK_{UN,}LOCKED to machine/types.h
so that they can be used in a namespace-friendly way.
2003-09-26 22:45:41 +00:00
christos cfba45c856 constify sendsig/trapsignal 2003-09-25 22:00:02 +00:00
mycroft eefae40298 Hide the use of config_interrupts() in one place. 2003-09-25 19:29:48 +00:00
mycroft 864b96269c Modify the fdcattach() interface again, splitting it into two parts, so that
DRQ allocation is done earlier.
2003-09-25 19:06:19 +00:00
pooka a41fa163fd iavc@pci 2003-09-25 16:00:24 +00:00
mycroft 3d7395ab71 Update for new attach method. 2003-09-25 01:12:43 +00:00
mycroft d40837608f 1) Use config_interrupts() to attach IDE and ATAPI drives. This eliminates
most polling.
2) Clean up some goofiness in pciide -- get rid of the whole "candisable" path
   (it's gratuitous) and simplify the code by calling pciide_map_compat_intr(),
   *_set_modes() and wdc_print_modes() from central locations.
3) Add a register writability and register ghost test to eliminate phantom
   drives more quickly.
2003-09-19 21:35:56 +00:00
drochner 27c7714f95 syntax error in comment 2003-09-17 11:57:34 +00:00
cl abc609d801 add MD part of SA/pthread pagefault handling on i386 2003-09-16 13:57:47 +00:00
simonb f7e3330a08 Remove a variable that is assigned to but not used. 2003-09-13 11:12:06 +00:00
christos 280bbfe466 Set si_code for T_PROTFLT|T_USER. Pointed out by enamicode. 2003-09-12 23:20:26 +00:00
christos 51d8c27c8d pick up the right sigreturn symbol. we could have #define __HAVE_SIGINFO
instead too.
2003-09-12 16:51:04 +00:00
christos 75c419ccc0 include opt_compat_netbsd.h, sort includes. Thanks yamt. 2003-09-12 12:39:59 +00:00
christos 9889f06536 make sigcontext visible all the time instead of including opt_*.h from a
large number of files.
2003-09-12 01:13:35 +00:00
christos 2bf3634159 fix typo. 2003-09-11 20:48:35 +00:00
christos 7340db7385 Bring back sigcontext to userland by popular demand. 2003-09-11 20:22:30 +00:00
christos 99ee91793f make vm86 use __gregset_t 2003-09-11 19:17:07 +00:00
christos a6540cf740 XXX: vm86 for sigcontext comment is gone. 2003-09-11 19:16:05 +00:00
christos ab63d91442 old vm86 call with COMPAT_16 code. 2003-09-11 19:15:12 +00:00
kleink d440784b30 __{BEGIN,END}_DECLS-wrap prototypes. 2003-09-11 09:40:11 +00:00
christos 2300d30c79 delete debug printf's. 2003-09-10 21:40:02 +00:00
christos 7b176f233f sort the opt_ includes. 2003-09-10 21:38:40 +00:00
christos 5dfabd4458 Add compat_16_machdep.c 2003-09-10 19:49:47 +00:00
christos 4d5acf4941 expose sendsig_sigcontext for compat_16 2003-09-10 19:49:22 +00:00
christos 6f6f525ca6 move compat_16 stuff into a separate file. 2003-09-10 19:48:48 +00:00
christos f7f3566b1e #ifdef struct sigframe_sigcontext and struct sigcontext, so that only code
that really needs them, get them.
XXX1: We need to fix the vm86 api.
XXX2: We need to fix the ibcs2 signal delivery mechanism.
2003-09-10 16:48:16 +00:00
christos 0b16bf9a36 make obsolete trampoline code COMPAT_16. Unfortunately sigreturn14 is used
by IBCS2; grr.
2003-09-10 16:46:59 +00:00
christos d0b2ede633 need opt_ibcs2.h 2003-09-10 16:46:15 +00:00
drochner 8bedb90edc in cpu_setmcontext(), check where we go, not where we are coming from,
and line-terminate a diagnostic message which was caused by that bug
2003-09-10 11:39:09 +00:00
itojun 919da6bf44 have COMPAT_16 2003-09-09 07:14:01 +00:00
tron 8cfe1dc600 Add "COMPAT_16" option. 2003-09-07 09:33:56 +00:00
christos d5f61bb017 SA_SIGINFO changes 2003-09-06 23:15:35 +00:00
christos 66a72d2998 Add COMPAT_16 2003-09-06 22:39:23 +00:00
christos 1dc335c017 SA_SIGINFO changes. 2003-09-06 22:03:09 +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
itojun fc918f8713 add rnd(4) device to installation media.
necessary for many purposes, including password seeding, tcp sequence number,
and more.  see tech-security
2003-09-06 03:25:23 +00:00
fvdl 60ae17c7ae Fix signed/unsigned warnings. 2003-08-31 22:40:13 +00:00
fvdl 06298770b0 Add another -DBOOT_ELF64 for amd64. 2003-08-30 20:38:58 +00:00
fvdl ee4b42342e Add -DBOOT_ELF64 for amd64. 2003-08-30 18:25:07 +00:00
fvdl 8ea680bb14 Add -m elf_i386 (for amd64) to LD. 2003-08-30 15:24:41 +00:00
fvdl e8b1f4f135 Add -m elf_i386 to ${LD}, not ${LDFLAGS}, since bsd.lib.mk doesn't
include ${LDFLAGS} when using ld -x on an object file.

XXX what's the point of these ld -x rules anyway?
2003-08-30 15:15:01 +00:00
dsl 677dd78600 Placate people who insist on using non-standard disk layouts by adding
a valid MBR entry for partition 3 (covering the first 15 sectors) into the
end of the partition boot code.
2003-08-30 13:33:55 +00:00
tron aae64118ef Add missing blank line.
Don't treat pointers as boolean values.
2003-08-28 10:58:37 +00:00
jdolecek 98c6c56281 add commented out entries for skc/sk SysKonnect SK9821 driver 2003-08-26 21:12:48 +00:00
tron 57c82d6312 Add support for i865G integrated graphics support to agp(4). Patches
contributed by Michael D. Allen in PR port-i386/22600.
2003-08-26 17:33:22 +00:00
tron c8232f0d0f Protect inclusion of "opt_vm86.h" with "#ifdef _KERNEL_OPT" as appropriate. 2003-08-25 13:11:30 +00:00
drochner 8085017e31 fix _UC_MACHINE_SP() for the vm86 case: we have to add the SS offset 2003-08-25 09:20:25 +00:00
chs 939df36e55 add support for non-executable mappings (where the hardware allows this)
and make the stack and heap non-executable by default.  the changes
fall into two basic catagories:

 - pmap and trap-handler changes.  these are all MD:
   = alpha: we already track per-page execute permission with the (software)
	PG_EXEC bit, so just have the trap handler pay attention to it.
   = i386: use a new GDT segment for %cs for processes that have no
	executable mappings above a certain threshold (currently the
	bottom of the stack).  track per-page execute permission with
	the last unused PTE bit.
   = powerpc/ibm4xx: just use the hardware exec bit.
   = powerpc/oea: we already track per-page exec bits, but the hardware only
	implements non-exec mappings at the segment level.  so track the
	number of executable mappings in each segment and turn on the no-exec
	segment bit iff the count is 0.  adjust the trap handler to deal.
   = sparc (sun4m): fix our use of the hardware protection bits.
	fix the trap handler to recognize text faults.
   = sparc64: split the existing unified TSB into data and instruction TSBs,
	and only load TTEs into the appropriate TSB(s) for the permissions.
	fix the trap handler to check for execute permission.
   = not yet implemented: amd64, hppa, sh5

 - changes in all the emulations that put a signal trampoline on the stack.
   instead, we now put the trampoline into a uvm_aobj and map that into
   the process separately.

originally from openbsd, adapted for netbsd by me.
2003-08-24 17:52:28 +00:00
itojun 96467c96c7 add udav* 2003-08-22 05:14:00 +00:00
itojun 4440262659 create /dev/crypto 2003-08-22 05:06:22 +00:00
fvdl c43b35423e Pass pointers to frames from assembly, do not use the 'frame on stack
as argument passed by value' trick, as gcc 3.3.x makes (valid) assumptions
about the stack that will not be true. Costs 2 instructions per trap/syscall
on i386, 4 per interrupt for MP. One instruction per trap/syscall on amd64,
2 per interrupt for MP. I expect gcc 3.3.1 to make up for this by better
optimization (it'd better..)

While here, make amd64 compile again by using subr_mbr_disk.c
2003-08-20 21:48:35 +00:00
dsl fc94061686 Further fallout from making 'path' arg to 'ufs_open' 'constchar *'.
There may be fallout in other builds....
2003-08-18 15:47:41 +00:00
kochi 35312b5efa make shutdown error messages clearer (idea from Christoph Egger) 2003-08-17 14:23:16 +00:00
kochi 1cc19c34e0 Try shutdown with ACPI only when ACPI is enabled.
Patch from Masanori Kanaoka (with a little modification by me).
2003-08-17 14:15:43 +00:00
yamt e6483a7858 - leave a compiler which register is used for an asm argument.
- use correct asm constraints.
- eliminate usage of dummy variables.
2003-08-13 12:40:31 +00:00
yamt fd72624430 use correct asm operand indexes.
(previously 'GLptr' was used as mask.)
this long standing bug seems to be uncovered by
my previous change(rev.1.2) on some machines.

PR/22457 from Matthias Scheler, and tested by him.
2003-08-13 12:38:35 +00:00
dsl 744ee27288 Try looking RF_PROTECTED_SECTORS further down the partition if /boot
cannot be found.
Lets the system boot directly from a rad set.
2003-08-12 10:03:03 +00:00
fvdl 8c1a2eef97 Fix deadlock issue. Slight variation on patch by Stephan Uphoff. 2003-08-11 21:15:50 +00:00
drochner 657c8bd72c fix a memory deallocation botch in the realloc-ldt case,
plus some cosmetics
from Stephen Ma per PR port-i386/19724
2003-08-11 17:26:24 +00:00
drochner 6fb41457ab arrgh - KERNBASE_LOCORE! 2003-08-11 16:56:46 +00:00
drochner e8d0979bed Fix stack location for VM86 processes in the !sigaltstack case.
I doubt it makes much sense to use the VM's stack for this, but the
old code was doubtless wrong because it potentially overwrote random
user memory.
(It might be a good idea to use the process' pre-vm86()-call stack,
but atm the infrastructure for this is missing.)
2003-08-11 14:09:18 +00:00
atatat 3e5ef14f22 Make sure to wrap include opt_foo.h in _KERNEL_OPT. 2003-08-11 13:20:39 +00:00
dsl 221f1dff47 Some systems (esp. those with a Promise IDE controller card) seem to
destroy %dl (drive number) across the 'disk reset' command.
Preserve %dl across that call and all registers across the disk reads.
Reorder the code to remove some long conditional jumps to save space.
2003-08-09 20:57:45 +00:00
yamt b1eb92cb46 in ACPI_ACQUIRE_GLOBAL_LOCK,
don't assume that the reserved bits of the global lock are all zero.
it's actually needed for, at least, IBM Thinkpad X21 (2662-64J).
2003-08-09 17:35:43 +00:00
martin a26ce66da3 KERNBASE -> KERNBASE_LOCORE (make it compile again) 2003-08-09 08:58:50 +00:00
christos c23ca09f5a use KERNBASE_LOCORE 2003-08-08 20:14:06 +00:00
christos bbb5cbabcf cleanup the mess with KERNBASE and KERNBASE_LOCORE. 2003-08-08 20:13:04 +00:00
agc aad01611e7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
2003-08-07 16:26:28 +00:00
soren b22ef904f5 Enable ahd(4) by default. There are some problems with higher speeds /
packetized mode, but those can be disabled in the Adaptec BIOS setup.
2003-08-07 12:06:15 +00:00
bouyer 7c840df334 Add esiop at pci to GENERIC which already have siop at pci.
esiop has been tested enouth now.
esiop not added to INSTALL kernels because of possible space constraint.
siop should be able to drive all adapters supported by esiop.
2003-08-06 12:32:03 +00:00
dsl e33c0fa9eb Dont need jmpl, ljmp or jmp is fine. 2003-08-05 15:14:49 +00:00
kanaoka c5cef9cc94 - Use local variable instead of sc_Arg in softc.
- Use ACPI_ALLOCATE_BUFFER/AcpiOsFree combination instead of sc_Ret in softc.

   Pointed out by kochi.
2003-08-05 14:24:45 +00:00
dsl 0be64684b7 Some bios manage to load the mbr code to 7c0:0 (instead of 0:7c00) especially
when loading from CDROM.  Change so we don't care what %cs is.
Adjust code layout so that anyone who feels so inclinded can use this for
the mbr code.  Note that mbr slot 0 overlays a data area that must be zero
when this is read from the pbr.
2003-08-05 13:41:52 +00:00
drochner a505528166 fix the last proc->lwp transition glitch 2003-08-04 18:43:38 +00:00
mrg 2c28bbc2b3 avoid a gcc3.3 warning 2003-08-01 13:20:35 +00:00
mrg 3b1578f961 add another cast to appease gcc3.3 2003-07-28 10:28:30 +00:00
itojun 3f14c71f75 reserve cdev major # for PF. ok'ed by technical-exec 2003-07-27 14:17:57 +00:00
mrg 62260183e7 some casts to appease gcc3.3 2003-07-27 14:14:44 +00:00
mrg fcd3befc1c labels needs statements 2003-07-27 07:09:17 +00:00
mrg 3cfc71fc33 rewrite an undefined assignment 2003-07-27 07:04:46 +00:00
mrg fcbce53483 #undef takes just a name, no params 2003-07-27 07:02:18 +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 3e0a1a7085 No longer build biosboot*.sym and installboot. 2003-07-26 08:45:12 +00:00
dsl a2401126fe Report actual $MACHINE (so it will be amd64, not i386)
and filesystem type (could be useful)
in primary bootstrap banner message.
2003-07-25 21:16:01 +00:00
yamt f5721758ca move pv_head and page attributes into md part of vm_page structure
instead of having separate arrays for them.
(i.e. use __HAVE_VM_PAGE_MD instead of __HAVE_PMAP_PHYSSEG.)
2003-07-22 13:55:31 +00:00
hannken bbf46d4085 Add support for i855 agp. From FreeBSD.
Approved by: Frank van der Linden <fvdl@netbsd.org>
2003-07-20 18:56:32 +00:00
tls dacf9875c8 Allow redefiniton of KERNBASE. Because the type of this constant is
different for locore.S and the rest of the kernel, if you redefine
it from the default value, you must also define KERNBASE_LOCORE -- this
is ugly, but so is having the same constant with two different types
depending where in the kernel it's used...
2003-07-18 17:33:05 +00:00
lukem ace607b862 add __KERNEL_RCSID() 2003-07-14 22:13:09 +00:00
christos 28c6644783 the author needs to stay way from the crack pipe: two bugs cancelled each other! 2003-07-11 20:33:03 +00:00
lukem 66173dd5f9 NOxxx= variables should appear first 2003-07-10 11:30:43 +00:00
dsl fb2276c4c8 Replaced by sys/kern/subr_disk_mbr.c which also supports having the
NetBSD partition in the MBR extended partion.
2003-07-07 13:36:05 +00:00
dsl 227f8466e9 Switch to using MI code to find disklabel on MBR disks. 2003-07-07 13:34:08 +00:00
dsl 1943909639 Support booting from a netbsd partition in the MBR extended partition. 2003-07-07 13:32:42 +00:00
dsl a1484d22a6 Remove 'dosparts' it hasn't been used for a while (if ever). 2003-07-07 13:30:10 +00:00
tron 896fd5c944 Add hardware random number generator support for Intel 865 and
875P chipsets.
2003-07-06 07:24:31 +00:00
kochi 9ab543513d o cleanup usage of ACPI_ACTIVATE_DEV/ACPI_PCI_FIXUP
o delete usage of ENABLE_DEBUGGER

As ACPI_ACTIVATE_DEV/ACPI_PCI_FIXUP are defflag'ed in files.acpi,
these options don't have to have a value.
2003-07-06 04:03:21 +00:00
simonb aa57e31a39 Make mptrap.o depend on assym.h; fixes GENERIC.MP -j N kernel build. 2003-07-05 16:56:10 +00:00
christos 76da28320e use the real linux_rt_sigreturn. 2003-07-03 21:25:45 +00:00
dsl 48046920d6 Fix copyright - it got mangled earlier.
Added a mention of Wolfgang Solfrank - there are probably only comments left
from the much older mbr.S that he contributed.
(Wolfgang pointed out the mangled copyright, but doesn't object to the removal
of the Tools GmbH one.)
2003-07-02 14:35:51 +00:00
kanaoka 63ffb11606 - Cleanup usage of ACPI_ALLOCATE_BUFFER/AcpiOsFree combination.
Patch from kochi.
2003-07-02 13:18:17 +00:00
kanaoka 88acff6621 - Remove unneed include file. 2003-07-01 20:24:46 +00:00
simonb ad51219ae3 Make this work without a populated destdir:
machine and x86 symlinks.
 Include from right places.
 Don't depend on LIBCRT0,etc.

Also for the bootxx programs, keep the ELF object during the build
process.
2003-07-01 13:36:59 +00:00
thorpej 221d313d7c Allow SOURCES to be overridden. 2003-06-30 17:54:06 +00:00
fvdl d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
darrenr 887069bda8 Revert out an accidental commit. 2003-06-28 15:34:41 +00:00
darrenr 960df3c8d1 Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
2003-06-28 14:20:43 +00:00
fvdl 1c961078b9 Mark a CPU as no longer running when it gets a HALT IPI. Avoids other
CPUs getting stuck waiting for it because they sent a TLB shootdown
during shutdown.
2003-06-28 11:33:19 +00:00
drochner 9c0e4279cc remove unneeded cpu_feature declaration 2003-06-26 16:48:18 +00:00
drochner 491828ab43 cpu_feature is not set (nor used) by locore since SMP, so move the
definition to C code
2003-06-26 16:47:15 +00:00
drochner 1fa5ee8d10 make cpu_feature unsigned, just like ci_feature_flags 2003-06-26 16:45:19 +00:00
drochner 31f515916f -make cpu_feature unsigned, just like ci_feature_flags
-clean up duplicate declaration of cpu_info_primary
2003-06-26 16:41:32 +00:00
drochner 470de734bd remove redundant "extern" declarations 2003-06-26 16:37:20 +00:00
thorpej 7401047528 Add a way to force (at compile time) use of int13 extensions. 2003-06-25 04:21:51 +00:00
tron 64e5c9eb7c Remove "lib" directory in "cleandir" target. 2003-06-24 09:38:35 +00:00
martin cd7023a3eb Backout previous, this file is not affected by kernel options. 2003-06-23 14:48:37 +00:00
martin 4858ba3d93 Protect kernel opt_*.h include by #ifdef _KERNEL_OPT 2003-06-23 12:56:07 +00:00
martin d505b18964 Make sure to include opt_foo.h if a defflag option FOO is used. 2003-06-23 11:00:59 +00:00
kanaoka d25a3f14d9 - Remove the unused polling code.
- Clean up the code a bit.
2003-06-19 10:13:14 +00:00
fvdl 7dd7f8baa2 Handle 64bit DMA addresses on PCI for platforms that can (currently only
enabled on amd64). Add a dmat64 field to various PCI attach structures,
and pass it down where needed. Implement a simple new function called
pci_dma64_available(pa) to test if 64bit DMA addresses may be used.
This returns 1 iff _PCI_HAVE_DMA64 is defined in <machine/pci_machdep.h>,
and there is more than 4G of memory.
2003-06-15 23:08:53 +00:00
abs a16551d502 Correctly escape newlines in a string - now can be compiled under gcc3 2003-06-13 10:56:41 +00:00
drochner 0256604827 nuke unnecessary #include <sys/dkstat.h> 2003-06-12 14:44:36 +00:00
dsl 63336846ea Increase sizes of space for ramdisks 2003-06-05 14:33:51 +00:00
gmcgarry 9dcb47fcad Add devices hanging off GPIB. 2003-06-02 04:03:04 +00:00
gmcgarry 0a3dc90fb5 Pull-in GPIB. 2003-06-02 04:02:20 +00:00
kleink 9adea725c5 {u,}intptr_t are ints again. 2003-05-30 11:07:38 +00:00
fvdl afff857edc Add the options MPBIOS_SCANPCI and MPACPI_SCANPCI to configure PCI roots
with the MPBIOS/ACPI bus information, by walking through the buses, and
descending down every bus that hasn't been marked configured yet.
2003-05-29 20:22:28 +00:00
christos 0328813526 Back to unsigned int and int for {u,}intptr_t, otherwise java has no chance... 2003-05-29 18:06:55 +00:00
thorpej 84b00019df Comment out DEBUG_MEMSIZE. 2003-05-24 03:38:58 +00:00
lukem f94e08c4e2 tweak previous; use '%#x' instead of '0x%x' (and the lx equivalents) 2003-05-21 23:47:55 +00:00
kristerw 9dc4f5f533 Add some db_sym_t casts to make this compile with -D__AUDIT__. 2003-05-21 23:12:18 +00:00
simonb 830dc8ea61 Prefix a hex error number with "0x". 2003-05-21 16:48:34 +00:00
kristerw 5c192de38a Use __asm instead of asm, to make lint happy. 2003-05-20 22:53:35 +00:00
kristerw 812c1d95e8 Add LINTSTUB: include <sys/types.h> 2003-05-20 20:24:18 +00:00
kanaoka fd8774e6d5 Fix a typo in a comment. 2003-05-20 12:50:27 +00:00
wiz 223c68ba9c Fix typo in debug message. 2003-05-20 12:14:17 +00:00
kanaoka 450fc069f6 - Use AcpiOsQueueForExecution instead of calling vald_acpi_event() directly
in Notify handler.
2003-05-20 12:09:56 +00:00
dsl 7452c78152 Fix botched nathanw_sa_merge change
fixes port-i386/21603
2003-05-17 10:34:39 +00:00
wiz 8381108e2a Don't install machine/mouse.h on i386 and prep; there are no users for
the old busmouse interface any longer, we use wsmouse now.
2003-05-15 18:51:18 +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
dsl 341c4563e3 Incorrect sector number passed to boot1 in floppy (no mbr) case 2003-05-15 08:50:53 +00:00
drochner 1927ae6a7e -remove opms attachment stuff which is pointless after
opms itself was removed
-do the bus_space reservation in any case
-extend a compile-time check: pccons and ega can't coexist either
2003-05-14 12:10:04 +00:00
drochner b370f1bff8 remove opms attachment stuff which is pointless after
opms itself was removed
2003-05-14 12:04:56 +00:00
drochner 00b4e62a0a fix "unintialized variable" warning 2003-05-14 11:27:39 +00:00
thorpej af1933bfc8 Add icp at chr 102. 2003-05-13 15:43:42 +00:00
fvdl d840dd2438 While the previous change actually made the code do what it intended,
it was still wrong. cpu_switch() must return 1 when it switched to
a different LWP, 0 if it didn't. It was doing exactly the reverse.
2003-05-13 09:35:16 +00:00
fvdl 297e776d44 Make cpu_switch return the correct value. From Stephan Uphoff, PR 21558 2003-05-13 08:26:32 +00:00
dsl f8607e15d6 KNF and indentation police 2003-05-12 14:59:51 +00:00
dsl f9bb4eea5d Build my new i386 bootcode 2003-05-12 14:48:56 +00:00
dsl 18e1c04d74 Don't override PROG from subdir Makefile
Install into /usr/mdec
2003-05-12 14:35:54 +00:00
dsl 5ba5335a38 Install into /usr/mdec 2003-05-12 14:34:55 +00:00
dsl 0e9fdbb612 Remove some unused defines 2003-05-12 14:33:49 +00:00
yamt 38312b0116 fix "Frame really belongs to next callpc" case. 2003-05-12 13:38:49 +00:00
yamt dc45c698c2 use 'pr' supplied by the caller instead of printf. 2003-05-12 13:16:11 +00:00
joda c2f624f5b2 it's "pentium m" not "pentium-m" 2003-05-12 11:01:17 +00:00
fvdl 19bd661dcc Add a new include file with some ACPI MD macros, to move i386 specific
stuff out of acnetbsd.h
2003-05-11 21:05:19 +00:00
fvdl 7579aadd9b Redirect to x86/ 2003-05-11 18:46:59 +00:00
fvdl 2e91dc8e00 Update for acpi file move to sys/arch/x86/x86. 2003-05-11 18:24:12 +00:00
fvdl fc926e2c62 Moved to sys/arch/x86/x86 2003-05-11 18:23:17 +00:00
fvdl a800a2a6d2 This file was moved to sys/arch/x86/x86 2003-05-11 18:19:18 +00:00
fvdl f946c62f8e Redirect to x86/. 2003-05-11 18:18:08 +00:00
yamt a421df4c74 remove L_BIGLOCK check for kernel-mode pagefaults in trap().
syscall() and its variants actually does copyin() without biglock.

ok'ed by Frank van der Linden.
2003-05-11 15:19:19 +00:00
fvdl 795fec2b60 The i82093 spec is unclear about it, but my assumption that the selected
ioapic register would stick across a read+write appears to be invalid
for some ioapics. So, select it again for the mask write.
2003-05-11 14:02:17 +00:00
fvdl ecb17acb5c * defer actual ACPI interrupt establishment until after the mp_intr tables
have been set up
* store global_int for the MPACPI intr table build case
* use it to find the desired int number passed down to the ACPI intr
  establish call
2003-05-11 00:08:15 +00:00
thorpej e43fecb228 Change bounds_check_with_label() to take a pointer to the disk structure,
rather than the label itself.  This paves the way for some future changes.
2003-05-10 23:12:28 +00:00
thorpej 36da248c07 Back out the following chagne:
http://mail-index.netbsd.org/source-changes/2003/05/08/0068.html

There were some side-effects that I didn't anticipate, and fixing them
is proving to be more difficult than I thought, do just eject for now.
Maybe one day we can look at this again.

Fixes PR kern/21517.
2003-05-10 21:10:23 +00:00
thorpej 2a90e2a9c9 Remove redundant bounds_check_with_label() prototype. 2003-05-10 16:12:02 +00:00
fvdl e5ad654753 Silence a gcc 3 warning about a 'x = ++x % foo' construct. 2003-05-09 00:16:55 +00:00
fvdl daea75d74a installboot is compiled in native mode on amd64, unlike the other
things around here. Hence, the machine/ include dir must actually
point to its own.
2003-05-09 00:11:26 +00:00
fvdl 2ade80fac8 A fraglist entry struct must be packed, to make installboot dtrt on amd64. 2003-05-08 23:09:30 +00:00
fvdl 73324eaa5a Revert previous until I look at some issues regarding default labels. 2003-05-08 20:36:12 +00:00
thorpej b77900c3c2 Simplify the way the bounds of the managed kernel virtual address
space is advertised to UVM by making virtual_avail and virtual_end
first-class exported variables by UVM.  Machine-dependent code is
responsible for initializing them before main() is called.  Anything
that steals KVA must adjust these variables accordingly.

This reduces the number of instances of this info from 3 to 1, and
simplifies the pmap(9) interface by removing the pmap_virtual_space()
function call, and removing two arguments from pmap_steal_memory().

This also eliminates some kludges such as having to burn kernel_map
entries on space used by the kernel and stolen KVA.

This also eliminates use of VM_{MIN,MAX}_KERNEL_ADDRESS from MI code,
this giving MD code greater flexibility over the bounds of the managed
kernel virtual address space if a given port's specific platforms can
vary in this regard (this is especially true of the evb* ports).
2003-05-08 18:13:12 +00:00
kochi 749dbc9fd5 Fix missing break for switch statement. 2003-05-08 14:06:48 +00:00
christos 9dbe78f136 This is a host program. Don't use errx. 2003-05-08 13:42:17 +00:00
fvdl 6aa7a50be4 Adapt for new bus_dma structure.
XXX the MCA-specific stuff in here was never actually used. I pointed
the tag at all the generic functions that can now be used (bounce
functionality was integrated into them).
2003-05-08 12:47:39 +00:00
fvdl 601a2c4d48 Adapt tag initialisation to the new fields that were added recently. 2003-05-08 12:05:34 +00:00
fvdl 9ad6da9936 Move x86_pause() out of ifdef _KERNEL. 2003-05-08 10:27:43 +00:00
fvdl 8aca0c88d2 Add x86_pause() inline function, containing the "pause" instruction
for i386, and nothing for amd64. Sprinkle it in various spinloops,
as recommended by Intel.
2003-05-08 01:04:34 +00:00
fvdl c2bd5e2fe9 Don't whine if no disklabel was found, it's not a fatal error. Follows
Jason's commit to the ARM disksubr.c
2003-05-07 23:32:40 +00:00
fvdl 94cad743e8 Use ${MACHINE} when generating the version string, not plain 'i386'. 2003-05-05 20:49:10 +00:00
hubertf 76a6e18152 use nm(1) to output decimal values immediately, instead of relying on a
(non-working) sh(1) construct.

Reviewed by simonb & bjh21.
2003-05-05 13:38:23 +00:00
dbj 3359b0ac58 force nm addresses in hex and add 0x prefix before handing numerical
expression to the shell.
2003-05-05 02:47:42 +00:00
fvdl 2cd70f0da1 Block level-triggered interrupts at the ioapic if they are deferred.
Avoids interrupt storms seen on some systems. Many thanks to
Stoned Elipot for testing.
2003-05-04 22:01:56 +00:00
ad 225c45d817 Enable the amr driver. 2003-05-04 16:16:18 +00:00
lukem 83fa31ab4c be consistent with other Makefiles here and invoke "rm -f" separately to ln -s 2003-05-04 06:32:39 +00:00
lukem 1d22d3e3ca replace "ln -sf .... $@" with "rm -f $@ && ln -s .... $@"
since the latter works correctly ...
2003-05-04 06:25:10 +00:00
wiz 1ffa7b76c4 DMA, not dma nor Dma. 2003-05-03 18:10:37 +00:00
fvdl 91ccfbdaab Clean up machine include dir handling a tad. 2003-05-03 17:54:21 +00:00
yamt 4b800ec987 set symbol to be a function using .type directive in IDTVEC macro
so that ddb backtrace can pick them up after recent ksyms changes.

suggested by Matt Thomas on tech-kern.
ok'ed by Frank van der Linden.
2003-05-02 18:05:46 +00:00
yamt 04ef812793 add spl.S, vector.S and microtime.S to MD_SFILES so that
'make depend' takes care of them.
2003-05-02 17:40:13 +00:00
tron f4370adfbe Fix typo in last commit: static -> const 2003-05-02 09:36:46 +00:00
dsl d91455ce26 Change return type of readdisklabel() to const char *
I hope I've found all the correct places!
2003-05-02 08:45:10 +00:00
dsl cbcf556e10 Build mbr code here (instead of in sbin/fdisk/mbr) 2003-04-30 19:52:17 +00:00
scw 8c5c893bf7 Add a BKPT_ADDR() macro which gives MD code a chance to munge a
breakpoint address before it's used. Currently a no-op on all but sh5.

This is useful on sh5, for example, to mask off the instruction
type encoding in the bottom two address bits, and makes it possible
to do "db> break $rXX" instead of manually munging the address.
2003-04-29 17:06:03 +00:00
dsl 798f520353 Set BFL_NEWMBR flag so that fdisk can differenciate between new and old mbr code. 2003-04-29 10:24:24 +00:00
bjh21 4be7a2dcf3 Add a new feature-test macro, _NETBSD_SOURCE. If this is defined
by the application, all NetBSD interfaces are made visible, even
if some other feature-test macro (like _POSIX_C_SOURCE) is defined.
<sys/featuretest.h> defined _NETBSD_SOURCE if none of _ANSI_SOURCE,
_POSIX_C_SOURCE and _XOPEN_SOURCE is defined, so as to preserve
existing behaviour.

This has two major advantages:
+ Programs that require non-POSIX facilities but define _POSIX_C_SOURCE
  can trivially be overruled by putting -D_NETBSD_SOURCE in their CFLAGS.
+ It makes most of the #ifs simpler, in that they're all now ORs of the
  various macros, rather than having checks for (!defined(_ANSI_SOURCE) ||
  !defined(_POSIX_C_SOURCE) || !defined(_XOPEN_SOURCE)) all over the place.

I've tried not to change the semantics of the headers in any case where
_NETBSD_SOURCE wasn't defined, but there were some places where the
current semantics were clearly mad, and retaining them was harder than
correcting them.  In particular, I've mostly normalised things so that
_ANSI_SOURCE gets you the smallest set of stuff, then _POSIX_C_SOURCE,
_XOPEN_SOURCE and _NETBSD_SOURCE in that order.

Tested by building for vax, encouraged by thorpej, and uncontested in
tech-userlevel for a week.
2003-04-28 23:16:11 +00:00
dsl b40733ee1b Master Boot Record (mbr) code:
mbr:		boots active partition
mbr_bootsel:	menu selection for partitions 1 to 4
mbr_ext:	menu selection for partitions 1 to 4 and extended partitions
Based on code from sbin/fdisk/mbr_bootsel.
Needs a new fdisk to configure mbr_ext and correctly set default menu selection.(Not yet built by defaulat)
2003-04-28 12:19:05 +00:00
wiz c42e1fac66 Management, not managment. Mostly from jmc@openbsd. 2003-04-26 22:07:12 +00:00
fvdl 043f21d9ea x86_64 -> amd64 2003-04-26 19:14:17 +00:00
fvdl caaaf66e32 x86_64 -> amd64 2003-04-26 19:13:37 +00:00
fvdl a7c0cbd744 Save symtabspace in the LKM || KSYMS case as well; otherwise it'll overlap
with the page table pages for the kernel, and Bad Things will happen.
2003-04-26 18:13:16 +00:00
ragge d8c8fa8111 Add pseudo-device ksyms. 2003-04-26 14:10:04 +00:00
ragge 69a66687f8 Call ksyms_init() instead of ddb_init() in case of
NKSYMS || defined(DDB) || defined(LKM)
2003-04-26 11:05:05 +00:00
fvdl 4b293b5851 Share some common cache info cpuid code between i386 and x86_64. 2003-04-25 21:54:29 +00:00
ragge 766d04f56a Add ksyms device major. 2003-04-25 21:10:46 +00:00
dsl 82d4d158d2 Missing end of comment 2003-04-24 17:41:03 +00:00
dsl c9a0a49ac7 Don't use ENTRY - it aligns the label and we can't afford the space.
Adjust coding to save 2 more bytes (assume 'D' flag clear - it is)
2003-04-24 17:40:32 +00:00
dsl cf4ada7934 Fix code that scans extended partition list 2003-04-24 17:37:54 +00:00
yamt 5d60643560 use acpi notify mechanism if possible.
XXX i'm not sure if there're PCs that actually need to fall back to polling.
2003-04-23 15:48:35 +00:00
jmmv f302f813f2 Bump ramdisk size to 3000 blocks. 2003-04-23 14:21:07 +00:00
fvdl bee66ff5b4 Add commented-out ahd driver. 2003-04-21 00:17:46 +00:00
fvdl 6886cf85b0 Initialize name and dma tag. 2003-04-20 16:54:23 +00:00
martin c1a5cc810d The sysmon device is used for sysmon_power too. 2003-04-20 16:51:35 +00:00
fvdl 4d6d3fb37b Call ahc_softc_init in attach function. 2003-04-20 15:48:25 +00:00
fvdl 349233c2db Adapt to new backend. Needs testing. 2003-04-19 19:36:20 +00:00
thorpej 091e93c002 Bump ramdisk size to 4600 blocks. 2003-04-17 22:57:16 +00:00
thorpej 9cac2cc6d1 Add mpt(4). 2003-04-16 23:39:02 +00:00
thorpej e56e76188e Fix a typo. 2003-04-16 23:36:22 +00:00
dsl 60c3e62a42 Add files for 2nd stage boot loader 2003-04-16 22:36:14 +00:00
dsl b10e65e490 Uncomment line that deletes tempory file 2003-04-16 22:34:00 +00:00
dsl 415cb92c98 Add functions needed by new boot code 2003-04-16 22:30:40 +00:00
dsl 2737b135d5 bootxx: bootstrap code - installable by MI installboot.
Loads /boot using filesystem accesses (rather than a list of block numbers)
2003-04-16 22:27:35 +00:00
dsl eb2692a8d2 bootxx: bootstrap code - installable by MI installboot.
Loads /boot using filesystem accesses (rather than a list of block numbers)
2003-04-16 22:16:36 +00:00
dsl c8db3bdc65 Partially reverse previous change.
Reset RTC only if ntp is running or adjtime system call has changed time.
2003-04-16 21:37:37 +00:00
dsl 1c31ec44a3 Don't set the RTC to kernel time during shutdown.
This stops the system RTC drifting if any hardclock ticks were missed (eg
if the system spent any time at the kdb prompt).
The RTC is set whenever the system clock is set, so setting at shutdown
is unnecessary.
2003-04-16 19:07:34 +00:00
dsl fe778b7b70 Remove definition of LIBSA_SUPPORT_UFS2, the source will only build separate
ufsv1 and ufsv2 objects (the merged one was too large for the code that only
supported a single fs type).
2003-04-16 19:03:33 +00:00
dsl 586810c59b Routines to switch between 16bit real and 32bit protected modes 2003-04-16 17:38:43 +00:00
dsl 0c5af93233 Add some debug prints to the memory size code 2003-04-16 15:03:59 +00:00
bouyer aec10dd80c Nake return values from bounds_check_with_label() conform to the man
page: -1 for error, 0 for EOF, 1 otherwise. Inspired by an OpenBSD commit
message, pointed out by Miod Vallat in private mail.
vax/mba/hp.c: check return value <= 0, not < 0 to be concistent with how
other places handle return values from bounds_check_with_label().
2003-04-16 15:00:59 +00:00
dsl cb61d88cb5 Add baud_rate arg to cominit_d 2003-04-16 14:58:32 +00:00
dsl e60ac53619 Modify baud rate handling to make it easier to take it from a variable.
Default to 9600 if the requested baud rate is illegal.
2003-04-16 14:56:55 +00:00
dsl d5b5933e8c remove unused defines 2003-04-16 14:23:11 +00:00
dsl 616c6baa61 Add code to parse V3.x bios disk information.
This should let NetBSD guarantee to tie together the bios disk numbers
with the physical hardware.
#defined out because I don't have a system with a bios that supports it.
2003-04-16 14:22:29 +00:00
dsl 621f25533d Add cvs version, delete unused definition 2003-04-16 13:49:21 +00:00
dsl 2ae46742a2 Add prototyps for all the asm bios/dos calls 2003-04-16 13:47:53 +00:00
dsl 4cf0478777 additional support routines for boot code 2003-04-16 13:24:09 +00:00
dsl 1d68743dfc C code now sets length of disk info structure 2003-04-16 12:45:10 +00:00
dsl 7119639d07 used daddr_t for disk block numbers,
add definitions for v2 and v3 disk info structures
2003-04-16 12:43:45 +00:00
dsl fd18f39232 Use daddr_t for disk block numbers,
Set size of extended disk info structure in the C code
2003-04-16 12:41:03 +00:00
scw 3e475eb186 From PR port-i386/20464, by Yoshihisa Nakagawa: Match i845G AGP bridge. 2003-04-16 07:37:09 +00:00
dsl 225615a61a avoid calling toupper with posibly -ve value. fixes PR 21171 2003-04-14 11:33:40 +00:00
simonb 4dcb48921b Use "options<space><tab>". 2003-04-12 07:39:39 +00:00
nathanw ff28c51cc0 Make cpu_getmcontext() run the PC through ras_lookup() so that kernel
getcontext() plus userlevel setcontext() (as used in libpthread) respects
the atomicity of RAS regions.
2003-04-11 22:02:28 +00:00
drochner 7e56069d9c IPR_VJ -> IRIP_VJ 2003-04-11 14:55:39 +00:00
dsl 243bb03c7c Explicitly specify both ffsv1 and ffsv2 2003-04-11 11:36:28 +00:00
christos b9f9db3ca2 Bye Bye UCONSOLE 2003-04-10 22:06:51 +00:00