Commit Graph

119 Commits

Author SHA1 Message Date
thorpej
727b4699ce The Npwr has a 19-bit timer. Make sure values programmed into
the counter fit.
2002-02-08 23:50:53 +00:00
thorpej
9716a068b6 * No need to specify the console speed anymore; it defaults to the
correct speed if IOP310_TEAMASA_NPWR is defined.
* Just wildcard the "wm" and "siop" devices.
* Comment out raid and ccd for now.
2002-02-08 03:43:41 +00:00
thorpej
66c81951ae Default the console to the correct speed on the Npwr (so that
it doesn't have to be set in the kernel config file).
2002-02-08 03:41:56 +00:00
briggs
efca4d520d Wire the internal devices to the right interrupts on NPWR. 2002-02-08 03:28:24 +00:00
thorpej
987cb42a95 No point in setting the ATU Subsys vendor/dev ID on boards that
can't plug into a PCI host.
2002-02-08 02:31:12 +00:00
thorpej
367a9543a7 The Npwr doesn't have the board_rev/cpld_rev/backplane_det registers,
do don't bother reading them.
2002-02-08 02:30:12 +00:00
briggs
6331bb5b24 Let this compile with the IOP310_TEAMASA_NPWR option. 2002-02-08 01:42:41 +00:00
briggs
07ec97aeba finish conversion from TEAMASA_NPWR to IOP310_TEAMASA_NPWR 2002-02-08 01:41:48 +00:00
thorpej
140c8fe847 Don't hard-code the console address in error messages. 2002-02-07 23:53:01 +00:00
thorpej
2b9837b4d9 Add support for the Team ASA Npwr IOP310-based server appliance. 2002-02-07 21:34:23 +00:00
thorpej
9265cef48c irq_init() -> iq80310_intr_init() 2002-01-30 04:01:36 +00:00
thorpej
48499c673e Pull in <evbarm/ifpga/irqhandler.h> for now. 2002-01-30 04:00:47 +00:00
thorpej
2bc996b0bc New interrupt framework for NetBSD/evbarm, and accompanying new
interrupt code for the IQ80310 board support package.

XXX The Integrator board support package still uses the old-style
arm32 interrupt code, so some compatibility hacks have been added
for it.  When the Integrator uses new-style interrupts, those hacks
can go away.
2002-01-30 03:59:39 +00:00
thorpej
558b6aece0 Move the generic ARM soft interrupt code into a generic place. 2002-01-29 22:54:14 +00:00
jdolecek
6d265bd894 add options PIPE_SOCKETPAIR to individual kernel configs
the option is commented out on everything but kernels I was able
to recognize as INSTALL-like or ones for small memory machines
2002-01-27 13:23:08 +00:00
thorpej
08342df793 Overhaul bus_dmamap_sync for the ARM:
* Track which process (XXX really, vmspace) owns the mapping.  When
  we sync the map, if the mapping doesn't belong to the kernel or to
  the current process (XXX really, vmspace), then no cache fobbing
  is necessary, since the cache is Wb-Inv'd on context switch (XXX need
  to revisit this when we support FCSE).
* Be smarter about which cache operation we do when sync'ing the map:
  - PREREAD -- Invalidate D$ (XXX right now, we actually do Wb-Inv)
  - PREWRITE -- Write-back D$ (note, we do NOT invalidate here)
  - PREREAD|PREWRITE -- Wb-Inv D$

More work is needed here.  In particular, a version for CPUs
with write-through caches should be provided, to eliminate
the write-back steps (which are noops on such CPUs, but skipping
two branches would be nice).
2002-01-25 20:57:41 +00:00
thorpej
4e990d9ccb Overhaul of the ARM cache code. This is mostly a simplification
pass.  Rather than providing a whole slew of cache operations that
aren't ever used, distill them down to some useful primitives:

	icache_sync_all         Synchronize I-cache
	icache_sync_range       Synchronize I-cache range

	dcache_wbinv_all        Write-back and Invalidate D-cache
	dcache_wbinv_range      Write-back and Invalidate D-cache range
	dcache_inv_range        Invalidate D-cache range
	dcache_wb_range         Write-back D-cache range

	idcache_wbinv_all       Write-back and Invalidate D-cache,
				Invalidate I-cache
	idcache_wbinv_range     Write-back and Invalidate D-cache,
				Invalidate I-cache range

Note: This does not yet include an overhaul of the actual asm files
that implement the primitives.  Instead, we've provided a safe default
for each CPU type, and the individual CPU types can now be optimized
one at a time.
2002-01-25 19:19:22 +00:00
thorpej
0404ff83b9 Generic soft interrupt support for the evbarm port. Two caveats:
* This is not currently used by the in-tree evbarm interrupt code.  New
  interrupt code will appear "soon" which makes use of this file.
* This file will probably move to a generic ARM location eventually.
2002-01-24 18:48:03 +00:00
thorpej
c50e5f6562 Don't need pciide_machdep.c 2002-01-24 06:51:30 +00:00
briggs
2341768d92 Two changes for XScale:
1) Add defparam XSCALE_CCLKCFG to define a parameter for the
	   CCLKCFG register.  Default it to '9' on the IQ80310.
	2) Add a sleep call to the xscale CPU function vector (replacing
	   the nullop) which should drop the CPU into "idle" mode when
	   cpu_switch finds nothing on the run queues.
2002-01-24 04:23:18 +00:00
thorpej
ffe44b126d Pull in files.i80200 2002-01-24 03:57:36 +00:00
thorpej
ae267d2bc7 s/CPLD/iq80310/g 2002-01-24 03:34:28 +00:00
thorpej
e594c94727 Some prototype cleanup. 2002-01-20 03:41:47 +00:00
thorpej
d2ee788a90 Document the CONUNIT and CONSPEED config options. 2002-01-18 19:47:38 +00:00
thorpej
d25c8d3cac Allow the console unit to be overridden with the CONUNIT configuration
option.
2002-01-18 19:47:05 +00:00
thorpej
f11f32eed1 Since we build with DDB by default, build with SYMTAB_SPACE by default,
as well.
2002-01-16 23:49:41 +00:00
thorpej
bd500cc450 When mapping the kernel text/data/bss:
* Round the text size up the next page, don't truncate it.
* Pass the kernel L1 table to map_chunk() so that it can try
  to use section mappings.
2002-01-16 23:37:05 +00:00
thorpej
fd8ee60d12 Correct KERNEL_TEXT_BASE. 2002-01-16 23:33:51 +00:00
thorpej
1e0e569ced Remove the "fiqhandler" definitions. 2002-01-13 19:20:06 +00:00
briggs
b89eed2156 If we're attaching UART2, then use UART2 in failure-case panic()s. 2002-01-04 21:18:59 +00:00
thorpej
014157862c * Share a common vector page between arm26 and arm32.
* Use a common set of exception handlers for all arm32 platforms.
* New FIQ framework based on discussions with Ben Harris, shared
  between arm26 and arm32.
2001-12-20 01:20:21 +00:00
atatat
b45c51b1fc Roll the rest of the ports over to the new MI kernel build machinery.
Any problems reported by testers have been fixed, and massive
cross-compiling of kernels has shown that any problems that remain
with actually building kernels are not related to this.
2001-12-09 05:00:40 +00:00
thorpej
a5a8439141 Make the snake slither in a slightly more interesting pattern that
also happens to have 8 positions (and thus has a slightly more efficient
implementation).
2001-12-01 21:23:17 +00:00
thorpej
216b9b2ea6 - Don't enable FIQs; nothing uses them (yet).
- Steer i80200 PMU and BCU interrupts to IRQ# (for lack of a better
  place, at the moment).
- Disable all interrupts other than external-IRQ# in the i80200 ICU;
  we don't deal with any of the others, yet.
2001-12-01 06:15:36 +00:00
thorpej
a7cfcd87fd Implement a "snake" for the 7-segment display. 2001-12-01 02:04:27 +00:00
thorpej
5f8b540ed9 Remove U from the display seg constants. 2001-12-01 02:02:46 +00:00
thorpej
e41179bfd0 Need <arm/cpufunc.h> for cache-related variables. 2001-11-30 19:43:20 +00:00
thorpej
0046f5dadd - Comment-out EXT2FS, MSDOSFS.
- Uncomment FDESC, KERNFS, PROCFS,
- Add commented-out DEBUG.
- Hard-wire the location of some of the on-board PCI devices.
- Also build a "netbsd-fxp0" with the root FS hard-wired to
  the on-board Ethernet.
2001-11-30 03:01:23 +00:00
thorpej
c5ecb8d8c5 Use the new arm_dcache_align variable to set the PCI device BHLC
register.
2001-11-29 02:26:50 +00:00
thorpej
636e9cd08b Add a "cacheline_size" argument to pci_configure_bus(). It is used
to set the cacheline size in the BHLC register.  This should be the
size of the largest D-cache line on a system.
2001-11-28 23:48:34 +00:00
lukem
ecb81c3f6d - convert usage of "defopt" to "defflag" where the relevant option does
not support a value (e.g., it's to be used as "options FOO" instead of
  "options FOO=xxx"). options that take a value were converted to
  defparam recently.
- minor whitespace & formatting cleanups
2001-11-28 10:21:10 +00:00
thorpej
a9b25a66fa When processing ASTs:
- Loop until astpending is clear upon return from ast().
- Clear astpending *before* re-enabling interrupts.
2001-11-28 01:31:59 +00:00
thorpej
7184ed949e Update copyright notice. 2001-11-27 00:35:34 +00:00
thorpej
34ce8c531b Don't need to include <machine/irqhandler.h> 2001-11-27 00:34:48 +00:00
thorpej
8cd82ab7b7 Move interrupt-related stuff out of the generic 32-bit ARM genassym.cf
and into platform-specific genassym.cf files.
2001-11-27 00:15:58 +00:00
thorpej
c8c624e4aa Don't include <machine/psl.h> directly. 2001-11-26 20:49:04 +00:00
thorpej
e0c4ce6999 Use <arm/arm32/psl.h> rather than <machine/psl.h>. 2001-11-26 20:43:46 +00:00
thorpej
87cab44e4e Delete <machine/psl.h> from the ARM ports. It's not a header that
we need to provide to MI code or to userland, and it's also not a
header that generic ARM code should be including directly.
2001-11-26 20:41:42 +00:00
thorpej
534b950d29 Move the interrupt-related file declarations into port-specific
config descriptions so that each port choose whether or not to
use it.
2001-11-26 20:33:43 +00:00
thorpej
7b3d7b3072 Remove the NEWINTR stuff; it's not used, incomplete, and I'm trying
to detangle the ARM interrupt code.
2001-11-26 20:26:20 +00:00