mrg
445283dc37
make UVM the default on the sparc
1998-05-05 01:15:05 +00:00
pk
b6933ca39d
Reading back the IOMMU registers apparently has the ability to wedge
...
microSPARC I cpus. Instead insert a couple of no-ops that seems to
avoid the microSPARC II lossage just as well.
1998-05-04 23:16:59 +00:00
thorpej
1686aca01d
Pull in opt_gateway.h as appropriate.
1998-04-29 23:11:00 +00:00
kleink
a53c1863fe
Provide definitions for intptr_t and uintptr_t, signed resp. unsigned integral
...
types large enough to hold any pointer.
1998-04-27 17:39:10 +00:00
chs
8cacea4ea0
fix a timing problem with polled output on sun4c's.
1998-04-23 04:06:17 +00:00
pk
c1a4f8c8ed
Define `xbox'.
1998-04-18 19:03:00 +00:00
pk
90b5c246c6
Skeleton code for the SBus expander box.
1998-04-18 19:00:17 +00:00
tv
b21bfbde11
Add -Wno-main conditional on compiler being gcc 2.8 or egcs. (This adds
...
a HAVE_GCC28 check-variable that can now be used to add other gcc-2.8
flags in cases where they may be useful, or to remove gcc 2.7.2 "bug
workaround" flags.)
1998-04-12 23:47:41 +00:00
pk
98e9f557c2
No need to export bus_intr_establish().
1998-04-07 20:43:58 +00:00
pk
beb02e6b82
Use bus space methods to implement the vme bus space functions.
1998-04-07 20:21:55 +00:00
pk
b333d0bb62
The bus space functions now take care of "pass-through" methods.
1998-04-07 20:20:03 +00:00
pk
fbc1fe8213
bus_space_mmap() has changed to take a `bus_space_handle_t *' argument,
...
like other bus space methods.
1998-04-07 20:18:17 +00:00
pk
3f455e21d9
The bus space functions now take care of "pass-through" methods.
1998-04-07 20:11:54 +00:00
pk
5ecf4dce67
Remove old mapdev() function prototype.
1998-04-07 20:08:29 +00:00
pk
286472fe4d
* Pass the bus tag instead of just the cookie to all bus space methods.
...
* In the bus tag structure, keep a reference to the parent bus.
* Express all bus space methods as inline functions in stead of macros
and use the parent bus tag reference to find the nearest "upstream"
bus that implements the method.
1998-04-07 20:07:23 +00:00
pk
dd3352e3e3
bus_space_*() functions now have the bus tag as first argument.
...
Remove old mapdev() function that is no longer used.
1998-04-07 19:57:37 +00:00
pk
676939e234
Make the single-step support routines available to KGDB-only kernels as well.
1998-04-03 19:53:36 +00:00
pk
437796f42a
Move initialization of `proc0.p_addr' from cpu_startup() to bootstrap().
1998-04-01 14:03:26 +00:00
pk
763a681898
Accommodate cgsix bus-attach split.
1998-03-31 21:12:15 +00:00
pk
e3e74bd0d5
Factor out bus code into separate files.
1998-03-31 21:05:04 +00:00
pk
be4108fec1
Replace direct `sparc_bus_map()' calls with bus space map method.
1998-03-30 14:21:38 +00:00
pk
c2d9565240
mainbus pa_addr' is now a
bus_addr_t'.
1998-03-30 14:15:57 +00:00
pk
fed9d8e6d6
Make mainbus attach phys addr field a bus_addr_t.
1998-03-30 14:15:12 +00:00
mycroft
d4da63c6c3
Eliminate cs_heldchar. It is not necessary in my version of the driver.
1998-03-30 02:41:21 +00:00
pk
a55cefe6b4
Initialize `par_err_reg' in the mainbus attach function.
1998-03-29 22:13:30 +00:00
pk
b782c3448c
obio_bus_probe() => bus_space_probe()
1998-03-29 22:10:32 +00:00
pk
2ad26b801c
Fill in the bus tag's `bus_space_unmap' method.
1998-03-29 22:06:58 +00:00
pk
82663a0330
Implement `_obio_bus_map()' and insert it into the obio bus' bus tag.
...
Remove obio_bus_probe().
1998-03-29 22:05:05 +00:00
pk
57a8159633
Enter `obio_find_rom_map()' prototype.
...
Make `oba_paddr' field a `bus_addr_t'.
Define temporary compat `obio_bus_map()'.
1998-03-29 22:02:46 +00:00
pk
11928be0ff
`sparc_bus_mmap()' declaration moved to machdep.c
1998-03-29 22:00:33 +00:00
pk
759c8965a3
Use obio_find_rom_map()' explicitly instead of using
obio_bus_map()'
...
without a proper bus tag.
1998-03-29 21:59:44 +00:00
pk
2f1dd95a2d
Declare `sparc_bus_unmap()' static.
1998-03-29 21:56:32 +00:00
mrg
47a62a0eed
use bitmask_snprintf.
1998-03-29 05:10:45 +00:00
mrg
b61e2629f2
remove register from decl.
1998-03-29 05:08:46 +00:00
pk
2a65520c69
bus_space_probe() prototype.
1998-03-28 19:45:29 +00:00
pk
89444e9309
Implement generic bus probe function.
1998-03-28 19:44:08 +00:00
pk
f3d6050987
Typo in initial interrupt register mapping code.
1998-03-26 16:11:40 +00:00
pk
f658122053
Check for a valid PROM virtual address.
1998-03-25 23:15:07 +00:00
pk
ce14ebd2b7
Include not-cacheable bit in base bus space mmap function.
1998-03-24 10:00:14 +00:00
pk
23521d1c5f
Fix yank-and-put error in sbus attach code.
...
Misc. cleanup.
1998-03-23 17:37:04 +00:00
pk
4730d097ad
Only print interesting interrupt levels.
1998-03-23 17:21:52 +00:00
pk
3702424d0f
Restore initialization of `par_err_reg' (sun4).
1998-03-23 17:16:03 +00:00
pk
279df61dbe
Fill in the pointers the MI back-end expects correctly.
...
Add comment and diagram explaining the memory layout (to be revisited..).
1998-03-22 22:12:52 +00:00
pk
405ec57e9f
Lift the tilde a bit.
1998-03-22 20:24:05 +00:00
pk
e6a2630760
Direct the Sbus bus map function through the bus tag.
1998-03-21 22:03:33 +00:00
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