Commit Graph

48357 Commits

Author SHA1 Message Date
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