eeh
5783dd5873
instance-to-path works on instances not nodes.
2001-08-31 17:10:54 +00:00
eeh
b14bf2ceef
Fix incorrect parentheses.
2001-08-28 14:51:28 +00:00
eeh
1007ef1595
Fix backwards compare. (From Jason Wright)
2001-08-23 16:14:12 +00:00
eeh
4b569fc269
Fix bug involving small, non-contiguous dma segments.
...
From Manuel Bouyer.
2001-08-06 22:02:58 +00:00
eeh
7950c7dffd
Don't match ebus nodes not called "ebus" like the ones on hme cards.
2001-07-25 03:49:54 +00:00
eeh
64a9c222c0
Use OF_getprop instead of getprop.
2001-07-24 19:27:10 +00:00
eeh
cc6781a464
Get rid of a bunch of obsolete files.
2001-07-23 18:21:26 +00:00
eeh
1fead733d9
PCI overhaul.
2001-07-20 00:07:12 +00:00
eeh
7e8421fa5b
Also attach apropriate devices named "serial".
2001-07-19 23:55:50 +00:00
wiz
cc0b68092e
Correct various misspellings of 'transfer' and inflected forms.
2001-07-08 18:06:42 +00:00
eeh
55e676fb15
Remove another unused file.
2001-06-25 23:07:03 +00:00
eeh
47b3df529a
Remove unused file.
2001-06-25 21:28:03 +00:00
simonb
e5bd00e48d
For ports that wire up pciide in compatibility mode, have
...
them define __HAVE_PCIIDE_MACHDEP_COMPAT_INTR_ESTABLISH
in pci_machdep.h and pciide_map_compat_intr() only calls
pciide_machdep_compat_intr_establish() if that preprocessor
define exists.
Ports that don't need to do this no longer need to supply a
dummy function.
2001-06-08 04:48:54 +00:00
mrg
46762d3560
fix lint exposed by GCC 3.0 20010604 (prerelease).
2001-06-04 20:56:51 +00:00
lukem
d84d2c6c85
add missing #include "opt_kgdb.h"
2001-05-30 15:24:23 +00:00
chs
11a9651c8f
replace vm_page_t with struct vm_page *.
2001-05-26 21:27:10 +00:00
mrg
2f3c8dae5a
correct some comments. <80 char debug statements.
2001-05-18 22:01:57 +00:00
mrg
f42ff7ccae
minor cleanups.
2001-05-18 22:01:19 +00:00
mrg
a9f7a4e194
move the sbus IOMMU work around into the sbus code, so that the psycho
...
doesn't have to lose a page.
2001-05-18 21:35:23 +00:00
mrg
0996d006da
do not force ebus interrupts to have bit 0x20 set.
2001-05-18 19:17:50 +00:00
scw
2963ff5c58
Add `l_poll' to `struct linesw' and provide an xxxpoll() entry point
...
in each tty driver to indirect through it.
This allows tty line-disciplines to handle poll(2) system calls.
2001-05-02 10:32:08 +00:00
thorpej
1c3a62e066
Sprinkle pmap_update() calls after calls to:
...
- pmap_enter()
- pmap_remove()
- pmap_protect()
- pmap_kenter_pa()
- pmap_kremove()
as described in pmap(9).
These calls are relatively conservative. It may be possible to
optimize these a little more.
2001-04-24 04:30:50 +00:00
mrg
af58b235e0
adapt to systems with out interrupt-map & interrupt-map-mask properties.
2001-03-21 01:33:47 +00:00
hubertf
cda43785c6
Add comment on what 'overtemp' is about. OK'd by eeh.
2001-03-16 10:47:25 +00:00
eeh
b612a766a7
Handle overtemp intr.
2001-03-14 00:52:19 +00:00
thorpej
85868e3c09
Pay attention to BUS_DMA_STREAMING when builing an IOMMU TTE.
2001-03-09 20:05:39 +00:00
mrg
f1d2503dc5
rework pci_attach_hook() to just deal with the INO, not the full
...
interrupt number. properly find interrupts for the E250. modify
pci_intr_map() accordingly. retire psycho_intr_map(). deal with
INO values upto 0x3f, not upto 0x32. restructure sabre_init() and
psycho_init() to be more similar, and display each psycho's IGN.
psycho_intr_establish() deals with INO upto 0x3f, values from 0x32
and higher get 0 for IPL.
tested on E250 & U5.
2001-03-06 08:09:16 +00:00
mrg
7a1cb1dbc2
use pci_bus_devorder() and pci_dev_funcorder()
2001-03-02 06:34:06 +00:00
mrg
c452d0b725
adjust some comments to reality.
2001-02-28 15:21:08 +00:00
eeh
85cffb544d
Improve legibility and iommu_dvmamap_sync().
2001-02-24 18:49:06 +00:00
eeh
3daccde8d4
Print out more useful data if there are interrupt issues.
2001-02-11 00:02:58 +00:00
eeh
2411eab448
Fix D$ aliasing issues in a DIAGNOSTIC check.
2001-02-06 19:04:57 +00:00
martin
a7206004fc
Faster error handling for iommu_dmamap_load_raw; avoid loading the map
...
and unloading on error when we clearly can't get out without an error.
2001-01-28 01:26:57 +00:00
eeh
6c3bf28ffd
Fix dvma problem caused by previous. Seems like the dvma segment calculation
...
in iommu_dmamap_unload() was not quite right.
2001-01-27 03:40:39 +00:00
martin
f4eec8f31f
iommu_dvmamap_load_raw: add a check for creating maps larger than
...
expected by the creator of the dma map and fail apropriately. This
makes the syssrc/dev/pci/if_vr.c driver work.
2001-01-25 21:41:10 +00:00
martin
97b57e69cc
Make bus_dmamap_load_mbuf and bus_dmamap_load_uio use independend
...
segment lists for their mapping; make iommu_dmamap_unload deal with
this type of maps.
Coded by Eduardo, tested (and minimaly tweaked) by me.
2001-01-23 20:31:28 +00:00
martin
84af4fa114
Enable IO space mapping by default.
...
Fixes PR 11940.
2001-01-19 21:25:19 +00:00
martin
6695531e85
Fix format warnings to make it compile again.
2001-01-14 09:43:33 +00:00
pk
301b806db0
ebus_find_node(): plug memory leak; make debug output meaningfuller.
2001-01-08 22:15:47 +00:00
sommerfeld
851de295eb
Change pci_intr_map to get interrupt source information from a "struct
...
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".
This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.
Tested on alpha and i386; welcome to 1.5Q
2000-12-28 22:59:06 +00:00
mrg
43251365b4
com_attach_subr() prints the newline for us.
2000-12-20 16:19:09 +00:00
mrg
703ec39a02
fix warnings in DEBUG & DIAGNSTIC code.
2000-12-06 01:47:49 +00:00
fvdl
95ed1f82c4
Make gcc like a cast.
2000-12-04 20:29:34 +00:00
fvdl
2ccdc61f62
Avoid (safe) cast warnings.
2000-12-04 20:19:49 +00:00
fvdl
2fb588e51d
Warning police. Mostly useless format warnings. Switch Makefile for
...
kernel compiles to the warning flags that other ports also use.
2000-12-04 16:01:18 +00:00
fvdl
a21f36eeb2
Make softintr_establish prototype match other ports, avoiding compile
...
warnings.
2000-12-03 14:49:50 +00:00
mrg
0485f611f1
remove dead debugging code.
2000-11-18 03:49:38 +00:00
eeh
efaf3dbb74
Remove unnecessary header file that causes linker issues.
2000-11-10 17:47:55 +00:00
mrg
3ea4c67b6b
remove unused variable
2000-11-10 11:57:26 +00:00
eeh
17b69d1833
Attach the sunkbd line discipline to zstty.
2000-11-09 00:02:54 +00:00
eeh
052afce2a5
Use new MI console magic framework.
2000-11-08 23:40:31 +00:00
eeh
2b8da88d55
Remove debug printfs.
2000-11-08 23:24:12 +00:00
eeh
23a0c49039
Adapt to the new line discipline scheme.
2000-11-02 00:21:03 +00:00
eeh
b19423f823
Pass along bus frequency.
2000-11-01 06:19:59 +00:00
mrg
82d7f3e331
#include <machine/sparc64.h> for prom_printf() prototype.
2000-10-20 05:32:35 +00:00
mrg
f39b5cf92e
wrap long lines.
2000-10-19 12:25:04 +00:00
mrg
d66f9f3321
add a cast to fix a warning.
2000-10-19 05:38:35 +00:00
eeh
3a2599ebec
Don't take ref/mod faults on DMA segments mapped in to the kernel.
2000-09-28 15:28:43 +00:00
eeh
a5a8082482
Use prom_printf() for debugging instead of printf() since the console may
...
not be functional.
2000-09-28 15:23:06 +00:00
eeh
805ffd07cc
Sun Keyboard/Mouse line discipline support.
2000-09-21 23:14:40 +00:00
eeh
ac3f296768
Guts of the Sun Keyboard/Mouse line disciplines.
...
N.B. They don't recognize L1-A yet.
2000-09-21 22:25:08 +00:00
eeh
a0f2ab32f7
Make 64-bit clean.
2000-08-26 16:02:06 +00:00
nathanw
5127aa189d
In fdioctl(), allocate fd_formb dynamically when needed, rather than on
...
the stack, and remove the no-longer-necessary PHOLD()/PRELE() calls
in fdformat().
(This eliminates 1/3 of the instances of PHOLD()/PRELE() in the kernel code.)
XXX We still have too many mostly-redundant floppy drivers.
2000-08-24 20:04:28 +00:00
pk
194a6c2d97
remove pfourreg.h.
2000-08-23 12:08:16 +00:00
pk
408d2f01d0
Brooktree DAC support now lives in sys/dev/sun.
2000-08-23 10:08:48 +00:00
pk
837ef2bae6
This driver is now in sys/dev/sbus.
2000-08-23 10:07:46 +00:00
pk
aa81eb0f8b
This file is now in sys/dev/sun.
2000-08-23 10:07:25 +00:00
pk
c85ada8053
These drivers are now in sys/dev/sun
2000-08-23 10:05:46 +00:00
pk
317a570728
These devices will never be found on sun4u machines.
2000-08-22 21:43:35 +00:00
eeh
aeb88321db
Call the parent bus dvmamap_unload function to clear the cache rather
...
than do it ourselves.
2000-08-01 00:22:41 +00:00
mrg
a254dae933
ebus sc_is is a pointer now, already.
2000-07-27 14:17:10 +00:00
pk
2079f86890
On-board devices on psycho machines seem to have the `interrupt' property
...
in the parent bus format (i.e. an INO) rather than being represented as
an PCI interrupt line. Provide a hack to work around this in pci_attach_hook().
2000-07-26 17:46:56 +00:00
pk
34270e85bd
Use probeget() in pci_config_read() for the psycho, to avoid bus
...
faults when probing PCI space.
2000-07-18 11:37:31 +00:00
pk
073e24cd1b
Set up register bank sharing bwteen psycho A & B based on matching
...
physical addresses. Allocate IOMMU state separately and refer to it
from both psycho_softc's.
2000-07-18 11:35:03 +00:00
pk
9de310aebe
Use per-PBM control/status register addresses provided by the PROM.
...
Print version/implementation info.
2000-07-14 15:13:35 +00:00
pk
04fe9636ba
Provide details on the `psy_csr' register.
2000-07-14 15:09:51 +00:00
pk
8258c0e780
Fix padding in struct pci_ctl.
2000-07-14 13:17:12 +00:00
pk
7e8f67ad97
No need to fetch the psycho's own registers as thet are already passed
...
down from the parent bus. Also account for the difference in `reg'
properties in psycho vs sabre chips.
2000-07-12 21:49:44 +00:00
pk
f56554a578
If there is no "interrupt-map" property on the ebus node, assume the
...
child "interrupt" properties are already in a format suitable for
the parent bus.
2000-07-12 21:07:36 +00:00
eeh
f10d7699fc
Break into debugger by typing `+++++',
2000-07-10 20:24:23 +00:00
eeh
048f1387db
Function signature for bus_intr_establish() changed.
2000-07-10 01:11:14 +00:00
eeh
e5cd515b89
Upgrate interrupt handling:
...
1) use interrupt vectors for specific zs chips rather than polling
all of them.
2) use softintr_schedule() and schedule it for a particular device
rather than poll all devices.
2000-07-09 21:58:43 +00:00
eeh
f43ab74a43
Shuffle around some fields to waste less space on LP64.
2000-07-09 21:55:24 +00:00
pk
406e0f779f
Add a `device class' interrupt level argument (from machine/intr.h)
...
to bus_interrupt_establish().
It's currently only used in sparc64/dev/psycho.c to assign a CPU interrupt
level to devices in PCI slots.
2000-07-09 20:57:41 +00:00
mrg
b91804af6c
split up debug flags so i can turn off some of them
2000-07-07 13:10:34 +00:00
mrg
4b21f66d57
work around a bug passing arguments to iommu_dvma_load_raw()
2000-07-07 12:53:29 +00:00
eeh
3f2289a3d7
Handle bus_dma aligment properly.
2000-07-07 02:50:19 +00:00
pk
f6d8b8e963
We want to index the PCI `interrupt clear' registers with the Interrupt
...
Number Offset. (this stuff needs a serious cleanup).
2000-07-05 12:11:59 +00:00
eeh
58c36586cd
Use the same IPLs as everyone else.
2000-07-03 17:42:37 +00:00
mrg
585f7645bf
iommu_dvmamap_load*(), pass an alignment constraint, as well as
...
EX_BOUNDZERO, to extent_alloc(). this fixes problems with it
(extent_alloc()) returning incorrect values, when the start of
the extent is not aligned as strongly as the requested area..
raw access to ide disks now works.
2000-07-02 14:00:38 +00:00
mrg
4d14e81c0b
remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h>
2000-06-29 07:37:53 +00:00
mrg
2f159a1bac
remove/move more mach vm header files:
...
<vm/pglist.h> -> <uvm/uvm_pglist.h>
<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
<vm/vm_object.h> -> nothing
<vm/vm_pager.h> -> into <uvm/uvm_pager.h>
also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
simonb
889c658b5b
Change the kernel mmap interface so that the offset to map is an
...
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes. Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".
Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
eeh
2e1e35d58e
Enable interrupts.
2000-06-24 23:27:23 +00:00
eeh
6c5d2dbbac
With these changes the kernel seems almost stable again.
2000-06-24 20:48:36 +00:00
eeh
8e1fd2e3c6
Remove a couple of references to vaddrs.h that slipped through.
2000-06-24 16:51:34 +00:00
eeh
be308420d4
Get rid of vaddrs.h.
2000-06-24 04:20:58 +00:00
eeh
d24721788a
Correct calculation of length for dma segments in iommu_dmamap_load().
2000-06-22 18:18:19 +00:00
eeh
245619bad4
Have separate data and text segments, make text read-only.
2000-06-19 23:30:32 +00:00
eeh
4ffba8be2a
Fix uninitialized pointer bug.
2000-06-19 22:29:15 +00:00