Commit Graph

48453 Commits

Author SHA1 Message Date
thorpej 091e29f94f In i386_softintr_lock(), use splserial() rather than splhigh(),
because of splhigh() braindamage on the i386 port.

Fixes port-i386/13038 and port-i386/12985.
2001-07-16 16:53:00 +00:00
augustss 87791333ae Reorganize the table of adapters slightly. 2001-07-16 16:15:12 +00:00
oster 81f5c58b58 If we're closing the last partition on a RAID set and the system is
being shutdown, then unconfigure the RAID set too.  This fixes a number
of issues with doing proper unconfigures/shutdowns of multi-level RAID
sets.

Thanks to Jason Thorpe and Bill Squier for the ideas/suggestions on
how/where to do this, and to Bill Squier for testing.
2001-07-16 15:50:27 +00:00
augustss f82d5c6424 Regen. 2001-07-16 15:39:22 +00:00
augustss e71f79ca0b Add a bunch of ADMtek Ethernet adapters. 2001-07-16 15:38:48 +00:00
augustss 298ec741b8 Alphabetize. 2001-07-16 13:54:23 +00:00
augustss 5d1d09b8fb Alphabetize. 2001-07-16 13:49:20 +00:00
matt bb9bd28fa8 Change way PIC stuff is emitted for ELF to be more flexible. 2001-07-16 05:43:32 +00:00
matt 59ce75e3e7 Need to emit PLT magic for PIC ELF files. 2001-07-16 05:42:50 +00:00
augustss bd538b438b Regen. 2001-07-16 05:04:51 +00:00
augustss f4d7e2e9d6 Add SOHOware NUB100. From OpenBSD. 2001-07-16 05:04:29 +00:00
elric 99e8b114e0 So, the PowerStorm 4d20 a.k.a. 32bit TGA2 w/ IBM RGB561 RAMDAC was causing
the kernel to panic since it is recognised as a TGA and the TGA driver
doesn't [yet] know what to do with it.

This patch fixes that by:
	o  making tgamatch() try to actually figure out what kind
	   of TGA card is there, rather than simply relying on the
	   vendor/product ids.
	o  creating a tga_cnmatch() so that the console code in
	   arch/alpha/pci/pci_machdep.c can cause the same to occur.
	o  breaking up some of tga_getdevconfig() into a few different
	   functions to re-use code that would have been duplicated.
	o  changed arch/alpha/pci/pci_machdep.c so that it calls out
	   to tga_cnmatch() if DEVICE_IS_TGA() matches before it decides
	   to attach the console as a TGA.

Addresses PR: port-alpha/12923
2001-07-16 00:55:16 +00:00
thorpej dcfd225d73 Defer sending shootdown IPIs a bit longer. Reduces traffic a fair
bit more.
2001-07-15 21:57:01 +00:00
martin accb35c3a2 Fix slight glitch from rev. 1.70: bp is not adjusted for next loop after
outputting some data.
Fix provided by isaki@par.odn.ne.jp in PR kern/13472.
2001-07-15 21:17:29 +00:00
christos 2c913b0983 Fix problem reported by Greg Woods, with ld -n generated binaries.
Now if the requested alignment of the psection is less than PAGE_SIZE
we use readvn, not pagedvn and we don't adjust sizes.
2001-07-15 20:52:35 +00:00
christos 87e055d89e Use DPRINTF, and print all exec_vmcmds when we are debugging.
Don't use DEBUG, use DEBUG_EXEC to turn all that on.
2001-07-15 20:49:40 +00:00
ichiro 5cbb157eb8 initial commit UDA1341 CODEC 2001-07-15 20:19:31 +00:00
jdolecek 318fdc0c37 execute signal handlers on separate signal stack, if it's been provided 2001-07-15 20:02:21 +00:00
ichiro e5e13da17f Mapping the SSP registers 2001-07-15 17:18:53 +00:00
ichiro 5bc60be08a add handle of sc_ssph 2001-07-15 17:12:11 +00:00
thorpej ff62d4c0c5 - Tweak the pmap locking protocol slightly -- require that a pmap must
be locked before it can be marked as `active' on a processor.
- Require that pmaps other than the kernel pmap be locked when they
  are passed to pmap_tlb_shootdown().  This, combined with the locking
  protocol tweak, allow us to get a consistent view of `activeness' of
  a pmap, which means we can optmize away a lot of TLB shootdown traffic
  for user pmaps.
- Borrow an idea from the i386mp branch; use the normal SHOOTDOWN IPI
  to deal with hitting the entire TLB, and garbage-collect the TBIA
  and TBIAP IPIs.
2001-07-15 16:42:18 +00:00
fredette 047e3dd5d8 When reporting an ICR value, use bitmask_snprintf to
give a human-readable description of the value.
2001-07-15 16:32:40 +00:00
fredette 7c89e5223a Added. 2001-07-15 16:29:29 +00:00
fredette b17cd016d5 Removed. It's easier to keep this file with MACHINE-specific
sources.
2001-07-15 16:28:55 +00:00
fredette 9308245f59 Replace vm_page_t with struct vm_page *. 2001-07-15 16:27:57 +00:00
jdolecek 55aebfe98e Remove initial newline from copyright[], which was mistakely added in rev.1.191.
Fixes kern/13470 by Tetsuya Isaki.
2001-07-15 14:36:06 +00:00
ichiro fed0a40ba6 add definition I/Opins of UDA1341 2001-07-15 13:29:38 +00:00
ichiro cf1c37c9aa UDA1341TS economy audio CODEC for portable applications.
This is used for iPAQ CODEC.
2001-07-15 08:34:36 +00:00
takemura a0b378689f Suppress warning message:
warning: duplicate script for target "fp.o" ignored
And delete verbose ifs.
2001-07-15 06:38:07 +00:00
thorpej f79117f725 UVM never passes us a NULL pmap argument; remove that Mach VM leftover. 2001-07-15 05:24:20 +00:00
ichiro 60f2ec7ec1 enable extended gpio operation 2001-07-15 00:30:17 +00:00
matt 7a4fca28c6 Add a GOTSYM which emits the right stuff to GOT symbols under ELF and/or
a.out.
2001-07-14 18:24:41 +00:00
thorpej 6908e679ac Cosmetic change. 2001-07-14 17:55:42 +00:00
kanaoka 0158d481bd Add rnd, ppp and com* at pcmcia? function ?. 2001-07-14 17:02:57 +00:00
kleink 8468d6d854 Fix obvious typo in multiple-inclusion protection wrapper. 2001-07-14 12:05:53 +00:00
scottr 79e44b9f63 Hack writedisklabel() to re-read and analyze the Apple Disk Partition Map
to facilitate sysinst-based modification of the same.  From Bob Nestor.
2001-07-14 07:38:31 +00:00
matt 497b990687 Clarify when/where MACHINE & MACHINE_ARCH are defined. Add default
user-visible definitions.
2001-07-14 07:31:31 +00:00
matt f300898396 Add support for kern.maxphys, vm.maxslp, vm.uspace (the later two for ps). 2001-07-14 06:36:01 +00:00
thorpej 3eeb00e998 Oops, only register those event counters if the primary processor. 2001-07-14 05:48:45 +00:00
thorpej c022450f9c Instrument the lazy FP context switch path:
- fpevent_use is incremented the first time a process uses FP
  for the first time (note, FPUSED is inherited on fork, but
  cleared on exec).
- fpevent_reuse is incremented whenever a process that has previously
  used FP has to take a FEN trap in order to be able to use it again.
2001-07-14 05:10:38 +00:00
christos 825843808a add MACHO_MACHDEP_CASES 2001-07-14 03:05:51 +00:00
christos 66b3b42040 use be32toh instead of bswap32
add a macro MACHO_MACHDEP_CASES instead of ifdef'ing cpu types.
thanks jason!
2001-07-14 03:05:31 +00:00
christos d6cbc8a99d add mach/macho files 2001-07-14 02:18:02 +00:00
christos 6f12096732 add a shell that does nothing for now for the mach syscalls. 2001-07-14 02:10:59 +00:00
christos b6639a0e83 new exec module for MACH-O fat binaries
XXX: shared libraries are not handled properly yet.
2001-07-14 02:09:41 +00:00
christos 69f5770270 - add exec_read_from and make exec_elf32 use it.
- add a macho probe function
2001-07-14 02:08:29 +00:00
christos 32a9a52549 add mach/macho exec struct 2001-07-14 02:06:34 +00:00
christos 1d3422cb55 add macho glue 2001-07-14 02:05:54 +00:00
christos 97c9d7a9dd rename elf32_read_from to exec_read_from since it is used in many places
now.
2001-07-14 02:05:05 +00:00
christos 747d93e317 new i386 files for macho and mach. 2001-07-14 02:04:25 +00:00
christos 75dabe22c7 Use global descriptor 7 for mach traps. Unfortunately this is already
used by apm 16 bit code segments so we cannot have both at the same time.
2001-07-14 02:02:45 +00:00
christos 661d4f4564 Add COMPAT_MACH and EXEC_MACHO. Code works enough to start running a binary,
but we need to implement a few mach traps before the dynamic linker actually
works.
2001-07-14 02:00:39 +00:00
matt 24a2b394aa Make <sysarch.h> valid for all arm platforms. Adjust/remove port-specific
includes as required.
2001-07-14 00:23:09 +00:00
kristerw 42bb92201c Removed redundant (and slightly wrong) extern declaration of emul_svr4
(newer gcc complains that only one of the declarations are const.)
2001-07-13 23:32:26 +00:00
itojun ceb069ef00 sync with GENERIC 1.410. mention pkgsrc/sysutils/lambd. 2001-07-13 23:00:32 +00:00
fredette bb6c8bfadd Now mimic the sparc64's handling of NKBD/NSUNKBD and NMS/NSUNMS. 2001-07-13 22:27:02 +00:00
thorpej 335571bc61 Change the way we spin up CPUs. Now boot the CPU as soon as we
discover it, but make it block on a semaphore until the MI kernel
says that we can let the secondary processors loose.  This allows
us to announce the extensions on the secondary CPUs, and to compute
the intersection of all the extensions across all CPUs, like so:

cpu0 at mainbus0: ID 0 (primary), 21164A-2
cpu0: Architecture extensions: 1<BWX>
cpu1 at mainbus0: ID 1, 21164A-2
cpu1: Architecture extensions: 1<BWX>
2001-07-13 21:34:35 +00:00
perseant 4e3fced95b Merge the short-lived perseant-lfsv2 branch into the trunk.
Kernels and tools understand both v1 and v2 filesystems; newfs_lfs
generates v2 by default.  Changes for the v2 layout include:

- Segments of non-PO2 size and arbitrary block offset, so these can be
  matched to convenient physical characteristics of the partition (e.g.,
  stripe or track size and offset).

- Address by fragment instead of by disk sector, paving the way for
  non-512-byte-sector devices.  In theory fragments can be as large
  as you like, though in reality they must be smaller than MAXBSIZE in size.

- Use serial number and filesystem identifier to ensure that roll-forward
  doesn't get old data and think it's new.  Roll-forward is enabled for
  v2 filesystems, though not for v1 filesystems by default.

- The inode free list is now a tailq, paving the way for undelete (undelete
  is not yet implemented, but can be without further non-backwards-compatible
  changes to disk structures).

- Inode atime information is kept in the Ifile, instead of on the inode;
  that is, the inode is never written *just* because atime was changed.
  Because of this the inodes remain near the file data on the disk, rather
  than wandering all over as the disk is read repeatedly.  This speeds up
  repeated reads by a small but noticeable amount.

Other changes of note include:

- The ifile written by newfs_lfs can now be of arbitrary length, it is no
  longer restricted to a single indirect block.

- Fixed an old bug where ctime was changed every time a vnode was created.
  I need to look more closely to make sure that the times are only updated
  during write(2) and friends, not after-the-fact during a segment write,
  and certainly not by the cleaner.
2001-07-13 20:30:18 +00:00
bouyer c399f05222 scsipi_set_xfer_mode(): issue a ADAPTER_REQ_SET_XFER_MODE request to adapter
only if we succesfully attached at last one device for this I_T.
2001-07-13 20:00:23 +00:00
matt c5e61ec6d5 Move user-visible MBUF constant here. Define MAXPHYS. Include DEV_BSIZE 2001-07-13 19:43:15 +00:00
christos 366971a414 Back out previous. The booter will need to find the symbol table itself,
as explained in the code.
2001-07-13 17:43:23 +00:00
christos 6711e49228 From Nigel Pearson: Make SYMS and NSYMS work on ELF.
The MacOS booter needs them.
2001-07-13 17:17:12 +00:00
uch 9b3338a9fe add ukphy 2001-07-13 16:27:48 +00:00
uch e71868d339 cosmetic changes. 2001-07-13 16:21:39 +00:00
uch eb255ec7a8 fix interrupt, voltage supply bug of channel 1.
(patch by Masanori Kanaoka).
2001-07-13 16:14:29 +00:00
sato 9879757a53 disable framebuffer drawing while suspending. 2001-07-13 10:23:41 +00:00
ichiro 2d93d462a3 The definiton which overlapped was erased. 2001-07-13 06:54:35 +00:00
ichiro 073132a7b9 define GPIO alternate functions
They become effective by turning on GAFR.
2001-07-13 03:33:38 +00:00
onoe 993f9377b8 disable the function if attach fails. 2001-07-13 03:09:39 +00:00
thorpej d819792e68 Use memcpy() in kcopy(), copyin(), and copyout(). XXX This means we have
to burn 3 insns to swap the arguments.  Need to change the interface to
these routines to match memcpy().

G/C bcopy() from here.  We'll let it be provided by libkern (which is
what provides memcpy()) until bcopy() is exorcised completely.
2001-07-13 00:06:06 +00:00
thorpej ac8a2539c1 Provide bcopy() here. 2001-07-13 00:04:00 +00:00
thorpej 97d7c635b0 bcopy -> memcpy 2001-07-12 23:35:42 +00:00
thorpej 1dd3ea59f6 bcmp -> memcmp 2001-07-12 23:26:30 +00:00
thorpej 294259060c bzero -> memset 2001-07-12 23:25:39 +00:00
eeh 8210f5a2f2 Set up proper cache colors. 2001-07-12 23:13:15 +00:00
thorpej 41a68e94a9 Driver for the Level One LXT-1000 10/100/1000 PHY. 2001-07-12 21:54:40 +00:00
thorpej be71426b74 Regen; Add LXT-1000, clean up. 2001-07-12 21:25:31 +00:00
thorpej 6e65eb3c21 Add LevelOne LXT-1000 10/100/1000 PHY, clean up some Gig-E
PHY names.
2001-07-12 21:25:07 +00:00
fredette cc468086e7 Fixed the known obio address range for the Multibus
machines to avoid bwtwo matching on obio.
2001-07-12 19:24:40 +00:00
thorpej aef9e7bea3 Code to handle generic ten-bit interfaces (1000BASE-{LX,SX} fiber
interfaces).
2001-07-12 18:49:38 +00:00
thorpej 0e863b15a6 Driver for the Marvell 88E1000 ``Alaska'' 10/100/1000 PHY. 2001-07-12 17:30:45 +00:00
thorpej 39928114d6 Regen; corrected Marvell entries. 2001-07-12 17:29:49 +00:00
thorpej 511aa23898 Correct Marvell OUI, and 88E1000 model number. 2001-07-12 17:29:18 +00:00
scw 05be817d7b Call clmpcc_init() when setting up the console to get the chip into
a known state.

For some reason, "Bug" on mvme68k can't be relied upon to leave it
in a good enough state for our console routines...
2001-07-12 17:21:01 +00:00
scw d228a76237 Use PCB_ONFAULT instead of hardcoding a value of 64. This is fine
for Amiga and Atari but not for other m68k ports which use m68k/pcb.h.
2001-07-12 17:17:45 +00:00
reinoud 0d6f7550d9 A new setup for the fastboot file... a lot more clear. 2001-07-12 15:55:42 +00:00
matt d09cef0906 Gah!. Use the variable name (LINKENTRY). 2001-07-12 07:02:00 +00:00
matt b87f0f71b5 Allow ELF to be executed. Remove any depenence on a.out header. Instead
use etext & end to establish text and kernel size.
2001-07-12 07:01:12 +00:00
matt 84a6046c6c Add LINKENTRY makeoption for "-e nwstart" 2001-07-12 06:58:27 +00:00
matt 2d9f71a0d9 Fix a few things for NetWinder. NetWinder needs to override the
std entry point so add a hook for that.  Also pick up the port
specific .inc file from the right directory.
2001-07-12 06:25:07 +00:00
nathanw dda83b1771 Add the keyboard ID found on the American versions of the PowerBook G4 and
iBook (dual USB).
2001-07-12 04:16:58 +00:00
ichiro 6244e7b3a1 add more MCP status register definition 2001-07-12 03:58:35 +00:00
eeh 6d9a58bd0b Fix problems booting 32-bit kernels and dispatching level-15 interrupts. 2001-07-11 23:02:56 +00:00
eeh ec450c39d5 Fix math calculating the number of pages the kernel takes up.
Add some more asserts.
2001-07-11 23:00:02 +00:00
briggs d0dae0b07e Allow build with KGDB defined. 2001-07-11 22:11:29 +00:00
ichiro 4e28fbd762 add SA-1110 MCP(Multimedia communications Port) register definition 2001-07-11 16:02:25 +00:00
ichiro 88874f0037 add MCP control register1
this resides within the same address space as PPC
2001-07-11 15:56:00 +00:00
ichiro b5bb8c348f add MCP address register 2001-07-11 15:20:23 +00:00
augustss 981c2a6401 Rearrange register dump when the controller is dying. Fixes PR 13430. 2001-07-11 14:11:00 +00:00
ichiro d100f4ef02 regen 2001-07-11 10:00:08 +00:00