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