Commit Graph

1524 Commits

Author SHA1 Message Date
mark
4285910912 Implement faster method of blocking all lower priority interrupts.
Modify current_spl_level to reflect the temporary change in interrupt
priority level which dispatching.
Don't increment the interrupt stats for every handler in the interrupt chain.
Cleaned up a number of comments.
Define soft interrupt names.
A few miscellaneous tidy ups.
1998-09-05 04:05:31 +00:00
mark
de5eac54ea Simplified initialisation of irqmasks.
Removed any remnants of soft interrupt dispatching.
Cleaned up a number of comments.
Removed a number of blank lines.
Nuked register keywords.
Made sure code is in sync with interrupt handling for other ARM hardware.
1998-09-05 04:04:24 +00:00
mark
451f011ac6 Always call dosoftints() for both lowerspl() and splx().
Fix several comments.
1998-09-05 04:01:53 +00:00
mark
3a115108ed Nuke register keywords.
Update set_spl_masks() to reflect the _SPL_SOFT* macros.
Initialise the soft interrupt mask array.
Update dump_spl_masks() to dump all the hardware and software spl masks.
1998-09-05 04:00:30 +00:00
mark
900bbc08fc Soft interrupt dispatching now uses the soft_interrupts variable along
with the spl_smasks array and the current_spl_level variable to work
out which soft interrupts are pending.
This means that soft interrupts are now separated from the hardware
interrupts so a full 32 hardware and 32 software interrupts can now be
supported.
Implement clearsoftintr() function.
Define several macros to make the soft interrupt dispatching code cleaner.
Implement setsoftserial() function.
Implement soft serial interrupt dispatching.
1998-09-05 03:59:29 +00:00
mark
867fa9eb68 If boot_file is defined try using it to determine the boot device.
Update printing of irqmasks for IPL_SERIAL.
1998-09-05 03:58:31 +00:00
mark
08c24a03e4 Cleanup and simplify interrupt number definitions for various architectures.
Remove all soft interrupt definitions now soft interrupts are being
separated from hardware ones.
Reserved interrupts do not have any special uses so only define then if
needed as placeholders.
1998-09-05 03:51:01 +00:00
mark
6edf348e6d Define _SPL_SOFT{CLOCK,NET,SERIAL} and create or update the
appropriate spl* macros.
Move spllpt() maro here from intr.h
Prototype setsoftserial().
Define spl_smasks array for software interrupt masks to complement the
hardware interrupt masks.
1998-09-05 03:50:01 +00:00
mark
4d98d58935 Define IPL_SERIAL & IPL_HIGH.
Define SOFTIRQ_CLOCK, SOFTIRQ_NET and SOFTIRQ_SERIAL and SOFTIRQ_BIT()
macros.
Move spltty macro to psl.h
1998-09-05 03:47:10 +00:00
mycroft
d9753cd7d0 Install joystick.h. 1998-09-05 03:32:57 +00:00
mycroft
dc0d1c09d5 Add joy at ofisa. 1998-09-05 03:32:36 +00:00
mark
5ae7ff7e6e Added assembly code for set_region_2.
Rewritten/Optimised a number of the bus space functions.
1998-09-05 01:31:53 +00:00
mark
1a6733681f Add set_region_2 to ISA IO and MEM tags.
KNF.
1998-09-05 01:30:02 +00:00
mark
46f166f090 Cleaned up the map_entry*() functions.
Removed register keywords.
Tidied up printf format strings.
Removed a number of blank lines.
1998-09-05 01:23:04 +00:00
mark
a21a7644df Rip out a load of junk thats long past its "best before" date. 1998-09-05 01:18:19 +00:00
mark
ec1dae5a9d Only build modedefs.c if MONITOR is defined. 1998-09-05 01:16:17 +00:00
mark
9ad228e3bc Update MINIROOTSIZE option. 1998-09-05 01:14:43 +00:00
mark
7115a4f53e Updated several comments and acknowledgements. 1998-09-05 01:12:14 +00:00
mark
218bf90f49 Nuke register keywords. 1998-09-05 01:09:42 +00:00
mark
e6aee6549e Updated for recent driver additions and reservations. 1998-09-05 01:06:38 +00:00
mark
3a01450f20 Bring up to date. 1998-09-05 01:04:48 +00:00
mark
323528d86f Integrate another one of Neil Carson's pmap improvements.
Use pmap_clean_page() in pmap_remove_all() to improve cache cleaning
efficiency.
1998-09-03 03:31:53 +00:00
cgd
8bbc38a130 avail mem is calculated ptoa(uvmexp.free), not ptoa(uvmexp.free - bufpages),
like on other ports.  uvmexp.free is already adjusted by the uvm_pagealloc
calls used to get the buffer pages.  (reported by mrg)
1998-09-02 00:03:05 +00:00
mark
0c11c52fc1 Added csc device. 1998-09-01 02:28:04 +00:00
mark
1c13966ceb Add csc device and scsibus attachment. 1998-09-01 02:27:21 +00:00
mark
edb737d09d Initial commit of a Cumana SCSI II driver using the sfas chip driver. 1998-09-01 02:24:11 +00:00
mrg
478a07de87 generate dependancies from genassym.cf 1998-09-01 01:48:21 +00:00
mrg
1fe0874746 use genassym.sh/.cf rather then the C program. 1998-08-31 06:52:18 +00:00
mark
0e533ae4c7 Use IPL_AUDIO for the interrupt priority.
KNF.
1998-08-31 02:36:11 +00:00
mark
bd75906989 Use IPL_AUDIO for the interrupt priority.
Cleaned up some comments and removed several un-necessary includes.
1998-08-31 02:35:31 +00:00
mark
47364b0c91 Use IPL_AUDIO for the interrupt priority. 1998-08-31 02:34:36 +00:00
mark
cdaa8d9c45 Further improvements to init_arm(). Use map_chunk() to map a number of
areas of the kernel including the text, data and bss.
1998-08-31 00:11:18 +00:00
mark
80d8aa6034 Remove a couple of redundant lines. 1998-08-31 00:08:11 +00:00
mark
c4ae202098 Further improvements to init_arm(). Use map_chunk() to map a number of
areas of the kernel include the text, data and bss.
1998-08-30 23:19:37 +00:00
mark
45faa60d85 Added a new function map_chunk() used during init_arm() when setting up
the kernel page tables. map_chunk() replaces running a loop, calling
map_entry() and in addition where possible it will use L1 section mappings
or L2 large page mappings instead of L2 small page mappings in order to
reduce the TLB entried needed for the kernel.
1998-08-30 23:17:44 +00:00
mark
82661d453d Define new PTE construction macros for L2 large small pages and L1
sections and define some of the other macros using the new ones.
Add more comments for various definitions in the file.
1998-08-30 23:15:14 +00:00
mark
eff784066e Don't discard the proc0_pt_pte mapping and make sure that the
proc0_pt_pte and proc_pagedir mappings are uncached.
1998-08-29 04:58:16 +00:00
mark
4a241e1fbd Change KERNEL_BASE to VM_MIN_KERNEL_ADDRESS. 1998-08-29 04:08:12 +00:00
mark
9eb28e934b Include sys/types.h instead of sys/param.h
Junk some un-needed includes and include cpu.h.
1998-08-29 04:05:44 +00:00
mark
ae7526d965 Removed some un-necessary includes. 1998-08-29 04:01:58 +00:00
mark
c611af7c7f Change boot_path to boot_file and initialise to NULL along with boot_args. 1998-08-29 03:57:03 +00:00
mark
5898385f6b Change boot_path -> boot_file and initialise to NULL along with boot_args. 1998-08-29 03:55:57 +00:00
mark
4ad81305d5 Initialise boot_args and boot_file to NULL. 1998-08-29 03:53:17 +00:00
mark
80b4f63e42 Updated for some reserved majors. 1998-08-29 03:28:17 +00:00
mark
af5eba9861 Implement address validation as a separate function db_validate_address().
Use this function to validate the page table entries for all reads and
writes.
1998-08-29 03:21:33 +00:00
mark
3e217a0157 Remove the definition of CURRENT_PAGEDIR_HOLE and CURRENT_PAGEDIR_BASE
as they are no longer reference.
Move ALT_PAGE_TBLS_BASE from 0xf3c00000 to 0xf0c00000.
Increase the size of the KERNEL_VM_SIZE by 16MB now that 0xf3xxxxxx is free.
1998-08-29 03:19:55 +00:00
mark
22a3c54923 Use KERNEL_VM_SIZE to calculate the number of page tables needed for
the kernel data area.
Don't map the proc0 L1 page table into the L2 page tables space.
1998-08-29 03:17:27 +00:00
mark
99bb4b6b6b Rewritten pmap_pte() not to use the mapping of the L1 page table within
the L2 pages tables (CURRENT_PAGEDIR_HOLE).
Don't map the L1 page table into the L2 page table space any more (easy
reference hack) in pmap_allocpagedir().
1998-08-29 03:14:14 +00:00
mark
66074cf792 Use VM_MAX_KERNEL_BUF only to limit nbuf and not bufpages. 1998-08-29 03:09:14 +00:00
mark
808c0cca58 Fix bug with zeroing kernel page tables that I introduced yesterday. 1998-08-28 20:04:35 +00:00
mark
1cb7a16aed Fix typo. The page table allocation loop in initarm() should be
<= NUM_KERNEL_PTS rather than < NUM_KERNEL_PTS.
1998-08-28 17:15:45 +00:00
mark
25ae95328f Use kernel_pmap->pm_pdir instead of PAGE_DIRS_BASE when mapping podule
space.
1998-08-28 03:19:34 +00:00
mark
17dcbf485c More reworking in initarm().
Further cleanup and simply the allocation and mapping of the kernel
  pagetables and static data pages.
  Removed the page directory page table as it is no longer necessary.
  Changed the allocation of the proc0 L1 page table and L2 page table
  that maps the page tables to map these pages into kernel virtual
  address space.
  Updated for pv_addr_t argument changes to pmap_bootstrap().
1998-08-28 02:58:41 +00:00
mark
133f5c93f0 Updated for pmap_bootstrap() argument change. Modify ofw_configmem()
to obtains pv_addr_t structures for the proc0 L1 page table and the proc0
pagetable that maps page tables.
Use the virtual address from the pv_addr_t structure for the proc0 L1 page
table when calling pmap_bootstrap rather than relying on a special mapping
at PAGE_DIRS_BASE.
Modify ofw_construct_proc0_addrspace() for similar changes to
ofw_configmem().
Remove the kernel_pde page table in ofw_construct_proc0_addrspace() as it
it now longer needed.
1998-08-28 02:52:37 +00:00
mark
1ca0ef8cae Modify the arguments to pmap_bootstrap() to take a pv_addr_t structure
for the page table to map kernel pagetables (kernel_ptpt). This means
that the pm_vptpt field is now valid for the kernel_pmap.
Use constants from vmparam.h in pmap_allocpagedir().
1998-08-28 02:46:51 +00:00
mark
c5695ed630 Centralize the definition of pv_addr_t to pmap.h 1998-08-27 04:00:53 +00:00
mark
af91a82f1e Remove pv_addr_t and systempage declarations. 1998-08-27 03:58:10 +00:00
mark
e7a61c9984 Centralise the definition of the pv_addr_t structure. 1998-08-27 03:55:06 +00:00
tv
7308faf67b "COMPAT_11 + COMPAT_12 + COMPAT_13" doesn't work - these are based on
definition, not 1 or 0.  Also, since all pre-1.4 releases require
COMPAT_13 (not just 1.3 binaries), just "#ifdef COMPAT_13".
1998-08-26 14:51:57 +00:00
augustss
9deb19798f Add OPL driver. 1998-08-26 12:10:57 +00:00
augustss
76567c8213 Remove ad1848 attribute; it's in conf/files now.
(Why don't we remove the XXX hack in this file?)
1998-08-26 09:32:24 +00:00
mark
47e470f2af Use UVM as standard. 1998-08-25 22:07:46 +00:00
mark
34f8ef18c9 Updated for changes to some of the constants defined in vmparam.h
Simplified serveral parts of the initarm() to make the code clearer and
modified parts of initarm() as part of an on-going effort to abstract
out part of initarm() on various machines.
1998-08-25 22:03:07 +00:00
mark
61bd706797 Include machine/vmparam.h 1998-08-25 21:56:14 +00:00
mark
bd14bb41f0 Define KERNEL_PD_SIZE in terms of various constants defined in vmparam.h 1998-08-25 21:55:06 +00:00
mark
cda0e37703 Collect various kernel constants together and define them in all one
place (some moved from param.h)
Define several constants such as page table addresses in terms of other
constants.
Increase some of the limits :
  MAXTSIZ	8MB -> 16MB
  DFLDSIZ	16MB -> 128MB
  MAXDSIZ	256MB -> 512MB
  DFLSSIZ	512KB -> 2MB
1998-08-25 21:53:37 +00:00
mark
4e8239cdca Removed a number of kernel constants as they have moved to vmparam.h 1998-08-25 21:50:54 +00:00
mark
f920e4e2d6 In physconinit(), don't use printf() to clear the screen but call
the console's putstring function directly.
1998-08-25 03:26:36 +00:00
mark
b75234f009 Add calls to cpu_cache_cleanID() after calling setttb() during initarm().
This is necessary as the memory addresses being used for the cache clean
(if the CPU is a SA110) may have been remapped by the setttb() call and
thus the cache could loose sync with memory.
1998-08-25 03:10:25 +00:00
augustss
c29fdceff3 Prepare for MIDI devices. 1998-08-22 22:50:53 +00:00
thorpej
f73a7043f3 ISA Game port driver, lifted from BeBox port. 1998-08-20 06:31:34 +00:00
thorpej
b176b7ba0f Add joy driver at cdev 56. 1998-08-20 06:30:56 +00:00
thorpej
31ac3d022c Add joy driver devsw declarations. 1998-08-20 06:28:43 +00:00
thorpej
2d282c7e70 Add joy driver glue. 1998-08-20 06:28:18 +00:00
thorpej
cc042ba0e5 Correct a function name in a panic message. 1998-08-20 05:46:20 +00:00
thorpej
4396c67463 Internal cleanup. 1998-08-17 22:28:00 +00:00
augustss
cd09067eb4 * Redo the way the way the MIDI driver attaches to audio devices.
* Improve the midisyn layer a little.
* Add a driver for the Yamaha OPL[23] FM synths.
  The opl driver is not finished yet; it sounds pretty awful.

For some strange reason I cannot get any FM sound from my SB64 cards,
but a regular SB16 works fine.
1998-08-17 21:16:09 +00:00
thorpej
0809175887 #define _CS_OFISA_MD_REG_FIXUP 1998-08-17 20:40:53 +00:00
thorpej
defb1b327e Implement a reg fixup, needed for old OpenFirmware builds. 1998-08-17 20:38:08 +00:00
mark
518c6812d3 Block user space access between the cache purge and the context switch in
cpu_switch() as all user space addresses must be removed from the cache
prior to the context switch and interrupts are live for the purge.
1998-08-16 02:17:17 +00:00
mark
2ea34b589c Enable interrupts during cache clean, purge and sync operations.
Instead use a flag to indicate that all user space access are blocked
during the cache op to ensure that user space virtual addresses correctly
expunged from the cache.
1998-08-16 02:14:15 +00:00
mark
decc2dde0a Implement a mechanism to prevent fuswintr() and suswintr() from accessing
user space via a flag. This enables interrupts to be live during certain
critical operations where user space accesses must not be attempted.
1998-08-16 02:11:32 +00:00
mark
152c00c687 Enable interrupts as soon as possible in prefetch_abort_handler(),
beore any of the diagnostic checks etc.
1998-08-16 02:03:30 +00:00
mark
d83571ea08 Enabled interrupts as soon as it possible in syscall(), before any
of the diagnostic checks.
1998-08-16 02:01:16 +00:00
mycroft
d07b3639a4 Assign my copyrights to TNF. 1998-08-15 17:47:15 +00:00
mycroft
6dc903202f Assign my copyrights to TNF. 1998-08-15 10:10:47 +00:00
mycroft
08ab3f8338 I didn't write any of this. 1998-08-15 03:36:34 +00:00
mycroft
6d3d8a1350 Make copyright notices with my name consistent. 1998-08-15 03:02:31 +00:00
thorpej
2b869a383f Use _CS_OFISA_MD_* callbacks for old, broken OpenFirmware builds. 1998-08-15 02:59:01 +00:00
mark
2a48768678 Debug inst_unconditional_flow_transfer and next_instr_address
macros so that single stepping works correctly.
1998-08-15 02:57:28 +00:00
mark
170eadd04c Add FILECORE filesystem. 1998-08-14 03:56:21 +00:00
eeh
a2dd74ed79 Merge paddr_t changes into the main branch. 1998-08-13 02:10:37 +00:00
mark
3ad4ac45f9 Reworked interrupt blocking and unblocking to improve interrupt latencies
during context switches.
1998-08-12 01:10:29 +00:00
mark
0a1a20bd29 Recognise STRH, STRSH and STRSB instructions as store instructions when
determining page protections for [u]vm_fault(). Fixes bug spotted by
Richard Earnshaw.
1998-08-10 15:15:49 +00:00
mycroft
093a8daf6b Go to splhigh in the debugger. 1998-08-09 00:00:57 +00:00
mycroft
e2686d0a1b Use splnet, not splimp. 1998-08-08 23:51:39 +00:00
mycroft
d5eb56b2c2 Move splclock and splaudio outside splimp. 1998-08-08 23:39:38 +00:00
kleink
709dda58f8 _POSIX_SOURCE -> _POSIX_C_SOURCE, and add missing protection bits. 1998-08-06 11:22:57 +00:00
mark
25997dd19d IPL_TTY -> IPL_SERIAL. 1998-08-04 20:09:37 +00:00
mark
b6ffd3a85e Don't call cpu_tlb_flushID() from the pmap_update macro. 1998-08-04 19:11:29 +00:00
mark
167a777474 Drop in the lastest round of optimisations from Neil Carson.
The cache cleaning code in pmap_copy_page() and pmap_zero_page()
  has been rewritten and uses a new function pmap_clean_page().
  pmap_remove() has been completely rewritten to make it more efficient
  when there are only a few pages that actually need to be removed.
1998-08-04 19:02:19 +00:00
mark
47ac4421e0 In setregs(), only pass the stack value in r12 if COMPAT_1[123] is defined. 1998-08-04 16:25:28 +00:00
mark
4b14908352 Fix the validation of source addresses in db_read_bytes() so that
memory ranges mapped with L1 section mappings do not cause aborts
due to lack of L2 page table.
1998-08-04 16:19:54 +00:00
mark
e9c872cd6b Define a macro L1_MASK to mask out the level 1 pde type bits. 1998-08-04 16:16:22 +00:00
mark
d91830b032 Namespace cleanup. Prefix all the JMPBUF* macros with _JB. 1998-08-04 02:01:17 +00:00
mark
70fe6c76a1 Pass ps_strings in r0 when execing processes.
Use macros rather than absolute values in zero_page_read*() functions.
1998-08-02 21:50:31 +00:00
thorpej
0869d8f714 Blargh, deal with some fallout from the ISA PnP goo, this will go away once
we can pull in files.isa properly.
1998-07-31 16:42:01 +00:00
thorpej
29ad6dac50 ISA PnP goo. 1998-07-31 04:50:01 +00:00
thorpej
6f3b1afe37 First-cut ISA PnP support for NetBSD/arm32. 1998-07-31 04:48:42 +00:00
thorpej
7b68dfc9c7 Fixup include paths. 1998-07-30 21:58:48 +00:00
thorpej
d85ed3d973 Put the SoundBlaster stuff back for files.ofisa (Until we can just
properly include files.isa).
1998-07-30 21:51:00 +00:00
augustss
cdeb158d5f A first stab at making the SHARK sound work. It doesn't really work
yet, but it probes and makes a noise when used.  Stay tuned!
1998-07-30 14:11:42 +00:00
mark
620bc79e36 Fix the copyin(), copyout() argument validation to check for zero
length copy before returning EFAULT for a bad address.
1998-07-29 00:56:08 +00:00
thorpej
6dd25080b4 Garbage-collect ofisacs, noted by Scott Reynolds. 1998-07-28 21:19:13 +00:00
thorpej
3ff8e6493a Don't cast the null residual pointer passed to vn_rdwr(). 1998-07-28 18:34:52 +00:00
thorpej
9b35e91d59 Update for cs* at ofisa? 1998-07-27 01:44:20 +00:00
thorpej
803df07221 Obsolete. 1998-07-27 01:43:24 +00:00
thorpej
6d885615a2 Obsolete. 1998-07-27 01:42:19 +00:00
thorpej
6828d39080 Actually provide the correct bus space tags. 1998-07-27 00:48:15 +00:00
thorpej
b9aeeb3fa1 Remove a test, making diagnosis of IRQ problems easier. 1998-07-26 21:24:37 +00:00
thorpej
f0ff548dd2 Rewrite the probe to use values from the EEPROM for membase and IRQ
if they're not specified by the attach arguments, so that they can
be reported by isaprint().  Rearrange the attach routine to facilitate
splitting this up into front- and back-end drivers.
1998-07-25 01:15:54 +00:00
thorpej
b4195e59cd Change the interface to the EEPROM functions such that they can be called
from the probe routine.
1998-07-24 23:25:13 +00:00
thorpej
8d611b5f32 Remember the product ID and revision. 1998-07-23 19:25:52 +00:00
thorpej
1c9aed40f6 Round-out full-duplex support. 1998-07-23 19:02:55 +00:00
thorpej
202d438148 CS8900 driver has of_network_dev property. 1998-07-22 22:09:59 +00:00
thorpej
c10c18b955 Get media from OpenFirmware. 1998-07-22 22:09:18 +00:00
thorpej
05ff8b05f5 Print the default media at attach time. 1998-07-21 23:09:25 +00:00
thorpej
02ad0b4eda Add support for ifmedia. 1998-07-21 22:58:31 +00:00
thorpej
aaa383804d Correct the name of the CS8920M id. 1998-07-21 19:54:56 +00:00
thorpej
52cfd19bcf Ever closer to KNF. 1998-07-21 01:17:14 +00:00
thorpej
bb3c5257c7 Move the cs8900 driver's softc, etc. definitions to an MI location. 1998-07-21 01:04:55 +00:00
thorpej
133efc841f Use <dev/isa/cs89x0var.h> 1998-07-21 01:04:09 +00:00
thorpej
9c9a866a90 Move PacketPage read/write macros in to if_csvar.h 1998-07-21 00:58:46 +00:00
thorpej
bdc9dcbe8a G/c two more unused definitions. 1998-07-21 00:53:57 +00:00
thorpej
23efef79fc Move the code that prints Rx errors into a separate function, rather than
duplicating it.
1998-07-21 00:52:15 +00:00
thorpej
9282418a78 Some cosmetic changes. 1998-07-21 00:40:17 +00:00
thorpej
20fb09c609 G/c more unused debugging goo. 1998-07-21 00:24:45 +00:00
thorpej
6014ea2216 Garbage-collect some unused debugging goo. 1998-07-21 00:23:18 +00:00
thorpej
f45804c4c6 Nuke sc_iobase (and a serious misuse of it!) 1998-07-21 00:22:29 +00:00
thorpej
22ff8accae Use fixed-size types. 1998-07-21 00:20:35 +00:00
thorpej
5b56c35223 Nuke the "pia" typedef. 1998-07-21 00:18:35 +00:00
thorpej
44d02a07d0 Update for <dev/isa/cs89x0reg.h> 1998-07-21 00:11:03 +00:00
thorpej
57488ef1e4 Remove the register descriptions from this file, and split them into
<dev/isa/cs89x0reg.h>
1998-07-21 00:10:11 +00:00
thorpej
c3e7a09c4e Use <dev/isa/cs89x0reg.h> 1998-07-21 00:08:57 +00:00
is
6054d626f9 Switching dev/ic/lpt.c to use spllpt() instead of spltty(). It doesn't use
tty structures, and on some machines (namely the DraCo internal lpt, and some
multi-i/o boards for Amigas and DraCos), tying spltty to the pretty high printer
interupt level would hurt serial performance.

On all affected ports but Amiga, spllpt() has been defined in machine/intr.h
to be spltty(), thus preserving old behaviour. Portmasters are encouraged to
change is, if they feel something else is better (e.g., one of its own were
possible).
1998-07-18 21:27:25 +00:00
thorpej
2fc1260cc0 Implement bus_dmamap_load_uio(). 1998-07-17 21:09:59 +00:00
mark
f6e8a93bac Replace hardcoded constant with VM_MIN_KERNEL_ADDRESS. 1998-07-17 19:12:48 +00:00
thorpej
41986b6ad6 Print out the revision as a letter, i.e. 'A', ... 1998-07-15 03:29:47 +00:00
thorpej
25a86ef490 Be a little more thorough when printing the chip name, and also print
the chip revision.
1998-07-15 00:01:17 +00:00
thorpej
45c63f6b7b Massive cleanup of this driver (format police, autoconfig). More to come. 1998-07-14 23:38:49 +00:00
mark
57c3ea15d8 Guard opt_cputypes.h include with _KERNEL && !LKM 1998-07-13 06:12:08 +00:00
mark
7b6cd6a0a6 Guard opt_cputypes.h include with _KERNEL && !LKM. 1998-07-09 02:43:25 +00:00
thorpej
e32f380030 Garbage-collect some of the old ISA DMA code. 1998-07-08 07:56:47 +00:00
thorpej
8bbd7378c5 RCS ID police. 1998-07-08 07:56:13 +00:00
thorpej
9bbe01f100 Note that UVM is mandatory on the Shark (otherwise ISA DMA won't work) 1998-07-08 05:27:17 +00:00
thorpej
e332a993e2 Initialize the machdep ISA DMA structures once we've done OpenFirmware
ISA DMA initialization.
1998-07-08 05:01:56 +00:00
thorpej
8d10a53ddb Use MI ISA DMA code (XXX this needs some work). 1998-07-08 05:01:17 +00:00
thorpej
fcd0183e81 Remove all of the home-grown ISA DMA code, and translate the OpenFirmware
"dma-ranges" property into the pmap's ISA DMA ranges.
1998-07-08 05:00:40 +00:00
thorpej
28cbb7c537 Provide the ISA chipset tag. XXX This should go away in favor of a real
ofisa attachment of the "cs" driver.
1998-07-08 04:59:46 +00:00
thorpej
f5535d79ca Provide the ISA chipset tag. 1998-07-08 04:59:02 +00:00
thorpej
8eeb7eaad0 Implement an ISA bus_dma back-end for NetBSD/arm32. Tested only on the
Shark, but should work for other ISA-"enabled" arm32 systems, as well.
1998-07-08 04:58:03 +00:00
thorpej
696858d5f9 Nuke these; we use the MI ISA DMA code now. 1998-07-08 04:57:13 +00:00
thorpej
98b07e4b07 Provide an ISA chipset tag via isa_attach_hook(). G/c home-grown
ISA DMA code, in favor of the MI code.
1998-07-08 04:56:13 +00:00
thorpej
b51b6b7c04 Lift-and-tweak from the i386 port (near-complete rewrite), providing
the ISA DMA stuff expected by machine-independent code.
1998-07-08 04:54:47 +00:00
thorpej
eeb19dd33c Remember our ISA chipset tag. 1998-07-08 04:53:33 +00:00
thorpej
f7e400a7ab Use the machine-independent ISA DMA code.
XXX We use COHERENT for now; need to deal with sync'ing DMA maps being
XXX used by the isadma driver.
1998-07-08 04:53:03 +00:00
thorpej
a177e7aedc Rearrange this a little so we can use MI ISA DMA code. XXX Should just
pull in files.isa, but Not Right Now, apparently.

Add the sound blaster driver here (XXX see above), and build the
arm32 bus_dma back-end.
1998-07-08 04:51:12 +00:00
thorpej
8e03657b43 Define two free lists: default, and one to protect ISA DMA-safe memory. 1998-07-08 04:49:21 +00:00
thorpej
d7d001fe70 Allow platform-specific code to define DMA-safe memory ranges for ISA.
If pages being loaded into the VM system intersect with any of these
ranges, the intersecting pages will be placed on a lower-priority
free list to protect them.
1998-07-08 04:48:20 +00:00
mark
93179db2b7 Remove several pointless cache/tlb cleans. (From Neil Carson). 1998-07-08 00:18:16 +00:00
mark
e1fe0d71c0 Fix IOMD ID checks. 1998-07-08 00:15:59 +00:00
mark
9a4a105abb Remove un-necessary write buffer drains. (From Neil Carson). 1998-07-08 00:13:41 +00:00
mark
f79b12670f Simplify cache cleaning in page_move(). (From Neil Carson). 1998-07-08 00:12:33 +00:00
mark
9dccefd1c9 Simplify the included files. 1998-07-08 00:10:44 +00:00
mark
ddae1799a5 Make sure the write buffer is drained during syncing. 1998-07-08 00:08:39 +00:00
mark
61cdca4a6d Remove unused file. 1998-07-07 17:59:56 +00:00
mark
d20b5cf136 Clean up included files. 1998-07-07 17:51:54 +00:00
thorpej
8f2575ec87 Use fixed-size types. 1998-07-07 04:29:42 +00:00
mark
4a463e49fe defopt CPU_* options in opt_cputypes.h 1998-07-07 03:05:15 +00:00
mark
3d4c1e7372 Cleanup ofw_boot().
Remove un-necessary includes.
1998-07-07 02:45:00 +00:00
mark
2abb91b62a Nuke a redundant cache clean in pmap_enter() (from Neil Carson). 1998-07-07 01:18:47 +00:00
mark
2194175b24 KNF. 1998-07-07 00:48:11 +00:00
mark
68dd742555 Include opt_armfpe.h 1998-07-06 18:13:26 +00:00
mark
d41434d3ae Cleanup explict Makefile dependancies. 1998-07-06 02:43:38 +00:00
mark
9161d5ab60 Include opt_pmap_debug.h for PMAP_DEBUG defopt. 1998-07-06 02:40:42 +00:00
mark
3682a37511 Include opt_compat_old_ofw.h for COMPAT_OLD_OFW option. 1998-07-06 02:36:52 +00:00
mark
94df6c50f4 defopt COMPAT_OLD_OFW and PMAP_DEBUG. 1998-07-06 02:35:34 +00:00
mark
9ed6d03641 Always include arm32/disassem.h 1998-07-06 02:33:25 +00:00
mark
572dcd8575 Include opt_armfpe.h 1998-07-06 01:56:40 +00:00
mark
f10dbf227d defopt ARMFPE. 1998-07-06 01:54:56 +00:00
mark
5df95c3336 Junk the DISASSEMBLE macro and just call disassemble() directly. 1998-07-06 01:54:36 +00:00
mark
70fba3ee34 postmortem() is no longer used in this file. 1998-07-06 01:52:26 +00:00
mark
a96139b744 Include opt_uvm.h and define Lcnt appropriate for UVM or non-UVM configs. 1998-07-06 01:04:17 +00:00
mark
8b4b75b9ea The ARMFPE option is never enabled by default any more. 1998-07-06 00:59:21 +00:00
mark
c73c7674d7 defopt IRQSTATS. 1998-07-06 00:53:07 +00:00
mark
ac8d41742b Remove MOUSE_IOC_ACK option as this is now standard. 1998-07-06 00:49:20 +00:00
mark
d016feb2d7 Define MOUSE_IOC_ACK as standard. 1998-07-06 00:43:28 +00:00
mark
9126d07941 defopt XSERVER. 1998-07-06 00:42:37 +00:00
mark
e110bd8a6a defopt IRQSTATS and XSERVER 1998-07-06 00:41:17 +00:00
mark
36af051383 Update functions that missed the previous name space change. 1998-07-05 23:31:16 +00:00