Commit Graph

675 Commits

Author SHA1 Message Date
tsubai
9ad1103d98 Make it compile with "options MULTIPROCESSOR". 2000-07-06 22:56:22 +00:00
dmcmahill
db5c144019 make sure ofwboot.xcf gets installed 2000-07-06 19:42:55 +00:00
tsubai
73db3f2b79 First attempt to spin up the secondary processor on 180MP and 200MP.
XXX Need more work.
2000-07-05 16:02:38 +00:00
tsubai
b513be4daa s/#include/include/ 2000-07-04 22:25:06 +00:00
wrstuden
168faa04b6 Oops.. Forgot to grow chrtoblktb[]. Pointed out by tsubai. 2000-07-04 05:48:36 +00:00
cgd
a5c13f9ad4 Kwality control:
* put #includes of opt headers and headers to get protos used by
  net/netisr_dispatch.h in net/netisr.h (if !defined(_LOCORE)) (rather than
  in netisr_dispatch.h itself, and potentially nowhere, respectively).
* require netisr.h to be included before netisr_dispatch.h.
* minor additional cleanup of both netisr.h and netisr_dispatch.h.
* clean up uses to remove now-unnecessary header file inclusions, and
  local prototypes of the fns.
* convert netisr dispatch implementations which didn't use
  netisr_dispatch.h (pc532) to use it.
2000-07-02 04:40:33 +00:00
wrstuden
cbb53d3ebd Add audio, midi, and sequencer devices. Copied from ports alpha and i386.
Note: this does not mean internal audio's working. :-( It means I'm trying
to get my eap card to work.
2000-07-01 21:25:11 +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
itojun
d76ae83df8 add PULLDOWN_TEST for all the platforms.
XXX should be moved to somewhere else when stabilized
2000-06-30 17:10:15 +00:00
mrg
28d898391b remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:10:45 +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
mrg
4c698e84f6 <vm/vm_param.h> -> <uvm/uvm_param.h> 2000-06-26 14:58:58 +00:00
mrg
2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +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
fvdl
1ee7d22c0b Remove prefix construction for softdeps. Add SOFTDEP option to GENERIC. 2000-06-22 20:27:49 +00:00
tsubai
1155f3af58 Allow mmap of frame buffer registers. 2000-06-19 19:35:20 +00:00
tsubai
ce3ea53415 Remove "options NFS_BOOT_BOOTPARAM" to fit 1.4M floppy.
(still have NFS_BOOT_DHCP)
2000-06-17 21:44:46 +00:00
tsubai
96964a6455 Use ether_crc32_le(). 2000-06-16 14:18:55 +00:00
tsubai
2931ec17b7 Forgot to commit this. 2000-06-15 19:09:15 +00:00
tsubai
736d4273e2 Implement multicast address filter. (Stolen from hme.c) 2000-06-15 18:36:52 +00:00
veego
223d7455c7 Remove the obsolete config fragments for kernel crypto, because the IPsec
crypto code is now in the kernel source tree.
2000-06-14 22:02:13 +00:00
matt
232461e6be Add TLP_MATCH_*. Remove gm*. 2000-06-11 23:29:29 +00:00
tsubai
1bfa0fc6b6 Add cpu_counter(). 2000-06-11 16:32:42 +00:00
tsubai
94db0b8a37 Enable DMA transfer on obio IDE. 2000-06-11 10:56:16 +00:00
tsubai
521233859b Add cy* at pci. 2000-06-09 17:14:06 +00:00
tsubai
dd703bc6f8 Add cy. 2000-06-09 17:11:30 +00:00
wrstuden
3d410a6c74 Add commented-out entry for Cyclades-Z pci serial ports. 2000-06-09 16:57:37 +00:00
wrstuden
a7bea09941 Add support for Cyclades-Z PCI tty's. 2000-06-09 16:56:51 +00:00
tsubai
a29bb9db7b Add all RAM regions to battable.
This should support > 512MB memory.  (untested, though)
2000-06-09 10:54:48 +00:00
tsubai
649f6d3838 Sync with mac68k. 2000-06-08 22:10:45 +00:00
matt
d3336b64a1 Squeeze a few more bytes so the INSTALL kernel will fit on a floppy.
Use tlp instead of de.  Add in gm[ac].  Remove slip and Gallant 22x12 font.
Compile ofwboot.elf -Os.
2000-06-08 17:35:47 +00:00
tsubai
4c15219d3b * Access hardware directly in zscn* instead of calling OF.
* Clean up.
2000-06-07 17:37:07 +00:00
nisimura
4371d91433 Have MI ncr53c9x_attach() the 2nd and 3rd arguments for scsipi_adater
and scsipi_device respectively, with size reduction of ncr53c9x_softc.
Specifying NULL instructs the driver to use default adapter and default
device codes. Every target port has ncr53c9x_attach(sc, NULL, NULL) anyway.
2000-06-05 07:59:50 +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
dca520b4a6 Add fixcoff so an obj dir can be created 2000-06-01 18:33:43 +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
8c2d00aaeb Add a comment about needing to initialize p_cpu when multiple
processors are supported.
2000-05-31 05:09:14 +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
thorpej
8964c35eca Introduce a new process state distinct from SRUN called SONPROC
which indicates that the process is actually running on a
processor.  Test against SONPROC as appropriate rather than
combinations of SRUN and curproc.  Update all context switch code
to properly set SONPROC when the process becomes the current
process on the CPU.
2000-05-26 00:36:42 +00:00
tsutsui
56dfe42d8d Add epic* at pci. 2000-05-26 00:22:06 +00:00
tsutsui
4a42668b31 Add fxp* at pci. 2000-05-25 09:09:28 +00:00
tsubai
06d1fe06b3 Remove __BROKEN_DK_ESTABLISH. 2000-05-23 13:27:16 +00:00
tsubai
f12221a5f5 Modify DMA access timings. 2000-05-23 13:20:58 +00:00
thorpej
071aed40ac A foolish consistency; most parts of the kernel use bp->b_data, so
change these from bp->b_un.b_addr to bp->b_data, as well.  This also
allows us more flexibility to experiment with other data buffer types
hung off of struct buf.
2000-05-19 18:54:22 +00:00
thorpej
463931b3ba Nuke dk_establish() from orbit except from those ports which still use
it to determine the boot device: mvme68k, pc532, macppc, ofppc.  Those
platforms should be changed to use device_register().  In the mean time,
those ports defined __BROKEN_DK_ESTABLISH.
2000-05-16 05:45:44 +00:00
hubertf
9f48bba3ae Add "install" target, so "make install" after building the kernel
does something useful.  The target can be redefined by putting a
install-kernel-${MACHINE_NAME} target that fits your needs into
/etc/mk.conf.
2000-05-09 00:56:21 +00:00
thorpej
6a33c86623 HAVE_GCC28 -> HAVE_EGCS, and make it match gcc 2.9 as well. Also,
make the use of -Wno-uninitialized explicit, don't rely on a compiler
hack to do it for us.
2000-05-09 00:32:19 +00:00
augustss
3a6e3a4670 Add (sometimes commented out) MIIVERBOSE option. 2000-05-08 13:49:44 +00:00
mycroft
26d692df9e Use DHCP, not BOOTP. At least with dhcpd, the root path gets dropped due to
lack of space in the reply when using BOOTP.
2000-04-29 22:18:31 +00:00
thorpej
f51470a514 Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED.  These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case).  Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
2000-04-29 03:31:45 +00:00
tsubai
151b83e2e1 Add ex* at pci and rtk* at pci. 2000-04-25 16:05:06 +00:00
haya
784977f319 Changes the name of RealTek driver. The new name is `rtk'. This used
to be called `rl' and it conflict with RL vax disks, canonical and
historical unix driver name.

This changes are minimal: it only changes the name of RealTek driver.
The filename of source code and a lot of the letter `rl' in source
files should be changed shortly.
2000-04-19 08:44:31 +00:00
itojun
3be41bae18 add stf pseudo interface (commented out due to possible security risks) 2000-04-19 06:50:27 +00:00
tsutsui
7865e586d3 Typo in comments. (Zilog 8350 -> 8530) 2000-04-14 13:29:57 +00:00
tsubai
dd83a9aa4f Make this compile. 2000-04-14 10:22:06 +00:00
tsubai
2ca39ceddf Make this compile again. 2000-04-07 14:35:58 +00:00
augustss
9a31a8c77f Add atapibus* at umass? 2000-04-03 00:03:28 +00:00
tsubai
b18b370715 Make sure color rgb:0/0/0 is black. 2000-04-02 12:53:05 +00:00
tsubai
7df13bfec7 Enable wdc1 (needed on StarMax). 2000-04-02 12:36:38 +00:00
tsubai
e352cada4b Make this compile again. 2000-04-02 12:03:04 +00:00
kleink
230876cf26 Merge parts of chs-ubc2 into the trunk:
* Remove the casts to vaddr_t from the round_page() and trunc_page() macros to
  make them type-generic, which is necessary i.e. to operate on file offsets
  without truncating them.
* In due course, cast pointer arguments to these macros to an appropriate
  integral type (paddr_t, vaddr_t).

Originally done by Chuck Silvers, updated by myself.
2000-03-26 20:42:21 +00:00
tsubai
ffdaae73e0 Enable gmac ethernet. 2000-03-26 09:16:01 +00:00
tsubai
f8a898cb1d Use ring buffer on tx side, too. 2000-03-26 09:15:17 +00:00
tsubai
5684221bbd esp declaration was moved to conf/files. 2000-03-26 08:34:20 +00:00
tsubai
d806694e39 Fix typo. 2000-03-26 08:29:12 +00:00
ws
b7570cae85 Update several ports to at least work again without IPKDB
after the update of that.
Sorry for breaking this with my last changes :-(.
Fixes PR#9671 by Lennart Augustsson.
2000-03-24 17:05:30 +00:00
thorpej
7b918b4088 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 06:40:33 +00:00
cgd
7c35662066 add commented out option PCI_CONFIG_DUMP whever there's a PCIVERBOSE. 2000-03-22 00:58:16 +00:00
tron
e86957458a Install "machineendian_machdep.h". 2000-03-17 22:36:31 +00:00
mycroft
9e21b6555a In the `MY THAT'S GROSS' department...
Eliminate the recursive include of machine/endian.h from sys/endian.h.
2000-03-17 00:09:18 +00:00
oster
1bad2e1909 Add the RAIDframe device major to the machine-dependent config files
so that the right entries get added to dev_name2blk[].  Needed for / on RAID.
(Whoops!  I missed checking these in when adding the RAID_AUTOCONFIG stuff.)
2000-03-14 15:56:51 +00:00
soren
95054da1a1 Fix doubled 'the's in comments. 2000-03-13 23:52:25 +00:00
thorpej
0bcbafe0ee Correct the number of arguments to wsdisplay_set_cons_kbd(), for the
changes I made for cnbell().
2000-03-09 18:59:27 +00:00
thorpej
a183d34f04 - Implement cnbell() -- ring the console bell. The cn_bell entrypoint
is optional.
- Add cn_bell to statically allocated consdevs as appropriate.
2000-03-06 21:36:05 +00:00
tsubai
30370336dc Use ring buffer on tx side, too. 2000-03-04 11:17:00 +00:00
simonb
4eb55e447c Do the "<space><tab>" thing with the RAID_AUTOCONFIG option. 2000-02-29 06:32:20 +00:00
tsubai
0468fe97e4 Don't use hardcoded speed value when this is a console. Instead, read
from zs.  (because OF-3.x uses 57600 bps)
2000-02-27 20:31:57 +00:00
tsubai
f101e8315f Add gmac. (commented out) 2000-02-27 18:06:43 +00:00
tsubai
6f4bb03178 Initial version of gmac ethernet driver.
XXX doesn't work well yet.
2000-02-27 18:00:55 +00:00
oster
d9c47013b2 Defopt 'RAID_AUTOCONFIG'. Adding 'options RAID_AUTOCONFIG' turns on
the component auto-detection and auto-configuration of RAID sets.
Also, add "#options RAID_AUTOCONFIG" to the GENERIC config files.
2000-02-26 17:35:33 +00:00
erh
8f03b9a04a Define the DONETISR macro and use netisr_dispatch.h. This is to cut down on code duplication and to standardize the available NETISRs across all ports. 2000-02-21 20:38:46 +00:00
tsubai
0b8b55beaf Add uninorth. Now iMac DV and Power Macintosh G4 should run NetBSD. 2000-02-14 14:57:52 +00:00
tsubai
2750c23cdd Add minimal support of openpic. 2000-02-14 12:45:52 +00:00
tsubai
2aafd71ec7 Reduce NKMEMPAGES_MAX_DEFAULT. 2000-02-13 17:01:47 +00:00
thorpej
dded044fc2 Update for the NKMEMPAGES changes. 2000-02-11 19:25:12 +00:00
tsubai
d696094217 Change ICU_LEN to 64. 2000-02-11 13:15:43 +00:00
tsubai
1dc2d9d399 Don't display "NetBSD disklabel". This message appears too many times
if more than two or three disks exist.
2000-02-10 12:33:45 +00:00
tsubai
502ad73200 Add wsfont options. 2000-02-09 13:10:15 +00:00
tsubai
dcb9f03bd3 Use dev/rasops instead of dev/rcons. 2000-02-09 13:08:35 +00:00
shin
7f5a7c00ac fix include file.
<netinet6/ip6.h>	->	<netinet/ip6.h>
2000-02-09 05:48:26 +00:00
tsubai
a62753d0b7 Make OF-2.x can also find root device. 2000-02-08 20:02:13 +00:00
tsubai
b933f19ea2 Flush cache before rebooting to preserve msgbuf. 2000-02-08 12:57:11 +00:00
tsubai
d97ae29629 Enter power saving mode in idle loop on 603, 750, and 7400.
603 uses doze mode, 750 and 7400 use nap mode.
2000-02-08 12:49:06 +00:00
tsubai
9cba8a13d1 Use -Os -mmultiple to reduce size.
Add cbb and pcmcia/cardbus devices.
Nuke BUFPAGES=800 kludge.
2000-02-08 12:13:50 +00:00
tsubai
c7d216c2da Add missing locators.
Add tlp at cardbus.
2000-02-08 12:10:56 +00:00
tsubai
45fe0e4077 Fix typo. 2000-02-08 08:08:43 +00:00
tsubai
b9ff560bcc Don't print "... not configured" message for non real devices
like escc-legacy.
2000-02-07 20:30:05 +00:00
tsubai
cf532aa7eb Move CFLAGS and CPPFLAGS to {bootxx,ofwboot}/Makefile to compile installboot
without -D_STANDALONE.
2000-02-07 16:26:59 +00:00
tsubai
c343256107 Make the new findroot code work on PowerMac 9600 (OF-1.0.5). 2000-02-04 18:29:15 +00:00
tsubai
6bfa70b9c6 Remove an unused variable. 2000-02-04 07:48:11 +00:00
tsubai
a09eb087b6 Treat "chaos" like a bandit. 2000-02-04 03:40:42 +00:00
tsubai
e29a886cd6 * Split bandit and grackle.
* Add UniNorth support.

Now pcibus is attached like:
  bandit0 at mainbus0
  pci0 at bandit0 bus 0
  ...
2000-02-03 19:27:43 +00:00
thorpej
eed75dbc26 Don't dry to diving MIIF_NOISOLATE in the PHY drivers. Instead, pass
flags down from the parent to child vi mii_attach().
2000-02-02 17:09:38 +00:00
danw
9cf3b29a57 Make the device_register code work on machines with multiple PCI bridges
with the same bus number (like the new G4s). Also, don't hardcode the
size of the pci_bridges array.
2000-02-02 16:41:56 +00:00
thorpej
84dc99fdea Bring some order to the chaos which was the MII code function naming
"conventions".
2000-02-02 08:05:26 +00:00
tsutsui
11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
danw
33051e5117 Use device_register to find the boot device more reliably. Should now work
on anything it's possible to boot from that we have a driver for.
2000-02-01 04:04:17 +00:00
tsubai
22a3504708 Make this work on the G4 too. 2000-01-27 17:39:20 +00:00
tsubai
ecd94f5ee0 s/NUMODEM/NUCOM/ 2000-01-27 15:41:19 +00:00
drochner
8eb798e603 define a "BUS_SPACE_MAP_PREFETCHABLE" flag which basically means that
device accesses are idempotent (but should not be cached by the CPU)
2000-01-25 22:13:17 +00:00
tsubai
14bc6c9eb8 Add PHYs. 2000-01-25 14:43:49 +00:00
tsubai
6b26a49ee9 Use MII device layer.
XXX still 100Mbps receive side is very slow...
2000-01-25 14:38:39 +00:00
augustss
85fcd0b58d Update for the ucom(4) addition. 2000-01-25 08:31:56 +00:00
tsubai
05ceaaaad5 Add UniNorth. 2000-01-25 07:19:11 +00:00
tron
04eb110431 Add "dependall" target for comfort. 2000-01-24 20:36:06 +00:00
hubertf
7e5ff67457 Add commented out "ident"-command 2000-01-23 23:46:04 +00:00
mycroft
7b49d242ce Clean up the machine symlink stuff ever so slightly. Needs to be
standardized between files.
2000-01-23 17:04:03 +00:00
tsubai
969c226b5b Match "keylargo". 2000-01-23 10:01:44 +00:00
tsubai
2d0426d8d2 Recognize MPC7400. 2000-01-21 18:49:52 +00:00
tsubai
16ea7fbbbb Match "keylargo-ata". 2000-01-21 18:45:14 +00:00
wrstuden
87e1b0f9b7 Add overlay to kernel configs. 2000-01-20 19:12:28 +00:00
thorpej
a0397a2573 Move callout initialization to a single location; no need to duplicate
that code all over the place.
2000-01-19 20:05:30 +00:00
tsutsui
e61f177ab1 STRIP -> STRIPPROG 2000-01-19 16:29:54 +00:00
danw
83cfcdd15a Add a special trap handler for EXC_ALI that saves dsisr and dar 2000-01-19 03:28:21 +00:00
msaitoh
0b9af6bdce check whether tv_usec >= 1000000 2000-01-19 02:52:16 +00:00
thorpej
1de974fc2e Use PCI products defined in pcidevs.h 2000-01-18 20:05:23 +00:00
thorpej
8201b36ca0 Use b_cylinder as defined in sys/buf.h 2000-01-18 19:43:02 +00:00
augustss
f7145f672e Add USB-Ethernet adapters. 2000-01-17 17:47:03 +00:00
takemura
ba04c55ed3 Absolute pointing device support.
- Wsmouse_input() get new argument 'flag', which indicates whether x/y/z are
   relative or absolute.
 - Wsmouse get new io controls, WSMOUSEIO_SCALIBCOORDS and
   WSMOUSEIO_GCALIBCOORDS.
2000-01-08 02:57:22 +00:00
tsubai
a1da0497d2 Remove two panic conditions.
XXX untested.
1999-12-28 13:49:20 +00:00
tsutsui
2b643fda30 Oops, forgot to add scsibus* at ncr? 1999-12-26 13:02:24 +00:00
tsutsui
79a990ffa1 Add ncr* at pci? 1999-12-26 11:39:16 +00:00
kleink
11e6c54cfc C99: Define a NAN macro in <math.h> which evaulates to a constant expression of
a single-precision quiet NaN; only to be defined on platforms that do support
this value.
1999-12-23 10:15:05 +00:00
thorpej
7ec3575193 Update for BAT{U,L}() changes. 1999-12-22 18:57:47 +00:00
thorpej
db1042f3bc Update some comments. 1999-12-22 18:57:12 +00:00
thorpej
a7f264fd2f Update for BATU()/BATL() changes. 1999-12-18 01:37:00 +00:00
danw
a9d982e4f4 synchronize various changes to comments between these files to make it
even more obvious that they're 90% identical and really ought to be
using common code in arch/powerpc for a most of this...
1999-12-07 16:11:48 +00:00
drochner
0893832078 update for changed struct wsdisplay_accessops:show_screen signature.
no functional changes
1999-12-06 19:25:56 +00:00
ragge
0513268399 CL* discarding. 1999-12-04 21:13:19 +00:00
wrstuden
e9c570ec77 Now make an ofwboot.xcf, and XCOFF version of ofwboot. Uses the new
fix-coff program.
1999-11-23 01:35:37 +00:00
wrstuden
cd6e26a395 Add fixcoff, a program to be used during a build to help make xcoff'
binaries from elf ones.
1999-11-23 01:32:37 +00:00
tsubai
1acee6a50f Remove D-I cache synchronization code in setregs(). MI part has it now. 1999-11-22 13:31:44 +00:00
itojun
e9a0023b37 bring in content of GENERIC.v6 into GENERIC.
remove GENERIC.v6 file (as it is part of GENERIC now).

"faith" interface is commented out by default as it is not really for
general use.
IPsec items are commented out as well, though we can enable "options IPSEC"
without export-related issue ("options IPSEC" will enable authentication
portion only).  We may need to think about it again.

if you have problem compiling with INET6 on archs I do not have access to,
please contact me.

XXX what to do with arch/arm32/SHARK{,.v6}?
1999-11-21 14:00:37 +00:00
kleink
eac5784583 Move signal management code common to all PowerPC platforms (sendsig(),
sigreturn(), sigcode) to a single place in the shared powerpc directory.
(The struct sigcontext etc. definitions were already being shared.)
1999-11-17 14:56:10 +00:00
wrstuden
0df8bcdc46 We need pciidereg.h to compile now. 1999-11-15 23:52:07 +00:00
fvdl
8bec119fcc Add commented out option SOFTDEP to all GENERIC kernels. 1999-11-15 19:10:44 +00:00
fvdl
d116707af0 Add
prefix ../gnu/sys
cinclude "conf/files.softdep"
prefix

to all std.* files, so that soft dependencies can be activated using
"options SOFTDEP".
1999-11-15 19:00:25 +00:00
thorpej
1946167939 Update for pmap_enter() API change. No functional difference. 1999-11-13 00:30:26 +00:00
mycroft
fd8d1c65eb Add USB support. 1999-11-10 05:57:52 +00:00
mycroft
74ca1c37ef Deal with /psuedo-hid in the following atrocious way:
* If only one of ukbd or akbd is configured, use the node for that device.
* If both are configured, use ukbd.
Ultimately, the right way to deal with this is probably so simulate the effect
of /psuedo-hid using wsmux.  But not today.
1999-11-10 05:23:18 +00:00
mycroft
336e3613c3 Kill wsmux. DIE DIE DIE! 1999-11-08 06:17:42 +00:00
mycroft
fb17cb2665 Disable wsmux for now. 1999-11-08 04:50:30 +00:00
tsubai
3e373da88d Enable com* at pcmcia. 1999-10-15 12:27:06 +00:00
tsubai
b67b49b7db Support com* at pcmcia. 1999-10-15 12:24:36 +00:00
tsubai
c1a7ea14a3 Add cardbus support. 1999-10-15 07:55:08 +00:00
tsubai
849421ec54 Add RCS ID.
Disable debug messages.
1999-10-15 07:20:42 +00:00
tsubai
26cb48e441 Fix typo. 1999-10-15 07:16:16 +00:00
tsubai
3499cf35ad Define fdc, because dev/pcmcia needs it. 1999-10-15 06:43:05 +00:00
haya
4eee111127 This is the first check-in of CardBus driver. CardBus driver contains
CardBus bus stub, YENTA PCI-CardBus bridge (cbb), 3Com 3C575TX driver
(ex) and Intel fxp driver.

TODO:
  o Conform to the KNF more strictly.
  o Be unified with pcmcia code as much as possible.
  o Add more drivers for CardBus card, such as APA-1480 or USB card.

The affected files are listed below.

	sys/arch/i386/conf/files.i386
	sys/arch/macppc/conf/files.macppc
	sys/conf/files
	sys/dev/ic/elinkxl.c
	sys/dev/ic/elinkxlvar.h
	sys/dev/ic/i82365.c
	sys/dev/ic/i82365var.h
	sys/dev/isa/i82365_isasubr.c
	sys/dev/pci/files.pci
	sys/dev/pcmcia/pcmcia.c
	sys/dev/pcmcia/pcmciachip.h

The added files are listed below.

	sys/arch/i386/conf/CARDBUS
	sys/arch/i386/include/rbus_machdep.h
	sys/arch/i386/i386/rbus_machdep.c
	sys/arch/macppc/include/rbus_machdep.h
	sys/arch/macppc/macppc/rbus_machdep.c
	sys/dev/cardbus/if_ex_cardbus.c
	sys/dev/cardbus/Makefile.cardbusdevs
	sys/dev/cardbus/cardbus.c
	sys/dev/cardbus/cardbus_map.c
	sys/dev/cardbus/cardbusdevs
	sys/dev/cardbus/cardbusdevs.h
	sys/dev/cardbus/cardbusdevs_data.h
	sys/dev/cardbus/cardbusvar.h
	sys/dev/cardbus/cardslot.c
	sys/dev/cardbus/cardslotvar.h
	sys/dev/cardbus/devlist2h.awk
	sys/dev/cardbus/files.cardbus
	sys/dev/cardbus/if_fxp_cardbus.c
	sys/dev/cardbus/pccardcis.h
	sys/dev/cardbus/rbus.c
	sys/dev/cardbus/rbus.h
	sys/dev/pci/pccbb.c
	sys/dev/pci/pccbbreg.h
	sys/dev/pci/pccbbvar.h
1999-10-15 06:07:17 +00:00
tsubai
956c00aaf3 Change kernel segment base to 0xf00000. Some PM9500s won't boot with the
old value (0xfffff0).
XXX I don't know why...
1999-10-13 04:01:06 +00:00
tsubai
bc7211f403 Use battable to map obio space rather than using bat1 registers statically. 1999-10-13 03:51:32 +00:00
tsubai
9f58dd36d0 Change char *bootpath to char bootpath[]. 1999-10-13 03:27:47 +00:00
tsubai
eb1c1bdb92 Make media-bay CD detachable. 1999-10-04 22:58:10 +00:00
thorpej
e6c88a7686 Update for SCSIPI changes. 1999-09-30 22:59:52 +00:00
wrstuden
25faa820de Add support for reading MacOS-partitioned disks. Stolen from the mac68k
port, but modified in that macppc searches for netbsd-partitioned disks
before MacOS partitioned disks, since installboot generates a fake MacOS
partition table which isn't the one we want to use.
1999-09-27 17:02:43 +00:00
tsubai
efb6bddd34 lcsplx() should return old cpl... 1999-09-21 12:36:32 +00:00
matt
9ac5036f93 Make the DEFPA run under the macppc port (tested on a B&W G3). Add it to
the GENERIC config file.
1999-09-19 22:02:37 +00:00
thorpej
11cae42531 Centralize the declaration and clearing of `cold'. 1999-09-17 19:59:35 +00:00
thorpej
3b01d1b872 Rename the machine-dependent autoconfiguration entry point `cpu_configure()',
and rename config_init() to configure() and call cpu_configure() from there.
1999-09-15 18:10:33 +00:00
chs
f3a668ed84 eliminate the PMAP_NEW option by making it required for all ports.
ports which previously had no support for PMAP_NEW now implement
the pmap_k* interfaces as wrappers around the non-k versions.
1999-09-12 01:16:55 +00:00
augustss
14b98cd440 Add uaudio driver. 1999-09-09 12:33:43 +00:00
tsubai
f7b9562c8c Inline some functions. 1999-09-08 17:28:02 +00:00
tsubai
0724f6dd3b Recognize PCMCIA eject button. (Tested on only PowerBook 2400.) 1999-09-05 05:30:30 +00:00
thorpej
c068ef8152 Add `umass'. 1999-08-29 16:55:48 +00:00
tsubai
5d7288c24d Increase md size to 2MB. 1999-08-28 16:49:49 +00:00
tsubai
b65b00c391 Change the start address of INSTALL kernel to 0x800000 to use larger
contiguous space for memory disk.
1999-08-27 07:59:49 +00:00
augustss
db574ba708 Add umodem device. 1999-08-16 22:27:08 +00:00
tsubai
775199a39f Make configurable without ams. 1999-08-16 06:28:09 +00:00
tsubai
be72fab2f7 My last change was wrong. Revert. 1999-08-15 12:47:15 +00:00
thorpej
28fb7c1eb8 Define cpu_number() as discussed on tech-smp. 1999-08-10 21:08:05 +00:00
thorpej
eb20bbc780 Change the semantics of splsoftclock() to be like other spl*() functions,
that is priority is rasied.  Add a new spllowersoftclock() to provide the
atomic drop-to-softclock semantics that the old splsoftclock() provided,
and update calls accordingly.

This fixes a problem with using the "rnd" pseudo-device from within
interrupt context to extract random data (e.g. from within the softnet
interrupt) where doing so would incorrectly unblock interrupts (causing
all sorts of lossage).

XXX 4 platforms do not have priority-raising capability: newsmips, sparc,
XXX sparc64, and VAX.  This platforms still have this bug until their
XXX spl*() functions are fixed.
1999-08-05 18:08:08 +00:00
tsubai
d633663ab8 Add mediabay. 1999-08-05 00:31:01 +00:00
tsubai
4eb4de3592 Make ``boot kernelname'' work on OF-3.x too. 1999-08-03 07:08:36 +00:00
augustss
f641c4b3b6 Make two wsmux pseudo devices and add mux locators. 1999-07-29 19:36:58 +00:00
augustss
3652732791 Add wsmux device.
(Also add lots of missing chrtoblktbl[] entries.)
1999-07-29 19:14:35 +00:00
augustss
a7cd454b1d It's time to be COMPAT_14. 1999-07-29 10:37:12 +00:00
cgd
f886376518 be more efficient when doing the SYSTEM_LD_TAIL for -g kernels: don't
copy them just to strip them, use strip -o.
1999-07-26 05:20:44 +00:00
tsubai
07bc0e694d media-bay CD support. 1999-07-21 19:20:04 +00:00
tsubai
bfba58c1e1 grackle uses different I/O address. 1999-07-20 17:31:59 +00:00
christos
41cc9a0eb8 enable PPP_BSDCOMP, PPP_DEFLATE, PPP_FILTER, PFIL_HOOKS, IPFILTER_LOG
on the GENERIC kernels that had them commented out.
XXX: Please note, that not all the kernels have all the options defined!
1999-07-20 07:40:34 +00:00
tsubai
035071b460 Add VM_MAX_KERNEL_BUF definition. 1999-07-18 17:54:19 +00:00
tsubai
e9f1ccdcd1 Decrease default NKMEMCLUSTERS. (128MB -> 8MB) 1999-07-18 17:53:18 +00:00
tsubai
4aec314394 Add PowerBook LCD brightness and speaker volume button device.
Only brightness works for now.
1999-07-12 17:48:26 +00:00
tsubai
b7fc95a188 Add read/set LCD brightness and eject PCMCIA card function. 1999-07-12 15:54:55 +00:00
tsubai
a9cb7eabb2 One more pmap_extract() fix. 1999-07-11 17:47:21 +00:00
tsubai
a192e5bd20 Enable soft poweroff on PowerBook. 1999-07-11 16:59:31 +00:00
thorpej
0945bf58b0 Add examples for including the kernel crypto bits from either crypto-us
or crypto-intl, commented out, with instructions to use only one, and
adjust the prefix as necessary.
1999-07-09 18:55:33 +00:00
mrg
ecdad0ec33 clean up a bit after jason :)
- fix emitrules() like emitfiles() to deal with the prefix (otherwise it
  would attempt to find the file in the normal base for the NORMAL_C rule).
- add emitincludes() which adds include directives for each prefix to the
  $INCLUDES variable in the makefile.
- add %INCLUDES to each Makefile.arch to deal with the above.

this makes "prefix" actually work in a usable manner, and now i can move
on to fixing compiler warnings (errors) in the ESP code. :)
1999-07-09 09:52:55 +00:00
thorpej
3ebbe095e0 Change the pmap_extract() interface to:
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
itojun
5effafcaa6 kernel configuration for IPv6/IPsec. should be in GENERIC in the future.
(source code will be committed soon)
1999-07-01 07:00:12 +00:00
tsubai
654e155756 Display verbose messages about L2 cache. 1999-06-30 16:34:19 +00:00
itojun
427639cdce - Call ip6intr if INET6 is defined.
- remove "need-flag" for mac68k esp driver, as it is not used in anywhere
  and conflicts with IPsec ESP header.

This should be the only MD change in IPv6 support, except kernel config file.
Very sorry if you have any compilation problem with it (I believe it is okay).
If your favorite arch is not included in here, please add a
call to ip6intr() from softintr handle.
1999-06-28 08:20:40 +00:00
tsubai
5b34d35e45 findroot() should also use "compatible" property. 1999-06-24 08:14:48 +00:00
tsubai
a2ded1ab73 NVRAM read/write functions. 1999-06-22 13:12:11 +00:00
tsubai
2068c8b6e4 Use RTC on PB. 1999-06-22 11:29:11 +00:00
wrstuden
17900cd587 Install ofwboot.elf in addition to ofwboot. Thanks to Chris for info on how
to do this!
1999-06-21 21:02:49 +00:00
tsubai
9ac9208434 More initialization by calling Open Firmware. 1999-06-20 05:34:59 +00:00
cgd
7c02d93c04 nuke current definitions provided by __BUS_SPACE_COMPAT_OLDDEFS.
I'll do what I can to make new ones soon.  8-)
1999-06-18 04:49:24 +00:00
tsubai
a8d7da0d21 Add "trackpad" definition. 1999-06-17 06:59:05 +00:00
tsubai
c28bad1d51 Define PowerBook G3 Japanese keyboard. 1999-06-16 08:48:37 +00:00
tsubai
a2e8151f8e Define symbolic name of PMU commands. 1999-06-16 07:43:58 +00:00
tsubai
4df925b8b0 * Don't use DMA interrupt.
* Stop DMA explicitly in finish routine.
1999-06-14 08:53:06 +00:00
tsubai
86d2f9253a Consider "have /psuedo-hid and only ADB keyboard" case to make the
new PowerBook G3 happy.
1999-06-14 06:22:50 +00:00
thorpej
2c35c7bd03 Only declare block major numbers for devices which can be the root device. 1999-06-07 20:31:27 +00:00
thorpej
d76e7b8c6d Don't pass a nam2blk around at all; just have setroot() and friends reference
dev_name2blk[] directly.  Addresses PR #7622 (ITOH Yasufumi), although
in a different way.
1999-06-07 20:16:08 +00:00
thorpej
2580d306ab Change the vm_map's "entries_pageable" member to a r/o flags member, which
has PAGEABLE and INTRSAFE flags.  PAGEABLE now really means "pageable",
not "allocate vm_map_entry's from non-static pool", so update all map
creations to reflect that.  INTRSAFE maps are maps that are used in
interrupt context (e.g. kmem_map, mb_map), and thus use the static
map entry pool (XXX as does kernel_map, for now).  This will eventually
change now these maps are locked, as well.
1999-05-26 19:16:28 +00:00
thorpej
5832084eaf bus_dmamem_map() maps DMA safe memory, which is usually one or more
managed pages, into KVA space.  Since the pages are managed, we should
use pmap_enter(), not pmap_kenter_pa().

Also, when entering the mappings, enter with an access_type of
VM_PROT_READ | VM_PROT_WRITE.  We do this for a couple of reasons:

	(1) On systems that have H/W mod/ref attributes, the hardware
	    may not be able to track mod/ref done by a bus master.

	(2) On systems that have to do mod/ref emulation, this prevents
	    a mod/ref page fault from potentially happening while in an
	    interrupt context, which can be problematic.

This latter change is fairly important if we ever want to be able to
transfer DMA-safe memory pages to anonymous memory objects; we will need
to know that the pages are modified, or else data could be lost!

Note that while the pages are unowned (i.e. "just DMA-safe memory pages"),
they won't consume any swap resources, as the mappings are wired, and
the pages aren't on the active or inactive queues.
1999-05-25 23:14:03 +00:00
lukem
e4a87aa1a9 * convert to using MI allocsys(). most ports were using an MD allocsys(),
although a couple still used the old pre-4.4-lite (?) mechanism.
* use format_bytes() to format the various printf()s that print out memory sizes
1999-05-20 08:21:42 +00:00
thorpej
f98d358a1f Rework layer 2 protocol input routines. Instead of calling e.g. ether_input()
directly, call the function pointer (*if_input)(ifp, m).  The input routine
expects the packet header to be at the head of the packet, and will adjust
as necessary.  Privatize the layer 2 input and output routines, allowing
*_ifattach() to set them up as appropriate.
1999-05-18 23:52:51 +00:00
thorpej
e5f47f6307 Rewrite the USB keyboard console attachment (again). Grumble, Macintosh
firmware sets the "stdin" property of /chosen to be a pseudo-hid (yes, they
even spell it incorrectly) that merges all keyboard input into one stream,
so we can't find the USB controller we're attached to.  Instead, just give
it to the first USB keyboard found during autoconfiguration.  So that we
have SOMETHING available early on, use OpenFirmware i/o to do keyboard
input to the console wsdisplay until the USB code attaches the keyboard.

From Jason Thorpe <thorpej@nas.nasa.gov>
1999-05-13 23:37:19 +00:00
wrstuden
3c5aad8d3c For whatever reason, we just can't call pci_init() that early on Bandit
systems.  Why?  Who knows.  Firmware bugs, maybe.  In any case, moving
the call out of the ADB path works.  "Good enough for me."
1999-05-07 22:20:38 +00:00
wrstuden
1e90fa5723 BusLogic cards seem to work in my G3. :-) 1999-05-07 20:10:54 +00:00
drochner
fe310dd299 include <lib/libkern/libkern.h> for intoa()/inet_ntoa() 1999-05-07 16:19:27 +00:00
wrstuden
fb7f9b828f Add pciide config info. 1999-05-06 19:28:20 +00:00
thorpej
680c3ddbd2 Completely rewrite how cninit() determines which keyboard to use with
the console.  New algorithm:

* if stdin == keyboard, and parent of keyboard == adb, use ADB.
* else, must be a USB keyboard.  Search backwards though the parents
until the USB controller is located.  Determine its location in the PCI
domain, and which type of controller it is, and tell that controller that
it has the console input device.  The USB code will then attach the first
USB keyboard as the console input device during autoconfiguration.

The iMac and Blue and White G3 consoles are fully functional now!
1999-05-06 19:24:47 +00:00
thorpej
ac9eee8693 Take all of the OpenFirmware "stdin" grovelling out of the ADB keyboard
driver, as the smarts for this all live somewhere else now.
1999-05-06 19:20:59 +00:00
thorpej
35df607966 Allow pci_init() to be called twice, once just to find the PCI-Host
bridges and determine the "pci chipset" values (for making PCI tags),
and again to actually map the configuration space registers.
1999-05-06 19:16:44 +00:00
tsubai
661ae33963 Remove unused codes. 1999-05-06 04:37:44 +00:00
wrstuden
af849de633 MAke this cross-tools happy. 1999-05-06 01:04:48 +00:00
tsubai
9042054e51 Fix a small bug to make both IO and MEM enable bits in csr are set. 1999-05-05 08:43:53 +00:00
thorpej
fc645b996a - Always config_found() PCI busses, so we know if present PCI busses
aren't configured.
- Grab the bus's memory space tag from the pci_bridge structure for
the bus.
1999-05-05 04:40:00 +00:00
thorpej
654b0fff46 - Completely rewrite how bus space tags for PCI space are set up. Instead
of hard-coding them, decode the "ranges" property of the PCI bus node in
OpenFirmware.
- Do a little cleanup, and share some more code between the Bandit/Chaos
and MPC106.

XXX The bus_space(9) implementation for macppc really needs to be
rewritten.
1999-05-05 04:37:19 +00:00
thorpej
c448c97f2b - Add come comments.
- Do a little cleanup.
- Protect the entirety of pci_conf_{read,write}() with splhigh()/splx().
1999-05-05 04:32:28 +00:00
thorpej
341f87673b Add a bus space tag for PCI memory space to the pci_bridge structure. 1999-05-05 04:26:48 +00:00
tsubai
28b7777fd0 Provide CACHELINESIZE when _STANDALONE is defined too. 1999-05-03 05:19:59 +00:00
tsubai
8e885e921e Check "mac-io" and "/pci/mac-io". 1999-05-01 10:37:57 +00:00
tsubai
8dbaa0169e Find "mac-io" and "/pci/mac-io". 1999-05-01 10:36:08 +00:00
tsubai
5fff3dafe9 Use "compatible" property to match. 1999-05-01 10:23:42 +00:00
tsubai
9697f9c401 Add more sanity check. 1999-04-30 04:35:35 +00:00
tsubai
599ebb4db1 Now we can use symbols in DDB. :-) 1999-04-29 05:15:30 +00:00
tsubai
741030cc8a Add loadfile_machdep.h 1999-04-29 03:17:12 +00:00
tsubai
e4e1fcbaa6 Use MI loadfile(). 1999-04-29 03:16:20 +00:00
wrstuden
9b0e678d51 Fix compilation errors. 1999-04-22 18:48:59 +00:00
ws
5423093850 Modify syncicache on PowerPC from an inline to a real function.
Support different cache line sizes with the same object code in userland.
While here, move the function to implementation name space.
1999-04-17 21:16:45 +00:00
thorpej
e49833cd68 Now that we have direct-mapped pool pages, we can garbage-collect VM_MBUF_SIZE
and don't need to allocate mb_map.
1999-04-16 21:47:11 +00:00
thorpej
48a53c250d Add a stub pciide_machdep_compat_intr_establish() for Power Macintosh.
Power Macintoshes with PCI IDE (e.g. the new Blue G3) don't have them
wired to compatibility mode, so just return a NULL cookie.  We still have
to have this routine for the PCI IDE driver to link.
1999-04-16 21:15:29 +00:00
chs
f455dd6596 add a `flags' argument to uvm_pagealloc_strat().
define a flag UVM_PGA_USERESERVE to allow non-kernel object
allocations to use pages from the reserve.
use the new flag for allocations in pmap modules.
1999-04-11 04:04:04 +00:00
tsubai
bee9b5d9ab Enable "de". 1999-04-01 16:11:45 +00:00
thorpej
967b8c433c Don't call configure() from cpu_startup(). 1999-04-01 00:17:45 +00:00