Commit Graph

6120 Commits

Author SHA1 Message Date
dsl ca9f17c96d Add bsd.obj.mk so these directories get their own obj directory (for the
library objects shared by their subdirectories).
Needed when the obj directory isn't a parent of the subdirectories obj directory
2003-10-13 06:56:47 +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
lukem e076c47767 Instead of defining TERSE_ERROR by default (due to space constraints),
define NO_LBA_CHECK.  bootxx_msdos still needs TERSE_ERROR because its
BPB is larger than the default.
2003-10-13 06:15:00 +00:00
lukem af93a5c749 The reserved space for the BIOS Parameter Block (BPB) only needs to be for
FAT16 (11+51) except when booting from FAT{12,16,32}, which needs FAT32 (11+79).
We still reserve the BPB for non-bootxx_msdos PBR bootblocks because
they may be installed as a floppy boot record (and those need a BPB).

Remove some redundant wording in an error messsage, saving 6 bytes.
2003-10-13 06:08:28 +00:00
dyoung 8a58dbfd9a Add atw at cardbus (ADMtek ADM8211 802.11). 2003-10-13 05:46:26 +00:00
dyoung f39f5e0652 Add atw (ADMtek ADM8211 802.11). 2003-10-13 05:45:59 +00:00
dyoung 2f8d4622dd Add atw at cardbus (ADMtek ADM8211). 2003-10-13 05:43:14 +00:00
dyoung b491c05ae7 Add the 82801EB LPC, which provides the PCI Interrupt Router on
the Dell PowerEdge 400SC.
2003-10-13 05:19:19 +00:00
jdolecek 0979ebaa1c g/c major for 'netsmb' and mark the slot free - it has never been used 2003-10-11 07:54:26 +00:00
jdolecek ef5bb330f5 reassing majors for crypto and pf to use the newly defined MI major
range
2003-10-10 22:42:39 +00:00
jdolecek 4e915c9ccd update the comment - the space for machine-dependant majors
is reduced to 0-143
follows discussion on tech-kern
2003-10-10 21:21:25 +00:00
thorpej a483d3a893 Delete the vinum major; it conflicts with an existing entry, and should
be added to the MI space anyway.
2003-10-10 17:36:56 +00:00
simonb 84fa2d5a87 Take previous even further - leave only CTL_MACHDEP and related
definitions and structures outside the #ifdef _KERNEL block.
2003-10-10 13:02:34 +00:00
yamt 26efaef9af revert the previous (thanks, lukem)
and wrap curcpu, cpu_info and friends with #ifdef _KERNEL completely.
2003-10-10 11:53:44 +00:00
lukem b313b2641e Userland needs <stddef.h> for offsetof(), not <lib/libkern/libkern.h> ...
(Arguably a chunk more of this file could be protected with _KERNEL.
That's a separate project.)
2003-10-10 06:27:15 +00:00
grog 2ce576d37a Add config info for Vinum 2003-10-10 04:50:07 +00:00
grog c6ed3adf63 Add major number for Vinum. 2003-10-10 03:51:58 +00:00
yamt d9d3c0dd8e avoid a magic number in curcpu(). 2003-10-09 13:46:43 +00:00
dsl ab073a34f8 Move lib/crt/start_rom.S to a more sensible location. 2003-10-09 10:56:13 +00:00
dsl 44ac426707 Use real_to_prot (etc) from stand/lib.
Add a patchable header for boot parameters (eg console type).
2003-10-09 10:36:26 +00:00
dsl 3d4b6a197d Pick up X86_BOOT_MAGIC_* from bootblock.h
Move boot_params.S to lib (seems useful to use it in pxeboot).
2003-10-09 10:29:39 +00:00
dsl 6f9f3c64a7 Move start_pxe.S to a more sensible place 2003-10-09 09:42:25 +00:00
thorpej 901da40cf9 Add some accessor macros for the ucontext:
* _UC_MACHINE_PC() - access the program counter
* _UC_MACHINE_INTRV() - access the integer return value register
* _UC_MACHINE_SET_PC() - set the program counter (this requires
  special handling on some platforms).
2003-10-08 22:43:01 +00:00
thorpej 55452b8f35 Use KSI_INIT_TRAP(). 2003-10-08 19:10:30 +00:00
dsl 977fe7c488 Change the way the shared lib directory is handled.
Should now work if ${.OBJDIR} = ${.CURDIR}/obj.
2003-10-08 18:51:50 +00:00
dsl cabc1ae936 Need to explicitly create directory behing symlink.
Clean share lib directory.
2003-10-08 18:38:43 +00:00
dsl 2ae753f095 Only build the libraries once, 2003-10-08 18:20:15 +00:00
dsl c8b26967a8 These files are not used by the new boot code. 2003-10-08 13:10:20 +00:00
dsl c86f86e53a BSSTART was only used for the (now depracated) old stand/biosboot code. 2003-10-08 13:06:30 +00:00
augustss be81c72bb8 Alphabetize. 2003-10-08 12:08:38 +00:00
bouyer f5a6a0a843 Add new per-chip pciide drivers. 2003-10-08 11:55:43 +00:00
bouyer 8f905677f4 Adapt for wdcattach() prototype change. 2003-10-08 11:10:18 +00:00
bouyer f003412676 Add atabus 2003-10-08 11:10:04 +00:00
lukem 8ff09e8ecf Remove the unused "hardcode the blocks of /boot" versions /boot and
i386-MD installboot.
They haven't been enabled for a while, keeping them here is just
confusing, and they're still going to be in the CVS repo attic...
2003-10-08 04:43:28 +00:00
lukem 1c33b4e6a4 Overhaul MBR handling (part 1):
<sys/bootblock.h>:
    *	Added definitions for the Master Boot Record (MBR) used by
	a variety of systems (primarily i386), including the format
	of the BIOS Parameter Block (BPB).
	This information was cribbed from a variety of sources
	including <sys/disklabel_mbr.h> which this is a superset of.

	As part of this, some data structure elements and #defines
	were renamed to be more "namespace friendly" and consistent
	with other bootblocks and MBR documentation.
	Update all uses of the old names to the new names.

<sys/disklabel_mbr.h>:
    *	Deprecated in favor of <sys/bootblock.h> (the latter is more
	"host tool" friendly).

amd64 & i386:
    *	Renamed /usr/mdec/bootxx_dosfs to /usr/mdec/bootxx_msdos, to
	be consistent with the naming convention of the msdosfs tools.

    *	Removed /usr/mdec/bootxx_ufs, as it's equivalent to bootxx_ffsv1
	and it's confusing to have two functionally equivalent bootblocks,
	especially given that "ufs" has multiple meanings (it could be
	a synonym for "ffs", or the group of ffs/lfs/ext2fs file systems).

    *	Rework pbr.S (the first sector of bootxx_*):
	    +	Ensure that BPB (bytes 11..89) and the partition table
		(bytes 446..509) do not contain code.
	    +	Add support for booting from FAT partitions if BOOT_FROM_FAT
		is defined.  (Only set for bootxx_msdos).
	    +	Remove "dummy" partition 3; if people want to installboot(8)
		these to the start of the disk they can use fdisk(8) to
		create a real MBR partition table...
	    +	Compile with TERSE_ERROR so it fits because of the above.
		Whilst this is less user friendly, I feel it's important
		to have a valid partition table and BPB in the MBR/PBR.

    *	Renamed /usr/mdec/biosboot to /usr/mdec/boot, to be consistent
	with other platforms.

    *	Enable SUPPORT_DOSFS in /usr/mdec/boot (stage2), so that
    	we can boot off FAT partitions.

    *	Crank version of /usr/mdec/boot to 3.1, and fix some of the other
	entries in the version file.

installboot(8) (i386):
    *	Read the existing MBR of the filesystem and retain the BIOS
    	Parameter Block (BPB) in bytes 11..89 and the MBR partition
	table in bytes 446..509.  (Previously installboot(8) would
	trash those two sections of the MBR.)

mbrlabel(8):
    *	Use sys/lib/libkern/xlat_mbr_fstype.c instead of homegrown code
	to map the MBR partition type to the NetBSD disklabel type.


Test built "make release" for i386, and new bootblocks verified to work
(even off FAT!).
2003-10-08 04:25:43 +00:00
thorpej 68723a995b * Shuffle some data structures so, and add a flags word to ksiginfo_t.
Right now the only flag is used to indicate if a ksiginfo_t is a
  result of a trap.  Add a predicate macro to test for this flag.
* Add initialization macros for ksiginfo_t's.
* Add accssor macro for ksi_trap.  Expands to 0 if the ksiginfo_t was
  not the result of a trap.  This matches the sigcontext trapcode semantics.
* In kpsendsig(), use KSI_TRAP_P() to select the lwp that gets the signal.
  Inspired by Matthias Drochner's fix to kpsendsig(), but correctly handles
  the case of non-trap-generated signals that have a > 0 si_code.

This patch fixes a signal delivery problem with threaded programs noted by
Matthias Drochner on tech-kern.

As discussed on tech-kern.  Reviewed and OK's by Christos.
2003-10-08 00:28:40 +00:00
skd 6347eb786e Support for proper siginfo FP codes. Also, set si_trap to fp status word.
Approved by fvdl.
2003-10-07 14:35:37 +00:00
lukem 420f3b76ba Replace BP_* with I386_BP_FLAGS_*, for consistency with other stuff in
<sys/bootblock.h>
(CONSDEV_ should be converted as well, but that's more intrusive...)
2003-10-06 05:24:54 +00:00
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