pk
f4410cf7a3
Account for changed bus attachment scheme.
1998-03-21 20:34:58 +00:00
pk
090d9364af
Implement bus mapping and interrupt-establish functions.
1998-03-21 20:33:31 +00:00
pk
681b358c19
Account for bus_space(9)-style bus attachment scheme.
1998-03-21 20:30:49 +00:00
pk
232fa45996
Add bus tags to softc.
1998-03-21 20:29:57 +00:00
pk
a21d934940
Add bus tags.
...
Add interrupt chaining facility (currently used for `le'; the `esp'
device should follow).
1998-03-21 20:28:44 +00:00
pk
087da728f2
Add bus tags to softc.
1998-03-21 20:25:12 +00:00
pk
c99d62cc8a
Account for changed bus attachment scheme.
1998-03-21 20:23:38 +00:00
pk
be7f5a7031
Switch to a bus_space(9)-based device attachment scheme.
...
The dma & lebuffer devices behave like busses to accommodate the
OBP layout. For practical purposes, they are implemented as
Sbus "extensions".
1998-03-21 20:23:09 +00:00
pk
69fe6f242f
Account for changed bus attachment scheme.
1998-03-21 20:11:30 +00:00
pk
165120cfaf
Sbus attach arguments and map function prototypes go here.
1998-03-21 20:10:07 +00:00
pk
77f499595c
Switch to a bus_space(9)-based device attachment scheme.
...
- device attachment arguments contain bus-specific
address and interrupt levels.
- devices must call back on bus map functions to get their
addresses and interrupt levels translated properly.
- sun4m's obio bus is treated like an Sbus slot.
- the sun4-style obio bus has its own attach arguments
and map functions.
1998-03-21 19:55:31 +00:00
pk
73f387899e
#define several register bank offsets, so we don't need to refer to
...
structure fields.
1998-03-21 19:45:45 +00:00
pk
61365a8b8e
Add bus tags to softc.
1998-03-21 19:43:17 +00:00
pk
83cec33afc
Split the fb_setsize() utility in two separate functions: one to be
...
used by OBP machines and another one for sun4/eeprom machines.
1998-03-21 19:42:00 +00:00
pk
66190b4b99
Remove old `confargs' structure which is no longer used; extract the
...
structures representing the ROM properties.
Also, define the `mainbus' and `obio' attach arguments here.
1998-03-21 19:36:27 +00:00
pk
9e69994eaa
Add interrupt establish' and
device mmap' methods and macros to
...
match to the bus tag structure.
1998-03-21 19:31:27 +00:00
pk
9c3abc26a4
Add RCS-Id & copyright.
1998-03-21 12:29:29 +00:00
pk
71fc7f093d
The iommu "bus" now presents its own attach arguments to its children.
1998-03-21 12:21:18 +00:00
pk
d19772ea9e
Transform `mainbus' attach code to use its own attach arguments.
...
Add a couple rom-property helper functions; some overlapping functionality
with existing function, but hold on to the latter for just a while.
1998-03-21 12:18:25 +00:00
pk
8d63cb6db8
Remove incorrect address validity check in two `#if DEBUG' sections.
1998-03-21 11:32:43 +00:00
pk
1ccb578b36
We can't currently attach audioamd' at
obio'.
1998-03-21 11:15:25 +00:00
pk
04730ad038
Declare separate bus attachments for devices that can occur on multiple busses.
1998-03-21 11:12:56 +00:00
bouyer
9f50fca1fd
Add commented out "options FFS_EI"
1998-03-18 16:34:41 +00:00
cgd
9da165424c
allow LDSTATIC definition to be overridden by bsd.own.mk/mk.conf
1998-03-02 19:57:00 +00:00
fvdl
ede1a3fc5b
Make this compile again.
1998-03-02 17:58:34 +00:00
pk
d22f956657
Remove `_NEW_I82586'.
1998-02-28 01:15:51 +00:00
perry
1ed8ea9966
note second parm of sysarch() is now void *, + trivial KNF, etc.
1998-02-25 21:41:55 +00:00
mycroft
c1444078b5
Finish making this compile after libkern changes.
1998-02-22 15:25:28 +00:00
mycroft
b20ba808f2
Clean up after ffs() change.
...
Do *not* set runtime here; the way it was done was highly bogus, and the value
just gets blasted right away by mi_switch().
1998-02-22 15:13:36 +00:00
mycroft
1638d144ca
Always go to splhigh() inside DDB.
1998-02-22 14:07:21 +00:00
mycroft
bb0363853f
ffs() is identical to the one from libc, so just use that.
...
Move random() to libkern.
1998-02-22 09:31:00 +00:00
mycroft
3b9429b248
Minor changes to make all the float.h files match.
1998-02-18 11:01:27 +00:00
thorpej
8354e68508
Remove "class" declarations, and add "devclass" declarations where
...
appropriate. Fix several inconsistencies between device class and
attributes. Mostly from Chris Demetriou.
1998-02-16 22:12:45 +00:00
pk
0fc808b760
Think-o in pmap_extract4m(), detected by UVM.
1998-02-14 09:28:52 +00:00
thorpej
c26f962957
Use kernel_map in bus_dmamem_{map,free}().
1998-02-11 03:08:31 +00:00
thorpej
bdecbe552b
Use M_DMAMAP where appropriate.
1998-02-11 01:50:36 +00:00
mrg
d90485202c
- add defopt's for UVM, UVMHIST and PMAP_NEW.
...
- remove unnecessary UVMHIST_DECL's.
1998-02-10 14:08:44 +00:00
thorpej
da21f06eb5
Remove the pager options; they're in std.sparc, and will stay there
...
until UVM is no longer optional.
1998-02-08 19:24:28 +00:00
thorpej
93b0450b6a
Back out previous change (again, grrrr).
1998-02-08 19:23:20 +00:00
tv
40f13df5bc
the *PAGER options were moved to the generic config files, but not moved
...
out of here (causes duplicate opeion errors) -- fix.
1998-02-08 17:46:47 +00:00
thorpej
1305ecbe62
Allow callers of uvm_km_suballoc() to specify where the base of the
...
submap _must_ begin, by adding a "fixed" boolean argument.
1998-02-08 06:15:53 +00:00
pk
334b20bbd6
Define a `DMA_FLUSH' macro; dma chip revs 0 & 1 have a different bit
...
to reset the internal state engine.
1998-02-07 22:41:27 +00:00
chs
abf50cf8c3
add UVM stuff.
1998-02-07 17:28:18 +00:00
chs
50328f94f4
fix initialized variable.
1998-02-07 17:26:34 +00:00
chs
17755a8fae
fix typo in locking.
1998-02-07 02:36:58 +00:00
thorpej
840bd3d7b3
Back out previous change. Until the default VM system is UVM, these
...
"options" ARE required, and leaving them here doens't hurt anything in
the UVM case.
1998-02-06 08:21:55 +00:00
mrg
919667a0c7
backout previous change.
1998-02-06 01:22:54 +00:00
pk
0725302eac
vme_bus_probe() takes an `offset' argument.
1998-02-06 00:22:41 +00:00
mrg
40b61fb276
put PIL_CLOCK and splclock together, like the rest..
1998-02-06 00:02:30 +00:00
pk
86f595fb3e
This file has been moved to dev/vme a while ago.
1998-02-05 22:14:35 +00:00
mrg
5e91ce6ef1
initial import of the new virtual memory system, UVM, into -current.
...
UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code. i provided some help
getting swap and paging working, and other bug fixes/ideas. chuck
silvers <chuq@chuq.com> also provided some other fixes.
this is the sparc portion.
this will be KNF'd shortly. :-)
1998-02-05 07:57:48 +00:00
pk
dcf0846ffe
* Correct vme addresses in xd' and
xy' declarations.
...
* Renamed option: MMU_3L => SUN4_MMU3L
* Enter NFS_BOOT_PARAM option.
1998-02-04 21:49:12 +00:00
pk
90be3b559d
Use vme_bus_probe() in si_attach().
1998-02-04 20:50:47 +00:00
thorpej
8abe76d2f0
Add offset and length parameters to bus_dmamap_sync(), used for specifiying
...
partial syncs of a DMA mapping.
1998-02-04 05:12:46 +00:00
thorpej
99cc8482d1
Change the last argument of bus_dmamap_sync() from bus_dmasync_op_t to int,
...
and allow more than one synchronization operation to be specified in
a single call. Dissallow mixing of PRE and POST operations.
1998-02-04 01:57:27 +00:00
pk
bee3aa34cc
Account for changed vme_bus_probe() arguments.
1998-02-04 01:04:48 +00:00
pk
f060ed68ba
sparc_vme_probe(): handle callback argument.
1998-02-04 01:01:14 +00:00
thorpej
a7c5c1ef3c
Add dm_mapsize to bus_dmamap_t and rename BUS_DMAMEM_NOSYNC to
...
BUS_DMA_COHERENT.
1998-02-04 00:32:55 +00:00
mycroft
b5c132e4d2
Prototype __flt_rounds() consistently.
1998-02-03 01:26:20 +00:00
thorpej
2538ed1062
Use offsetof() from libkern.h
1998-01-28 02:23:04 +00:00
pk
d8dc32e559
It's no longer necessary to deal with the timers early.
1998-01-28 00:15:09 +00:00
pk
72f0ab269f
These drivers are now in dev/vme.
...
The `ie' driver has been split in a VME and OBIO front-end. The latter
lives on in this directory as `if_ie_obio.c'
1998-01-25 20:33:54 +00:00
pk
3d46658e38
disk_establish(): add xd & xy cases (XXX - need more thought).
1998-01-25 19:59:14 +00:00
pk
f937c21c08
VME device declaration changes:
...
- `vmes,vmel' => `vme'
- interrupt locator is the VME interrupt priority (`pri')
1998-01-25 19:56:30 +00:00
pk
531a4b2d77
sparc/obio bus front-end to the i82586 driver.
1998-01-25 19:50:50 +00:00
pk
8bc346d14a
All VME stuff is gone from here.
1998-01-25 19:44:43 +00:00
pk
7a39d28b24
bus_map() & bus_untmp() are only used for sun4/obio devices.
1998-01-25 16:51:16 +00:00
pk
d44f401c95
bus_tmp() => obio_bus_tmp()
1998-01-25 16:49:33 +00:00
pk
bcb062819f
The VME bus is now called `vme'.
1998-01-25 16:47:21 +00:00
pk
333b6319fc
Convert to new VME interface.
1998-01-25 16:38:01 +00:00
pk
4efb52487a
Split si & sw attach routines, and make the si part use the new VME interface.
1998-01-25 16:37:08 +00:00
pk
f8ba1e0bd9
sparc/VME bus implementation.
1998-01-25 16:06:25 +00:00
mycroft
63162f08ec
Add a svr4_setregs() (that just calls setregs() right now).
1998-01-24 18:26:09 +00:00
mycroft
15ae963bea
When dumping, print out the device number as major,minor.
1998-01-24 16:46:23 +00:00
pk
8a5023e38c
After writing to the IOMMU flush registers, read something back from
...
IOMMU control space to a flush register to drain internal write buffers (?).
This avoids utter lossage on some machines (SS4s & SS5s) where our caller
would see some of its local (`%lx') registers trashed. This is probably
caused by a silicon bug allowing interference on internal data paths..
1998-01-24 16:22:47 +00:00
pk
49d2bfe020
Add a couple of options I forgot in last commit.
1998-01-23 22:47:20 +00:00
mrg
c71457ab4a
KNF, and use splzs over splhigh in one place.
1998-01-21 05:54:39 +00:00
pk
ab37013309
Put back `le0 at lebuffer0' for backwards compatibility.
1998-01-20 22:12:51 +00:00
pk
23d53501bd
A small optimization.
1998-01-17 15:02:17 +00:00
pk
866632416e
Fix a border case when committing physical pages to the VM system;
...
rename some variables in the process for clarity.
1998-01-14 14:49:29 +00:00
pk
1842a317c3
Fix parenthesis inbalance.
1998-01-13 20:53:38 +00:00
pk
1195f3d8a9
Add fkbyte(), which is like fubyte() but for kernel addresses.
...
Only used at this moment to work around unexplained transient bus
errors when reading the VME interrupt vector in bus control space.
1998-01-13 20:51:01 +00:00
pk
a8dda8092d
Commit to MACHINE_NEW_NONCONFIG.
1998-01-13 00:58:56 +00:00
pk
418fd96bd5
Turn NEW_NONCONTIG page upload code into a routine shared by sun4/4c
...
and sun4m pmap_bootstrap()s, simplify it, and make it not loose the
couple of slack pages we painstakingly remembered in pmap_bootstrap.
1998-01-13 00:55:15 +00:00
thorpej
1adb4489a6
Update for changes to config.
1998-01-12 20:23:38 +00:00
pk
54719a53a3
More comments and general re-organization (group by device class) provided
...
by Todd Vierling.
1998-01-11 23:32:55 +00:00
perry
6f57e5c573
multiple include protect machine/limits.h, fixes pr 4473 (from Mika Nystrom)
1998-01-09 22:23:44 +00:00
thorpej
85d56961e5
Update a comment relative to the vm_bootstrap_steal_memory() change, and
...
don't include pmap_free_pages() or pmap_next_page() in the new non-contig
case.
1998-01-08 23:48:16 +00:00
mrg
c599e7d439
add new version of non contiguous memory code, written by chuck cranor,
...
called "MACHINE_NEW_NONCONGIG". this is required for UVM, the new VM
system (also written by chuck) that is coming soon. adds new functions:
vm_page_physload() -- tell the VM system about an area of memory.
vm_physseg_find() -- returns index in vm_physmem array that this
address is in.
and several new versions of old functions/macros defined in vm_page.h.
this is the sparc portion.
1998-01-08 11:39:30 +00:00
mrg
0876a69653
some KNF.
1998-01-08 11:03:13 +00:00
mrg
7069ab9961
don't call fb_unblank if NFB < 0
1998-01-08 10:56:36 +00:00
mrg
002fbe8721
do not use fb_unblank unless NFB > 0
1998-01-08 01:13:58 +00:00
perry
015e898c02
RCSID Police.
1998-01-05 07:02:46 +00:00
thorpej
9ca174a51d
Implement pmap_activate().
1998-01-02 22:57:56 +00:00
tv
89e7595756
Exclude /dev/fb code if no framebuffer is compiled into the system.
...
Adds a fb.h flag file with '#define NFB 1' if any such card is configured
in to the kernel.
1997-12-23 23:57:20 +00:00
pk
bf8e38df4f
Establish the interrupt handlers on sun4 `oclocks'; pointed out
...
by Chuck Cranor.
1997-12-19 22:53:10 +00:00
pk
964a147839
Clean vers.c & vers.o.
1997-12-18 21:03:58 +00:00
pk
9e087acb89
Code for software-assisted DDB single-stepping from Chuck Silvers.
1997-12-10 23:12:13 +00:00
chuck
d76941843e
fix mixer code that was clearly untested:
...
- allow get/set of enums SUNAUDIO_SOURCE and SUNAUDIO_OUTPUT rather
than returning EINVAL
- add missing SUNAUDIO_MONITOR_CLASS case in query_devinfo
- convert SUNAUDIO_MONITOR case from a MIXER_CLASS to a MIXER_VALUE
like it is supposed to be
- the labels for outputs/record class were swapped: fix it
this patch allows "mixerctl" to work properly on a sparc
1997-12-06 03:20:56 +00:00
tv
0a558b3f1f
Standardize COMPAT_SUNOS -- remove all references to
...
sunos_exec_aout_makecmds() in machdep.c for various architectures and put
it in exec_conf.c like the other emulations; rename exec.h to
sunos_exec.h.
1997-12-04 15:33:17 +00:00