Commit Graph

117 Commits

Author SHA1 Message Date
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
tsubai 1b3871ef0f Change description of handler-ID == 195. 2001-07-26 11:36:40 +00:00
thorpej babefc5331 Add BUS_DMA_READ and BUS_DMA_WRITE flags, that hint the back-end
at dmamap load time that the mapping will be used for a unidirectional
transfer of the specified direction.
2001-07-19 15:32:10 +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
simonb d4bcd9c735 Add/change prototypes so that macpcc builds with -Wstrict-prototypes. 2001-06-19 12:02:55 +00:00
tsubai afa0c16167 include powerpc/mpc6xx/bat.h. 2001-06-10 15:24:57 +00:00
tsubai fafb5d4bc3 Make the new pmap optional. Use the old (stable!) pmap by default. 2001-06-10 11:01:26 +00:00
matt d2f0c68d47 Make macppc compile by default with -Wall -Wmissing-prototype in addition
to its currently enabled warnings.  For the lack of a better place, most
global function prototype wound up in <machine/autoconf.h> unless there
was a better place for them.  ofb_* structs renamed to offb_* to avoid
conflict with ofb_softc in <dev/ofw/openfirm.h>
2001-06-08 00:32:01 +00:00
matt 695e5e7ab5 Changes new pmap, common param.h, vmparam.h, and moved includes. 2001-06-06 17:50:14 +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
kleink cdcf9f46c5 Add definitions of C99 integer constant macros.
Tidy Makefiles up a little.
2001-04-14 22:46:19 +00:00
kleink a7c20e5788 Add definitions of C99 integer constant macros. 2001-04-14 22:38:33 +00:00
kleink 7affdab52e Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-14 12:19:49 +00:00
thorpej bf2dcec4f5 Remove the use of splimp() from the NetBSD kernel. splnet()
and only splnet() is allowed for the protection of data structures
used by network devices.
2001-04-13 23:29:55 +00:00
tsubai ce8902b7fe Merge my MP tree. At this point, Daystar dual 604 card (i.e. Power Macintosh
9500/180MP and 9600/200MP) runs at least into single-user mode, possibly
multi-user mode (not stable yet).
2001-03-22 04:11:46 +00:00
tsubai 123c25cc93 Remove PAGER_MAP_SIZE definition -- use default value. Instead, decrease
VM_MAX_KERNEL_BUF.
2001-03-15 16:06:59 +00:00
thorpej 2c4c690f14 Add the BUS_DMA_STREAMING flag. 2001-03-07 22:42:16 +00:00
matt f209f0ea1a Add Apple_FWDRIVER. 2001-02-27 06:16:06 +00:00
briggs 2f624f78d6 Share a single pio.h instead of having 4 nearly-identical copies. 2001-02-05 19:33:54 +00:00
briggs e96035c57c Tsubai has convinced me that openpic_init() should remain machine-dependant
as the details might differ between archs, and passing the various options
leads to some clutter.
2001-02-05 19:22:23 +00:00
briggs 044caccfff Split OpenPIC support into powerpc so ports only need minimal custom
configuration.  openpic_init() now takes a single argument that is the
base of the OpenPIC register space.
2001-02-02 06:11:52 +00:00
thorpej d85a75f583 Make sure everybody has an splvm() and equate it with splimp() (splimp()
is the historical name for this interrupt level, and the historical name
is going to go away in the near future).
2001-01-14 02:00:37 +00:00
tsubai 26914e2bcf Make want_resched and astpending per-CPU.
Add some per-CPU variables to cpu_info.
2001-01-01 04:33:39 +00:00
sommerfeld 851de295eb Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
2000-12-28 22:59:06 +00:00
tsubai 8ba01dd213 Fix bus_space_write_multi_N.
(From der Mouse <mouse@Rodents.Montreal.QC.CA>)
2000-12-21 23:17:32 +00:00
tsubai 438b1e68e0 Add support for Kensington Turbo Mouse. 2000-12-19 02:59:23 +00:00
mycroft 3418812d3c Partial syscall cleanup, as per other ports. 2000-12-14 10:33:42 +00:00
mycroft 73e35a46eb Increase all of the limits. 2000-12-08 21:51:35 +00:00
tsubai e4bfefe7bd Make spl functions no-inline. This saves size and even it runs faster on
some systems.
2000-11-29 17:55:52 +00:00
tsubai e5c94432d1 Reduce PAGER_MAP_SIZE to 4MB. 2000-11-27 11:37:33 +00:00
tsubai f671e87235 Add an argument to need_resched macro. 2000-08-28 11:52:59 +00:00
wrstuden 4678e2bb87 Correctly spell DRIVER. Noted by Tsubai. :-) 2000-08-23 19:15:25 +00:00
thorpej 58e7a6954b Add spllock(). See spl(9) for details. 2000-08-22 19:46:26 +00:00
thorpej 23a7f255d4 Make sure we provide splsched() as described in spl(9). 2000-08-21 02:06:31 +00:00
wrstuden 17c0d4d853 Add some new partition types, and flags. Have the Apple Partition Map
code ignore the new partition types, and look for the new "USR" partition
flag.

From SUNAGAWA Keiki <kei_sun@ba2.so-net.ne.jp> with slight changes by me.

Closes PR port-macppc/10046
2000-08-18 22:40:28 +00:00
tsubai 9ad1103d98 Make it compile with "options MULTIPROCESSOR". 2000-07-06 22:56:22 +00:00
itojun d738f90fd7 raise MSIZE from 128 to 256.
- for sizeof(void *) == 8 arch, this is mandatory.  MHLEN is too small
  already (less than 80) and there are chances for unwanted packet loss due
  to m_pullup restriction.
- for other cases, the change should avoid allocating clusters in most cases
  (even when you have IPv4 IPsec tunnel, or IPv6 with moderate amount of
  extension header)

portmasters: if your arch chokes with the change (high memory usage or
whatever), please backout the change for your arch.
2000-06-30 17:55:11 +00:00
kleink e695f72a2e Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
2000-06-26 15:42:16 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
tsubai 1bfa0fc6b6 Add cpu_counter(). 2000-06-11 16:32:42 +00:00
cgd cffb580806 Implement the more flexiable `evcnt' interface as discussed (briefly) on
tech-kern and now documented in evcnt(9).
2000-06-04 19:14:14 +00:00
matt c9aff328d9 Make booted_device global (and booted_parition for consitency).
Eliminate it from header files and other extern definitions.
2000-06-01 00:49:49 +00:00
cgd 47449a63d2 kill __P in these files. (I had to look at them anyway with an eye for
adding some protos... and adding them with __P seems wrong, but mixing
__P and not __P in the same file seems wrong too, so...)
2000-06-01 00:04:50 +00:00
thorpej a7d0570e67 First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
2000-05-26 21:19:19 +00:00
tsubai 06d1fe06b3 Remove __BROKEN_DK_ESTABLISH. 2000-05-23 13:27:16 +00:00