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
jonathan
b37021c1a1
defopt NATM.
1998-07-05 22:48:05 +00:00
jonathan
d275e56dee
* defopt COMPAT_{09,10,11,12,13} and COMPAT_NOMID.
...
TODO: revisit interaction between native compat and emul compat usage.
1998-07-05 08:49:30 +00:00
jonathan
011f2bda08
defopt NS, NSIP.
1998-07-05 06:49:00 +00:00
jonathan
5c0c5dd0b4
defopt ISO TPIP.
1998-07-05 04:37:35 +00:00
jonathan
8db0fcdbf7
defopt CCITT.
1998-07-05 02:12:22 +00:00
jonathan
3751946b97
defopt INET, NETATALK.
1998-07-05 00:51:04 +00:00
jonathan
466e784ee1
defopt DDB.
1998-07-04 22:18:13 +00:00
hubertf
a18ed5d074
add missing ";" for non-UVM systems
1998-07-03 21:32:43 +00:00
tv
b457cc5098
For now, do not build just "netbsd" as the root device probe cannot
...
distinguish wd0, cs0, etc. Build only netbsd_netboot and netbsd_wdboot.
1998-07-02 23:39:22 +00:00
augustss
5aa0920e7d
Make it compile again.
1998-06-29 13:53:00 +00:00
thorpej
9609289966
When loading a DMA map, check that the pages in the transfer are within
...
the tag's DMA range(s), if ranges are specified.
1998-06-28 07:32:32 +00:00
thorpej
46320bb017
Clean up the bus space function namespace somewhat; make sure they don't
...
collide with function names used in other parts of the kernel.
1998-06-28 07:27:51 +00:00
thorpej
3497ab9a8c
Add a pointer to an array of DMA ranges. DMA buffers must lie within
...
a range, or else an error is returned when loading a map. If the ranges
pointer is NULL, no range checks are performed.
1998-06-28 03:22:10 +00:00
thorpej
e3f4206162
Only use DMA_BOUNCE if it is defined.
1998-06-28 00:53:21 +00:00
thorpej
ad9e227ed7
Fix a bunch of printf arguments.
1998-06-27 02:48:24 +00:00
thorpej
a4e8fc45cd
Nuke the _cookie member of the bus_dma_tag_t; it's not used by anything.
1998-06-27 02:16:23 +00:00
thorpej
06f1469055
Really namespace-protect the virtual address in the DMA segment structure.
1998-06-27 02:13:39 +00:00
thorpej
06c15a479d
Remove some #if 0'd i386-specific code that was inherited when this
...
was copied from the i386 port.
1998-06-27 02:11:19 +00:00
thorpej
9da799cc58
Normalize the real/avail mem printfs, and make them consistent wrt.
...
UVM vs. Mach VM.
1998-06-26 22:42:37 +00:00
thorpej
eb7e67ad13
If the IPL masks are debugging information, then only print them #ifdef DEBUG.
1998-06-26 22:40:59 +00:00
lukem
bd8d501f7e
remove options FIFO; it's now the default
1998-06-26 01:53:43 +00:00
mark
abbf864c5c
Provide a dummy definition of __warn_references macro when __GNUC__ is not
...
defined.
1998-06-25 21:54:35 +00:00
thorpej
971b8956ef
defopt KTRACE
1998-06-25 21:18:11 +00:00
mark
c69d26fdf6
Fix a sub instruction that should be subs. (Bug spotted by Richard Earnshaw)
1998-06-25 17:24:39 +00:00
mark
5c82c19d55
Define cfattach structure for ofbus_root_ca and prototypes for
...
ofbus_match() and ofbus_attach().
1998-06-24 19:44:33 +00:00
mark
a2d7775fa1
Implement a delay() function for OFWGENCFG configurations.
1998-06-24 19:31:59 +00:00
mark
9dba4cd582
Fix bug in last commit regarding the positioning of the added #endif.
1998-06-24 19:31:16 +00:00
mark
3102dd4e2c
Remove definition of cpu_reset_address as it is no longer needed.
1998-06-24 19:27:12 +00:00
mark
adfa28edcf
Disable cpu_reset() on OFW configurations as they will use OF_boot()
...
instead.
1998-06-24 19:22:48 +00:00
mark
a34d0aae74
Cleanup time:
...
Fix code indenting.
Removed a load of unnecessary includes.
Removed unnecessary prototypes and variables.
Removed dead variables debug_flags and cpu_cache.
Removed some unnecessary cache syncs.
Only sync the first 64 bytes after setting up the vectors.
Removed all the boot argument checking code and instead call the
generic ARM boot argument checking code parse_mi_bootargs() in machdep.c
Fixed the ofrootfound() function so that it builds.
1998-06-24 18:50:56 +00:00
mark
7594278206
Cleanup time:
...
Fix code indenting.
Removed a load of unnecessary includes.
Removed unnecessary prototypes and variables.
Removed dead variables debug_flags and cpu_cache.
Removed some unnecessary cache syncs.
Only sync the first 64 bytes after setting up the vectors.
Removed all the boot argument checking code and instead call the
generic ARM boot argument checking code parse_mi_bootargs() in machdep.c
Use the get_bootconf_option() function to check for the shark specific
quiet and noquiet options.
1998-06-24 18:49:12 +00:00
mark
b3354a2d24
Removed unused variable from setstatclockrate().
...
Removed unused static variable statclockirq.
Removed the old commented out irq_claim() code (supplanted by intr_claim())
1998-06-24 18:43:44 +00:00
mark
720b93f1c9
Removed pagetables_start, debug_flags, cpu_cache and cpu_ctrl as these
...
are dead variables.
Removed initialisation of cpu_cache.
Declared process_kernel_args() as static.
1998-06-24 18:41:35 +00:00
mark
398bab14be
Removed pagetables_start as this is a dead variable.
...
Declare process_kernel_args() as static.
1998-06-24 18:40:10 +00:00
mark
86e861d49f
Rename the boot() prototype to cpu_reboot().
...
Remove consinit() and process_kernel_args() prototypes.
1998-06-24 18:37:49 +00:00
mark
9f161ebe94
Remove pagetables_start and the associated memory allocation. L1 page
...
tables are allocated by the pmap code so this allocation is just wasting
memory.
1998-06-24 17:18:09 +00:00
sommerfe
446beb9dc4
defopt COMPAT_386BSD_MBRPART into opt_mbr.h
1998-06-22 21:12:51 +00:00
tv
f7eef89222
Kill no longer necessary CACHE_CLEAN_VM option.
1998-06-21 23:40:12 +00:00
tv
339cefc763
Integrate Mark's CACHE_CLEAN_VM C implementation, taken away from
...
cpufunc_asm.S.
1998-06-21 23:23:40 +00:00
mark
522eff7069
Fix unused variable warning in csCopyTxFrame() when DIAGNOSTIC is not
...
defined.
1998-06-20 20:38:33 +00:00
tv
9018330f63
Make pc0 and ofcons0 mutually exclusive, for now.
1998-06-19 18:29:31 +00:00
tv
ba144108f6
Bring shark includes to mainline and nuke the branch.
1998-06-19 15:55:13 +00:00
mark
490b5a5419
Removed userret_count diagnostic bits as these are outdated.
1998-06-18 22:34:39 +00:00
mark
7d99120c16
Don't build in the ARMFPE by default.
...
Removed a load of irrelevant or redundant options.
Added a couple of extra filesystems (disabled).
1998-06-18 22:32:33 +00:00
tv
ef5c9d214c
Don't configure ofcons by default.
1998-06-18 17:39:17 +00:00
mark
ed346cc16a
Removed the kcopy() function as this is now implemented in bcopyinout.S.
1998-06-17 20:14:07 +00:00
mark
2aab040047
Major overhaul. Rewritten most of this file to optimise copyin() and
...
copyout() for 32 bit aligned addresses. Also copyin() and copyout() now
share the same actual copying code.
Use the same copying code to implement kcopy().
1998-06-17 20:13:38 +00:00
mark
138ccaa418
Rewritten and cleanup the file.
...
Share the string copying code between copyinstr() and copyoutstr().
1998-06-17 20:10:39 +00:00
mark
de3485d454
Merge in SHARK specific bits to initialise the sequoia, rtc and
...
attach the OFW devices.
1998-06-17 19:40:50 +00:00
mark
841b858742
Define interrupt information for SHARK.
1998-06-17 19:36:33 +00:00
mark
a27bae87fb
Define _BootConfig structure for OFW based booting.
1998-06-17 19:35:24 +00:00
mark
c5d3e05292
Implement debugger Openfirmware commands ofboot, ofenter and ofexit.
...
Calculate esym slightly differently on SHARK or OFWGENCFG based
configurations.
1998-06-17 19:33:37 +00:00
mark
27ed02bef1
Implement debugger OFW commands ofboot, ofenter and ofexit.
1998-06-17 19:31:44 +00:00
mark
3d9f37a664
Don't try and dump IRQ mode stack with Generic OFW config.
1998-06-17 19:29:28 +00:00
mark
2c44cea3ba
Added console probe and init functions so serial consoles are supported
...
serial ports via the pioc.
Removed redundant header files.
1998-06-17 00:37:00 +00:00
kleink
1fbd0b3749
GC the unused `physadr' type, which was not able to hold a complete physical
...
address on 2 architectures anyhow. Also, move the definition of the `label_t'
type inside _KERNEL protection, since it is specific to the in-kernel
setjmp()/longjmp() implementations.
1998-06-14 20:09:22 +00:00
tv
254edea7e0
Merge Shark/OFW changes for device configuration.
1998-06-12 23:59:22 +00:00
tv
cb168e274b
Add to mainline.
1998-06-12 23:29:27 +00:00
cgd
651b44e211
Rework the way kernel include files are installed. In the new method,
...
as with user-land programs, include files are installed by each directory
in the tree that has includes to install. (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.) The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change. Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
tv
67856105fa
Merge RiscPC and Shark files; now all machines will make the proper device
...
config files.
1998-06-12 23:21:53 +00:00
tv
49fd1860fe
Add UVM support.
1998-06-12 23:08:52 +00:00
tv
11e9a04748
Add a hack to make the ofisa.o compile using the old MD isadma code, for
...
now.
1998-06-12 21:07:44 +00:00
tv
7ea013ce82
Include "pc.h" and check NPC - allows ofcons to be the system console.
1998-06-10 21:55:30 +00:00
tv
00ede2160e
Change ddb_init() for a.out to provision for kernels which are not booted by
...
the current 'bootblock' method, like the Shark, which preloads and preformats
the symbol table right in the boot code.
1998-06-09 01:57:41 +00:00
tv
5ba723ecf2
Cleanup: move {SWAP,DEV,VNODE}PAGER to std.arm32; required for Mach VM, and
...
happily ignored by UVM.
1998-06-09 01:15:48 +00:00
mark
4c80d03830
Remove several cache invalidation instrcutions from routines like
...
sa110_context_switch() as they are not needed.
1998-06-09 01:02:14 +00:00
tv
46565ac270
Add disksubr_acorn.c as well. These could likely be changed to use kernel
...
options, but this gets the kernel at least to compile, link, and work.
1998-06-09 00:39:47 +00:00
tv
b4511c9330
Add disksubr_mbr.c dependent on `disk'.
1998-06-09 00:31:23 +00:00
tv
8f428e3872
Kill non-NetBSD RCS tags.
1998-06-08 20:23:07 +00:00
mark
0f5f9c0221
Added support for DOS MBRs in addition to filecore boot blocks from
...
Chris Demetriou. Filecore and MBR handling has been split out into
separate files. Still needs some work before this could become MI.
Also fix the way in which arm32 filecore checksums are calculated so
that sectors filled with the same byte will not pass the checksum.
1998-06-08 20:21:17 +00:00
tv
f19cf41458
Add rcsID.
1998-06-08 18:18:58 +00:00
tv
ae1b70e048
ISA shark-dependent code. Missed this file on last commit.
1998-06-08 18:18:11 +00:00
tv
ee69a0b0a0
Add ISA support needed for Shark and the CATS board (CATS isa_machdep not
...
here yet).
1998-06-08 17:49:42 +00:00
mark
c6d1832868
Include all the correct header files to get the prototypes of all the
...
soft net interrupt functions.
Handle NETISR_NATM soft interrupts.
1998-06-04 17:45:50 +00:00
mark
61298c0cbf
Type postmortem_active as an int. (Pointed out by Patrick Welche).
1998-06-04 17:44:18 +00:00
thorpej
2e846b8c1e
Sync w/ i386 port.
1998-06-03 04:20:22 +00:00
mark
2c1cbdae75
Moved delay() from machdep.c to iomd_clock.c as delay will be dependant
...
on the system timers being used.
1998-06-02 21:57:58 +00:00
mark
bdfeab3714
Merge in UVM support from Neil Carson <neil@causality.com>.
1998-06-02 20:41:46 +00:00
mark
0618ed7122
Define the maximum size of the kernel VM data area.
1998-06-02 20:33:01 +00:00
mark
ea702a5130
Switch to MACHINE_NEW_NONCONTIG as the default.
1998-06-02 20:32:18 +00:00
mark
4ee7a131ad
Don't allow the copyin and copyout routines to use bcopy() as this will
...
not work as the stack cannot be unwound if the copy aborts due to a fault.
1998-06-02 19:14:44 +00:00
mark
9a4b24a02a
Simplify the stack filling code when using the STACKCHECKS option.
1998-06-02 14:34:55 +00:00
mark
09a9c016e3
Added Manuel Bouyer's recent i386 _bus_dmamap_load_buffer() patch :-
...
Add handling of DMA boundary barrier in _bus_dmamap_load_buffer(). This
affects all bus_dmamap_load* functions of bus_dma(9).
While I'm there fix a bug where the dm_segs array could be overflowded by one.
1998-06-01 22:47:27 +00:00
thorpej
a7f360c6c9
Specify a non-profiling C rule.
1998-05-31 23:25:41 +00:00
tv
ed42c358fd
Revert. (wdc driver is still MD.)
1998-05-26 01:42:53 +00:00
mark
3a61502673
Initial commit of arm32 dependant PCI structures and type definitions.
1998-05-25 22:09:25 +00:00
mark
0b9fa28940
Initial commit of generic arm32 bus dma support.
1998-05-25 22:01:49 +00:00
kleink
a97fc2f180
If any of _ANSI_SOURCE, _POSIX_C_SOURCE or _XOPEN_SOURCE are defined, don't
...
provide any identifiers other than sig_atomic_t.
1998-05-25 20:59:01 +00:00
tv
6cdddb35ee
Don't duplicate device information: get ISA and ATAPI info (which is the
...
same) from dev/isa/files.isa and dev/ata/files.ata.
1998-05-25 04:32:12 +00:00
mark
073de471d7
Remove M68040 ifdefs from the driver inherited from the initial import
...
of the file from the arch/amiga/dev directory.
Leave reminders though that attention needs to be paid at these points
for when DMA is implemented.
1998-05-24 18:19:29 +00:00
mark
8ef62973c1
Comment out the rp variables as they are not currently used.
...
Removed the register keywords.
In setdisklabel() declare 'i' as an int.
1998-05-24 17:13:30 +00:00
cgd
a2c213c028
fix code so that a 'generic' OFW kernel (which only uses OFW drivers)
...
will again compile. This code needs a bunch of cleanup, and the
"generic OFW kernel" code should probably be split into a different
directory than the code which implements the interface to OFW.
1998-05-22 17:43:10 +00:00
thorpej
6626878e7b
It is no longer necessary for pmap_pinit() and pmap_release() to be
...
pmap interface functions, as NetBSD no longer uses statically allocated
pmaps (except for the kernel pmap, which is special-cased anyhow).
1998-05-19 19:00:11 +00:00
mark
82d14dbeb2
Add MACHINE_NEW_NONCONTIG option.
1998-05-08 23:40:20 +00:00
mark
f7eafd6679
Remove the standard option MACHINE_NONCONTIG.
1998-05-08 23:36:47 +00:00
mark
a76affde1d
Add MACHINE_NEW_NONCONTIG support.
1998-05-08 23:36:08 +00:00
mark
d4a8f4cf29
Commit MACHINE_NEW_NONCONTIG support based on Chuck's conversion notes.
1998-05-08 23:34:00 +00:00
mark
7de24625c1
The reset address is no longer fixed so don't refer to it as 0x00000000.
1998-05-08 23:25:31 +00:00
mark
a13ca3b4d2
Don't declare variables as register ...
...
Don't cast pointers to u_int for printing, use %p instead.
Minor restructure of curproc == NULL test in ast().
1998-05-08 23:24:08 +00:00
mark
51ce82ec50
Don't include machine/vmparam.h.
1998-05-08 23:21:31 +00:00
kleink
687ea7404c
Fix some arithmetics lossage on typeless pointers.
1998-05-08 16:55:15 +00:00
kleink
aa36ad1f55
Fix some arithmetics lossage on typeless pointers.
1998-05-07 21:01:41 +00:00
cgd
dd0142f10f
add NetBSD RCS IDs and delete other RCS keywords, per the standard style.
1998-05-01 21:18:39 +00:00
cgd
c0c21ff62f
clean up some warnings, adapt to the changed state of the world.
1998-05-01 21:14:46 +00:00
cgd
5317573641
adapt to OFW code changes
1998-05-01 21:13:53 +00:00
cgd
2fb206b0cf
clean up, get it closer to compiling. (Note that this change includes
...
a change marked XXX, where gcc -Wall pointed out a bit of the original
code that looked wrong. The jury's still out on whether or not it was
really wrong, but it looked _very_ suspicious.)
1998-05-01 21:13:02 +00:00
cgd
77e035bc38
kill bogus file
1998-05-01 21:11:34 +00:00
cgd
72797e4632
Import sys/arch/arm32/{shark,ofw} bits of the Digital Network Appliance
...
Reference Design NetBSD source code, obtained from the pages under
http://www.research.digital.com/SRC/iag . Some of this code (badly)
needs to be cleaned up, and as-is it doesn't compile. However, getting
it in the tree is a start.
1998-05-01 21:08:55 +00:00
mark
c1a332e5f7
Use a separate variable to indicate whether the fault is from USR mode
...
or not rather than orring in a USER bit into the fault code variable.
This simplifies the fault switch statement and some of the addition
checks that are made of the fault code.
Move the printing of data abort information out into a separate function
rather then duplicating a lot of similar printf() statements.
Removed the fault_code variables from the prefetch abort handler as it
is not actually used for anything.
1998-05-01 15:44:51 +00:00
mark
782906b214
Remove inclusion of sys/device.h
1998-05-01 15:36:30 +00:00
mark
865f2563e1
Remove inclusion of sys/device.h
...
Declare exception_errors as const.
1998-05-01 15:35:43 +00:00
mark
07a0c680a7
Define the cpu_softc structure here.
...
Include armfpe.h to get the prototype for initialise_arm_fpe().
1998-05-01 15:33:42 +00:00
mark
cce74dbcca
Remove the definition of the cpu_softc structure from here.
1998-05-01 15:32:55 +00:00
mark
94a7e32beb
Edited and added various comments.
1998-05-01 15:30:54 +00:00
mark
7c867905c5
Major overhaul of pagetable handing.
...
Page tables no longer occupy space in the processes vm_map. This
means that page tables can now be allocated from pmap_enter() when the
first entry is made in the page table rather than relying on taking
a section fault and faulting in a page table. This also lowers
the overheads in creating and deleting page tables and simplfies
cpu_fork().
A result of this change is that problems with mapping zero page and
an associated pagetable when execing from a shared vm_map disappear
fixing PR5178.
1998-04-30 21:22:00 +00:00
mark
773c8defa1
Removed several un-necessary includes.
1998-04-30 21:01:30 +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
mark
7782adb98e
Use r12 as a temporary register in setrunqueue() and remrunqueue() as it
...
does not need to be preserved across function calls. This means the use
of r4 can be eliminated thus saving a stack push and pop for r4.
1998-04-20 17:27:30 +00:00
mark
ad8c2a5654
Fix the indenting of the comments in this file.
1998-04-19 23:37:22 +00:00
mark
7c57681a0b
Guard several more abort information printf() calls with the
...
verbose_faults variable in the prefetch abort handler.
Remove a lurking spltty() just before a panic in the prefetch abort
handler.
1998-04-19 23:25:49 +00:00
mark
05a669badb
General file cleanup. Grouped all the un-handled fault cases together
...
to share one panic string. Removed a number of postmortem() calls.
Use verbose_faults variable to dictate the printing of fault information.
In several address validation checks, reorder the conditions for more
optimial checking.
1998-04-19 23:18:45 +00:00
mark
98576781d3
Remove conditional compilation from around the exception handler
...
interrupt enables.
Remove the counting of the use of pcb_onfault.
Removed CONTINUE_AFTER_SVC_PREFETCH and associated code.
1998-04-19 22:45:39 +00:00
mark
66d1783927
Remove conditional compilation from around the exception handler
...
interrupt enables.
1998-04-19 22:43:27 +00:00
mark
464caff246
Since the kshell stuff is no longer ever built into the kernel,
...
the last possible hooks having been removed from rpc_machdep.c
and its use has been deprecated for a long long time lets finally
axe it.
1998-04-19 04:48:31 +00:00
mark
569be6d488
Change definitions of MCOUNT_ENTER and MCOUNT_EXIT to block interrupts
...
via the CPSR rather than via splhigh() due to the overheads involved
in using splhigh()/splx(). (From Chris Demetriou).
1998-04-19 04:16:25 +00:00
mark
fcc1093bee
Define bus_space_map flags BUS_SPACE_MAP_CACHEABLE and BUS_SPACE_MAP_LINEAR.
...
Comment arm32_bus_dma_segment structure members.
Remove the _dm_loadlen field from the arm32_bus_dmamap structure.
1998-04-19 04:13:24 +00:00
mark
47ec8f3afc
Validate the source address in db_read_bytes() to avoid faulting when
...
reading invalid addresses.
1998-04-19 04:05:24 +00:00
mark
9bbde6c952
Overhaulled cpu_reboot(). Junked all the boot action garbage and just use
...
howto to dictate what operations to perform.
Removed support for calling the deprecated kshell stuff.
Cleaned up a few bits of dead code and renamed rpc_sa110_kickstart() to
rpc_sa110_cc_setup().
1998-04-19 03:59:19 +00:00
mark
33b4b52949
Define the prototypes for rtc_read() and rtc_write() here rather than
...
in machine/rtc.h
Update the rtc_read() and rtc_write() functions to take a private pointer
as the first argument (currently unused).
1998-04-19 03:55:44 +00:00
mark
1f5455aaaf
Update the softc to hold the rtc_{write,write}() argument and update
...
the function pointer prototypes.
Pass the rtc_arg field as the first parameter when calling the todclock
rtc_{read,write} function pointers.
1998-04-19 03:54:24 +00:00
mark
c4f9d5c4b0
Add a rtc argument field to the todclock_attach_args structure.
...
Update the ta_rtc_{read,write}() functions in the todclock_attach_args
structure to take an argument attach time defined argument field as the
first argument.
1998-04-19 03:51:44 +00:00
mark
15901d1be3
Remove rtc_read() and rtc_write prototypes.
1998-04-19 03:49:17 +00:00
mark
effb702da4
Don't explicitly call the debugger on a reset exception. Just print
...
trap frame address and panic.
1998-04-19 03:41:14 +00:00
mark
f9042ff05b
Guard the PS/2 mouse attachment and ARM7500 IOC check with the
...
CPU_ARM7500 macro.
1998-04-17 18:44:09 +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
cgd
edcb9b60e1
current_spl_level should be initialized to _SPL_HIGH.
1998-04-10 20:29:02 +00:00
mark
af29a19dd0
Fix the interrupt number for the PS/2 mouse port on the ARM7500
...
(from David Forbes).
1998-04-10 06:54:30 +00:00
mark
447623df53
Correct the values of IOMD_MSDATA and IOMD_MSCR as they are 4 times too
...
big. Spotted by David Forbes.
1998-04-10 06:53:08 +00:00
mark
3d26c2dbf1
In cpu_fork() if the vmspace is shared don't fiddle with it. e.g. don't
...
try and replace the zero page pagetable and mapping.
1998-04-03 01:58:40 +00:00
mark
d6fb052cdd
Setup proc0.p_addr much earlier on in the startup.
1998-04-03 01:56:34 +00:00
mark
27af7137f4
Overhaulled cpu_reboot(). Junked all the boot action garbage and just use
...
howto to dictate what operations to perform.
Removed support for calling the deprecated kshell stuff.
1998-04-02 02:01:13 +00:00
mark
ac4c80ec10
Include machine/asm.h and use the ENTRY() macro for all function entry
...
points.
1998-04-01 23:14:21 +00:00
mark
90a05fec98
Tidied up various comments. Use the function entry macros from asm.h for
...
all entry points and don't bother profiling cpu_reset().
Flush the I and D TLB's after turning the MMU and cache off in cpu_reset().
1998-04-01 23:12:32 +00:00
mark
b2286e384a
Include machine/asm.h and use the macros from there for declaring
...
the function entry points.
Removed some redundant .req statements.
1998-04-01 23:09:06 +00:00
mark
a877b68db5
Don't include sys/device.h here.
1998-04-01 23:05:28 +00:00
mark
f0393b3819
Remove a chunk of dead comments as they appears in disassem.c where
...
they make a lot more sense.
1998-04-01 23:04:16 +00:00
mark
4a96466f61
Remove redundant .req assembler statements.
1998-04-01 23:02:32 +00:00
mark
eb81ac0bbc
Remove a load of redundant .req statements.
1998-04-01 23:00:13 +00:00
mark
ae5c857ba4
Remove redundant .req statements.
...
Make various entry points non-profiling.
1998-04-01 22:59:25 +00:00
mark
fd18f1a45b
Remove some redundant .req statements.
1998-04-01 22:55:45 +00:00
mark
077c15ab4d
Remove some redundant .req statements.
...
Make various entry points non-profiling.
1998-04-01 22:55:05 +00:00
mark
268d889d0d
Make the floppy_read_fiq and floppy_write_fiq entry points non-profiling.
1998-04-01 22:53:32 +00:00
mark
7f98e08105
Remove some redundant .req statements.
1998-04-01 22:52:24 +00:00