ross
6e6f663204
Rewrite of interrupt dispatch logic. Add ctags(1) keys for *a12*.h files.
1998-03-02 07:03:20 +00:00
ross
13aeff8570
Fix attachment message.
1998-03-02 06:59:38 +00:00
ross
1ada245647
Support attachment of xb and a12dc, define most of the remaining
...
core logic register fields.
1998-03-02 06:56:16 +00:00
ross
469f9b6126
Clean up attachment code and prototypes.
1998-03-02 06:53:34 +00:00
thorpej
58509e699f
Add support for UVM.
1998-02-24 07:38:01 +00:00
thorpej
314f40f8d8
We can't count on the CIA revision register telling us if we're a 21171
...
or 21172, so make the chip/revsion output a little more sane.
1998-02-12 20:43:45 +00:00
thorpej
612aea038c
Use the common _bus_dmamap_sync() as the _dmamap_sync method in the
...
bus_dma_tag_t.
1998-02-04 07:37:28 +00:00
ross
6270ed1711
Add the A12 fast ethernet controller, an if_de.c hacked (prior to
...
bus_dma's appearance in the tree) to support sram bounce buffers.
When a busified if_de.c appears, this module can join awd.c at the
end of that long walk on a short pier.
1998-01-31 01:43:40 +00:00
ross
12f93343cd
Add basic platform support for NetBSD on the Avalon A12. I'm running this
...
CVS commit on one right now...
1998-01-29 21:42:50 +00:00
thorpej
8df306036a
Initialize s/g DMA registers in the same order as the CIA chipset's:
...
(1) window base
(2) window mask
(3) translation base
1998-01-17 22:46:55 +00:00
thorpej
3366b987d0
Put SGMAP-related stuff in the DMA map structure directly, rather than
...
indirecting through a pointer.
1998-01-17 21:53:52 +00:00
thorpej
63db8935a6
Fix initialization of DMA window 0:
...
- Make sure the page table is aligned to at least 32k.
- Don't consider the MEMCS signal when checking for a window hit.
1998-01-17 03:43:59 +00:00
thorpej
9554b5a243
Update for "minptalign" argument to alpha_sgmap_init().
1998-01-17 03:40:32 +00:00
thorpej
399f3639cf
Don't assume that we'll be using direct-mapped DMA for PCI.
1998-01-17 03:39:51 +00:00
thorpej
5419debcb7
Adjust for config changes.
1998-01-12 10:21:02 +00:00
thorpej
023044a749
Clean up printing of chipset revision/capabilities.
1997-10-27 01:08:42 +00:00
thorpej
611012d836
Make the copy_region methods do overlapping copies properly. Fixes
...
port-alpha/4216 (Chris Demetriou).
1997-10-25 01:21:57 +00:00
cjs
c44bfc9eae
Make compile without DIAGNOSTIC set.
1997-10-14 06:22:02 +00:00
thorpej
0c2efd7025
Add a "scrollskip" member to wscons_emulfuncs (XXX even though it's not
...
a function) which specifies how many lines will be skipped when scrolling
up when the bottom of the screen is reached. Dumb framebuffers skip 10
lines (as before) because the copies are s ... l ... o ... w, but it's
silly to skip 10 lines on VGA, since the copies are much faster, so we
only skip one in that case.
1997-09-25 01:31:53 +00:00
thorpej
15e10104d5
Define the BWX-capable regions of the CIA chipset's address space (mem,
...
i/o, pci config space mode 0, pci config space mode 1) and the CIA
REV and CNFG CSRs.
1997-09-17 01:35:34 +00:00
thorpej
879c4c5cf4
If the CIA revision is >= 2, read the CIA configuration register, and
...
remember its contents. Print out a bit of information about the chip,
including whether or not it supports the EV56 BWX instructions.
1997-09-17 01:34:18 +00:00
thorpej
37b8edbeac
In addition to MAS_ABT, check TAR_ABT when doing configuration space
...
reads. This is necessary because of newer AlphaStation firmware doing
the Wrong Thing with target aborts behind PCI-PCI bridges, much like they
do the Wrong Thing with master aborts. Reported by Matthias Drochner.
1997-09-15 23:31:15 +00:00
thorpej
12f6c5aba1
Make sure to clear MAS_ABT if we received one.
1997-09-15 23:01:29 +00:00
thorpej
3c3c6a3b31
Use the symbolic name for "received master abort".
1997-09-15 22:35:54 +00:00
thorpej
8ff22715e8
Define bits in the CIA_ERR register.
1997-09-15 22:34:38 +00:00
thorpej
f784e8dc15
Apparently, new AlphaStation 500/600 firmware has the same problem with
...
PCI master aborts as eb164 firmware, so use the same workaround mechanism
on all system types (clear error register's master abort bit, and check
it after accessing configuration space), not just eb164's.
This also fixes a bug on eb164's - when making the Alpha port compile
again, I made an error that caused this to not be used on eb164 systems,
either. Thanks to Matt Jacob for pointing out this goof.
1997-09-13 05:58:07 +00:00
thorpej
ed2ec4869c
Update for Chris Demetriou's changes made to the bus.h interface:
...
- bus_space_copy -> bus_space_copy_region (for consistency)
- "cacheable" argument becomes a "flags" argument instead, with
BUS_SPACE_MAP_CACHEABLE and BUS_SPACE_MAP_LINEAR flags currently
defined.
1997-09-06 05:44:07 +00:00
thorpej
1aa35e94d4
s/BUS_BARRIER/BUS_SPACE_BARRIER/g
1997-09-06 05:21:14 +00:00
thorpej
2ecccdc05f
Define Status 0 and Status 1 registers.
1997-09-05 02:14:31 +00:00
thorpej
f203067ae3
Adjust for changes to bus space tag initialization.
1997-09-02 20:10:28 +00:00
thorpej
a71cecbec3
Fix a typo.
1997-09-02 20:08:02 +00:00
thorpej
991f4ebc72
cia_bus_ -> cia_swiz_bus_
1997-09-02 20:07:20 +00:00
thorpej
80e3db443f
Apply a change made to other PCI chipsets:
...
don't expect/provide pci_decompose_tag to be a MI, public function. It
wasn't intended to be to begin with, and uses of it (e.g. the one in the
'de' driver) are quite likely to be incorrect.
1997-09-02 20:05:28 +00:00
thorpej
3735c7d1d7
Fix a think-o.
1997-09-02 19:39:15 +00:00
thorpej
529d790161
Pull in DEC_AXPPCI_33 option.
1997-09-02 13:25:36 +00:00
thorpej
cb32cf1ece
Pull in DEC_EB164 and DEC_KN20AA options.
1997-09-02 13:24:48 +00:00
thorpej
b57ee951d0
Pull in DEC_2100_A50 and DEC_EB64PLUS options.
1997-09-02 13:23:56 +00:00
thorpej
693b3e7262
Nuke the idea of <machine/options.h>. It completely defeats the purpose
...
of fine-grain option dependencies.
1997-09-02 13:17:47 +00:00
thorpej
e234ed15b6
Fix oversight in a previous commit.
1997-09-02 12:54:27 +00:00
thorpej
375ad27ed8
- Garbage-collect all DMA-related initialization, calling a separate
...
*_dma_init() function instead.
- Pass the appropriate bus dma tag to children.
1997-09-02 12:51:20 +00:00
thorpej
3ac7ac6e63
Garbage-collect.
1997-09-02 12:43:22 +00:00
thorpej
aa7a2876e6
Treat bus space tags more like pci chipset tags and bus dma tags: allocate
...
them statically within a chipset's state structure, and pass them to
the *_bus_{io,mem}_init() functions.
1997-09-02 12:40:18 +00:00
thorpej
fd01db8b74
Use more complete #include directives when pulling in the chipdep
...
functions.
1997-09-02 11:09:51 +00:00
thorpej
9199b6645b
Clean up RCS IDs.
1997-09-02 10:56:52 +00:00
thorpej
d450130943
Adjust for new names for the PCI i/o and mem swizzle-style access
...
function files.
1997-09-02 10:43:27 +00:00
thorpej
8f286ca7f3
Renamed to pci_swiz_bus_{io,mem}_chipdep.c by repository copy.
1997-09-02 10:39:15 +00:00
thorpej
8998fa1198
Revive these files from the Attic.
1997-09-02 10:26:55 +00:00
mjacob
23d0cae1eb
It helps streaming performance substantially to enable bursts and more up hose
...
packets. It's not clear whether latency will be affected much. It could be.
However, for the time being, getting full rates out of HIPPI or SCSI are what
interests us at NASA, so we'll hew to this bias.
1997-08-16 01:18:30 +00:00
mjacob
92995a3a9f
a minor bit of cleanup
1997-08-16 01:16:33 +00:00
mjacob
ecd1b40ab3
Add some PCIA_CTL defines.
1997-08-16 01:14:32 +00:00
cgd
0bc9a09170
cia_bus_* -> cia_swiz_bus_*
1997-08-12 00:58:01 +00:00
cgd
cfe8f450c7
update these to use the new 'correct' names for functions/constants
...
in bus.h.
1997-07-23 08:05:36 +00:00
cgd
429a941288
don't expect/provide pci_decompose_tag to be a MI, public function. It
...
wasn't intended to be to begin with, and uses of it (e.g. the one in the
'de' driver) are quite likely to be incorrect.
1997-07-19 09:49:39 +00:00
mjacob
ff21c8f511
Turn of 'unclaimed interrupt' messages- we know about them already- we can't
...
really fix this as yet.
1997-06-24 18:08:59 +00:00
thorpej
c8615e2f7c
Add code to decode the PCIA_RESENT register. Display information on
...
the PCIA revision, and whether or not the STD I/O EISA bridge is
present. Decode, but don't bother displaying, the power consumption
information for each PCI slot.
1997-06-08 07:59:20 +00:00
thorpej
183655c71b
Add bit definitions for the PCIA_PRESENT register.
1997-06-08 07:57:40 +00:00
thorpej
8e2e0fdc91
Don't print the hose number here; that's done in kftprint().
1997-06-08 07:03:18 +00:00
thorpej
46b89d7739
Pull thorpej-bus-dma branch into mainline.
1997-06-06 23:54:24 +00:00
cgd
079e0c6bff
make REGVAL macros use volatile pointers
1997-06-03 21:54:02 +00:00
thorpej
4ae176cb0a
Ooops! Not meant for the trunk; these need to be added to the branch!
1997-06-03 07:01:58 +00:00
thorpej
36e7d039c0
Add "typedep" code to deal with both the 32-bit and 64-bit PTE formats
...
found on Alpha workstation and server PCI bridge chipsets.
1997-06-03 07:00:20 +00:00
cgd
e4f0b64254
Adjust gcc -Wuninitialized warning initializers (or add them) so that
...
compliation without DEBUG and/or DIAGNOSTIC happens without errors.
Note that all such initializations in the Alpha port are marked with "XXX
gcc -Wuninitialized". As far as I'm concerned, the one or two times
-Wuninitialized has saved me from problems are worth the (very minor) cost
involved with the initializations, esp. if it's noted why the
initializations are done. This was prompted by PR#3690, from Ted Lemon.
1997-05-31 05:46:03 +00:00
mjacob
ac75d3f4df
clarify a comment slightly.
1997-04-16 22:20:52 +00:00
cgd
c16b14abf3
use pci_mapreg_info rather than pci_mem_find
1997-04-13 22:09:32 +00:00
cgd
7030e14ffa
provide a way for chipsets which can have multiple instances to force
...
a seperate chipset structure to be allocated for each.
1997-04-11 00:57:40 +00:00
cgd
b995d6393d
add eb64+ support, enabled with options DEC_EB64PLUS
1997-04-10 23:24:27 +00:00
cgd
9dc7578cb5
move and split pcs_bus_{mem,io}_common.c, so that:
...
(1) object code can be shared (where the hardware makes that possible), and
(2) so that the file names better describe the systems which use them. (the
pci_swiz* files are for machines whose PCI interfaces require address
"swizzling." Later, there will be probably be other sets, e.g. pci_bwx*
for machines whose chipsets can easily deal with the Alpha BWX extensions
when doing device accesses.)
1997-04-10 23:21:29 +00:00
cgd
cc93b2c4eb
pass memory- and i/o-enabled flags down via the PCI bus and device attach
...
arguments, so that a device can tell if its memory and I/O spaces are
enabled. The flags are cleared, depending on the contents of devices CSR
registers, in the machine-independent PCI bus code.
1997-04-10 23:12:16 +00:00
cgd
519551a681
include RCS IDs for assembler files, disabled with NO_KERNEL_RCSIDS
1997-04-08 00:19:01 +00:00
cgd
fa0c4d6cb1
clean up options.h inclusion slightly
1997-04-07 23:56:39 +00:00
cgd
90789b53dd
by default, provide RCS IDs for NetBSD/alpha kernel files in kernel binaries.
...
This can be disabled (to save a bit of space) with the NO_KERNEL_RCSIDS
options, which is present but commented out in the ALPHA config file.
In ELF-format kernels, these strings are present in the kernel binary but
are not loaded into memory. (In ECOFF-format kernels, there's no easy way
to keep them from being loaded, so they _are_ loaded into memory.)
1997-04-07 23:39:37 +00:00
cgd
80c27e8c49
include machine/options.h
1997-04-07 06:36:24 +00:00
cgd
21598de043
use machine/conf.h instead of sys/conf.h and/or machine/cpuconf.h
1997-04-07 06:09:00 +00:00
cgd
b2f768130d
include machine/options.h
1997-04-07 05:46:48 +00:00
cgd
6093a85bde
clean up eb164 #ifdefs
1997-04-07 05:40:10 +00:00
cgd
8c56b1a0c9
clean up NetBSD RCS ID strings
1997-04-07 05:19:01 +00:00
cgd
a60b90caa9
clean up NetBSD RCS ID strings, include machine/options.h
1997-04-07 02:01:16 +00:00
cgd
51f119d429
clean up NetBSD RCS ID strings
1997-04-07 01:59:51 +00:00
cgd
a145382bd2
clean up some #ifdefs
1997-04-06 23:32:18 +00:00
cgd
4f210d58be
patch from Matt Jacob to enable secondary PCI bus support
1997-03-15 03:15:20 +00:00
cgd
80bf6049dd
fix from Matt Jacob: configuration accesses need PCI Byte enables just
...
like sparse memory accesses do.
1997-03-13 23:59:36 +00:00
cgd
8c689e6477
Copyright notice consistency, per Matthew Jacob.
1997-03-12 21:09:43 +00:00
cgd
ffba332bb5
AlphaServer 8200 & 8400 support, including CPU specific details, TurboLaser
...
system bus support, and KFTxx support. From Matthew Jacob, NASA Ames
Research Center.
1997-03-12 19:19:54 +00:00
cgd
0a500fffa0
update to allow PCI bus interfaces that wish to allocate static
...
extent storage per interface unit (e.g. dwlpx, where there can be multiple
units per machine) to do so. Inspired by discussion with and changes from
Matt Jacob.
1997-03-12 05:24:23 +00:00
cgd
8efa66858c
fix problem compiling if neither PCI VGA nor TGA frame buffers were
...
configured. Pointed out by Matt Jacob.
1997-03-08 19:25:49 +00:00
cgd
e9abc8540f
remove all traces of __BROKEN_INDIRECT_CONFIG (except in shared drivers)
1996-12-08 00:22:08 +00:00
cgd
8b6a32d1c1
update these so they compile whether or not __BROKEN_INDIRECT_CONFIG
...
is defined.
1996-12-05 01:39:27 +00:00
cgd
30b636bd09
implement bus_space_copy_*().
1996-12-02 22:19:32 +00:00
cgd
256cf234a1
move barrier operation definition closer to the top of the bus space ops
...
structure. In the implementations, allow the barrier op to be inlined.
1996-12-02 07:07:18 +00:00
cgd
54ba942f79
implement bus_space_set_multi_* and bus_space_set_region_* operations.
1996-12-02 06:46:49 +00:00
cgd
e6bafb00d6
declare the single-datum read and write methods as inline, so that
...
the multi and region methods can inline them.
1996-12-02 06:12:39 +00:00
cgd
366a586e85
if we're going to do a real match (we are), ahve to special-case console
1996-11-27 01:20:26 +00:00
cgd
97927bdd99
update for new extent management code. Most importantly, we can't call
...
the chipset space init functions multiple times, since that would clobber
extent allocations made between the two calls. Also, deal with the
fact that the APECS and LCA no longer shared common chipset functions.
1996-11-25 03:56:48 +00:00
cgd
77baf28d70
update for new extent management code. Most importantly, we can't call
...
the chipset space init functions multiple times, since that would clobber
extent allocations made between the two calls.
1996-11-25 03:55:46 +00:00
cgd
7a1799b561
update for new extent management code, and for apecs/lca space access fn split
1996-11-25 03:49:36 +00:00
cgd
608a9f3065
update for new extent management code
1996-11-25 03:49:11 +00:00
cgd
6d7b2d82a7
make eb164 interrupts actually work.
1996-11-25 03:47:05 +00:00
cgd
8b50c9af38
reimplement, so that it works with the new extent mapping code.
1996-11-25 03:46:07 +00:00
cgd
fe6262c3c0
split the APECS and LCA bus memory and I/O functions. Most of them still do
...
the same things, but the extent maps have to be managed differently,
since the two chipsets provide different memory and I/O region mapping
possibilities.
1996-11-25 03:42:09 +00:00
cgd
1a45dbd671
update these to set up and use extents to map i/o space, and sparse and
...
dense memory.
1996-11-25 03:37:23 +00:00