Commit Graph

86 Commits

Author SHA1 Message Date
nakayama e3e4805068 Replace machine/rnd.h with more appropriate name to share it
with cycle counter based microtime in kern/kern_microtime.c.
2003-02-05 13:57:50 +00:00
matt 2b0e97a561 Rename PPC_MPC6XX to PPC_OEA (and any mpc6xx reference to oea). 2003-02-03 17:09:53 +00:00
matt 3e793a03a1 More cleanup for OLDPMAP. 2003-02-03 05:15:51 +00:00
matt 193a5761aa Remove OLDPMAP support. 2003-02-02 21:22:11 +00:00
thorpej f91b0bb3f2 Merge the nathanw_sa branch. 2003-01-18 06:23:28 +00:00
matt 72020abb85 Add platform support for the IBM PPS Model 6040 (E) (aka ThinkPad 820). 2003-01-16 02:18:20 +00:00
wiz 1035faff1d writable, not writeable. 2003-01-06 20:30:28 +00:00
thorpej 78ea2dd367 Use __LDPGSZ (which must be == USRTEXT) as the text address for a.out
executables, and eliminate the USRTEXT constant, which was only used
by the a.out exec code.
2002-12-10 05:14:24 +00:00
manu 9f6565f2bd A working fork/vfork implementation. Darwin fork differs from our fork by
two ways:
- the child gets its pid as retval[0] (userland stub will turn it into a 0),
retval[1] is 1 and it is 0 in the parent.
- in the child, the fork syscall is successful, hence we must skip the next
instruction.
2002-12-08 21:53:10 +00:00
lukem 0635de35a3 Remove KDIR=, since SYS_INCLUDE=symlinks and KDIR are not supported any more. 2002-11-26 23:30:07 +00:00
matt c9699a165e Add missing file. 2002-10-30 18:31:39 +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
briggs 0b956d0b8b Implement pmc(9) -- An interface to hardware performance monitoring
counters.  These counters do not exist on all CPUs, but where they
do exist, can be used for counting events such as dcache misses that
would otherwise be difficult or impossible to instrument by code
inspection or hardware simulation.

pmc(9) is meant to be a general interface.  Initially, the Intel XScale
counters are the only ones supported.
2002-08-07 05:14:47 +00:00
matt 643ea53c65 Use 11 for the USER_SR since we use BAT 12 for PCI MEM space. 2002-07-31 16:23:37 +00:00
matt 685778b53b Peform a rototill over the powerpc-based ports.
Move the trap/vector initialization for MPC6xx ports to mpc6xx_machdep.c
Also move softnet, install_extintr, mapiodev, kvtop.  Add common BAT
initialization code.

Add user Altivec support.

Fix calls to OF_call_method in macppc/macppc/machdep.c.

Use ci_fpuproc in cpu_info instead of separate fpuproc.

Add separate syscall.c and defined __HAVE_SYSCALL_INTERN.
2002-07-05 18:45:15 +00:00
nonaka 79e01c5f6f Support IBM RS/6000 43P 7043-140. 2002-05-30 16:10:03 +00:00
thorpej dada8613e1 Let machine-dependent code specify how to enumerate the bus.
Currently, everyone uses pci_enumerate_bus_generic().
2002-05-15 19:23:51 +00:00
nonaka ed9081de2a Added IBM Personal Power Series 830 IDE controller support. 2002-05-02 15:17:56 +00:00
nonaka b9fc6ff617 rename reset_ibm_generic() -> reset_prep_generic(). 2002-05-02 14:48:27 +00:00
wiz bc768c8abb Remove unneeded cdev_decl(pms). 2002-04-19 02:15:59 +00:00
chs bd2a5f591d switch all mpc6xx powerpc ports to NEWPMAP by default.
the old pmap is still available with the OLDPMAP option.
2002-03-09 23:35:56 +00:00
matt e8db553326 Change LABELOFFSET to 0 to be more compatible with other MBR style ports. 2002-03-09 01:15:22 +00:00
simonb 4324f37586 Use "#define<tab>". 2002-02-28 03:17:23 +00:00
christos 6b030ee036 - define other DEV_ constants that the local port uses.
- delete cdev_decl(mm) since <sys/conf.h> does it.
2002-02-27 01:19:03 +00:00
kleink 9fcf8c7e63 Add platform support for the Motorola Ultra Plus and Ultra 60x boards.
Note that this currently matches only the boards built into Bull Estrella
systems, as Bull chose to change the board identification string whose
original content is not known at this time.
2002-02-26 16:09:14 +00:00
kleink 326c1b225d Move the ext_intr() variant using the board interrupt vector register
into common code; it is not specific to the 6050, and in fact not even
specific to IBM-built hardware.
2002-02-26 00:30:10 +00:00
kleink d5fe2ac32f Declare the id argument to pci_conf_hook(9) as pcireg_t, which is more
appropriate.
2002-02-25 00:34:13 +00:00
kleink 5410bbdb16 In order to support both indirect PCI configuration space access as well
as direct-mapped PCI configuration space access (such as implemented on
the IBM 27-82650 PCI Host Bridge), switch to a function vector based
PCI configuration space access implementation.  The appropriate PCI
chipset tag is provided by platform-specific code.
2002-02-24 13:19:06 +00:00
wiz 9baadd8ee5 "doesn't" should have an 's'. 2002-02-11 11:19:26 +00:00
wiz f78eb76cbe achive is not a good word. 2002-02-11 10:57:57 +00:00
kleink db6b1776e2 prep_intr_reg is mapped in kva space, so make it vaddr_t. 2002-02-10 00:54:39 +00:00
briggs eca843c395 define __HAVE_NWSCONS for pckbc. 2001-12-10 22:42:54 +00:00
soren 07c4b937eb prep has no special dependencies on pccons; remove. 2001-11-21 22:40:45 +00:00
soren 662f877587 MAXSLP is defined to be a machine-independent scheduling parameter,
so move it into sys/param.h.
2001-11-15 18:06:11 +00:00
thorpej e727e3f180 Split elf32 vs. elf64 handling in loadfile(), including support for
each separately and explicitly.  BOOT_ELF is now BOOT_ELF32 and
BOOT_ELF64, and ELFSIZE should no longer be defined in loadfile_machdep.h.
2001-10-31 17:20:45 +00:00
matt 550ffff41b Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports.  Make
other mpc6xx ports use it.  Add evcnts for mpc6xx traps.
2001-08-26 02:47:33 +00:00
nonaka 992a1d0be4 Seprate model depended code. (based on arc 'struct platform')
files.prep:
 - add new files entry.

pci_machdep.c:
 - use dev/pci/pciconf.c instead of mine for pci io/mem addr/intr fixup.

cpu.c:
 - separate code

machdep.c:
 - call ident_platform()

mainbus.c:
 - call pci_configure_bus(), if defined PCI_NETBSD_CONFIGURE

ibm_machdep.c:
 - for IBM PReP generic

ibm_6050.c:
 - for IBM Personal Power Series 830/850

ibm_7248.c:
 - for IBM RS6000/43P deppendency
2001-06-20 14:35:23 +00:00
nonaka dccc50da3c ANSI'fy 2001-06-20 14:19:28 +00:00
nonaka 595d6a40b4 Back out last changes. 2001-06-19 11:56:27 +00:00
nonaka b9c1984c7e Back out last changes. 2001-06-19 11:36:17 +00:00
nonaka 31794a5423 NEWPMAP 2001-06-17 16:01:28 +00:00
nonaka 5098ff59f6 identified prep model. 2001-06-17 15:57:11 +00:00
nonaka 80e152f0fc Use new common bus.h framework. 2001-06-15 15:50:04 +00:00
thorpej 8eb3b954f1 Don't need to prototype child_return() here, it's in <sys/proc.h>. 2001-06-14 22:56:55 +00:00
mrg 67afbd6270 use _KERNEL_OPT 2001-05-30 11:57:16 +00:00
soren 945b972563 PPC machine type tags haven't been used for a while. 2001-05-03 13:11:24 +00:00
thorpej cf67ac7122 Per discussion w/ chuck and chuck, restructure the md page stuff
to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD
and __HAVE_PMAP_PHYSSEG.
2001-05-01 02:19:13 +00:00
thorpej 2b27ac7a99 Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
each vm_page structure.  Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM.  These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.

This deprecates struct pmap_physseg.  As a transitional measure,
allow a port to #define PMAP_PHYSSEG so that it can continue to
use it until its pmap is converted to use VM_MDPAGE_MEMBERS.

Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now).  Changes to other pmap
modules will follow.
2001-04-29 22:44:31 +00:00
kleink f06533a1ee Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 17:13:04 +00:00
kleink 739cb75837 Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 15:29:02 +00:00