Commit Graph

29120 Commits

Author SHA1 Message Date
isaki 2108a5c977 Rewrite vs_query_encoding() using array. 2001-11-13 09:27:06 +00:00
isaki c2e9ead40b Clean up debug messages. Separate it two debug levels. 2001-11-13 09:06:00 +00:00
perry 9f8afd5252 Make the type of ports in the in*()/out*() routines u_long instead of
int. Massively reduced kernel lint, causes no harm. Discussed
extensively with christos and thorpej.
2001-11-13 03:27:50 +00:00
uwe 0c392b9e2f Move dvma_cachealign to cache.c where it belongs and declare it in
cache.h, so that kernel can be linked without iommu support (for the
sake of microSPARC-IIep that has a very different iotlb).
2001-11-13 03:04:50 +00:00
pk 4f1fe56be8 Remove redundant declarations. 2001-11-12 16:32:25 +00:00
simonb 1143123ee5 Fix pasto in a comment. 2001-11-12 11:12:16 +00:00
matt ab93af26ea Fix pte_clear to TLB flush the va, not the tlb adress (which is only valid
for clearing the ref bit).  pvo_to_pte (if !diagnostic) will return NULL
immediately if PTE_VALID is not set.
2001-11-11 23:07:02 +00:00
chris 8298c55eab Correct comments for ffs algoritm (it isn't using register r0) 2001-11-11 22:07:41 +00:00
thorpej 944fcd0d83 Allocate the appropriate space for the XScale global cache clean code. 2001-11-11 17:30:14 +00:00
rafal 1a9f819d84 Make microtime(9) do interpolation to get better-than-hz resolution, if
the platform supplies a clkread function that does something other than
return 0 (which is the default unless overridden by the platorm code).
Supply such a function for the IP22; even if it isn't perfect, it goes
a long way to making ntp usable.

While I'm at it, move the ticks-per-hz variable out of the struct platform
since it's really private to the per-platform interrupt/clock code.

XXX: No clkread function supplied for IP32, since it has other problems --
like a hardcoded ticks-per-hz, but the same code as on the IP22 could be
used.
2001-11-11 17:21:40 +00:00
thorpej b75edaf367 Some fixes/cleanup to the XScale cache clean code:
* Define a CPWAIT macro as described in the i80200 manual and use it,
  rather than replicating the code in a few places.
* The i80200 manual notes that the line-allocate operation used to
  do global D$ clean does not actually perform a load/fill request
  from external memory, and thus does not actually place valid data
  in the cache lines allocated.  Require that machine-dependent code
  allocate an appropriately-sized chunk of unmapped VA space for the
  global clean operation in order to avoid unpredictable results.
* The i80200 manual notes that the VA range for the Mini-Data global
  clean (which *must* be mapped to physical memory) must be reserved
  exclusively for cleaning the Mini-Data cache.  Require that machine-
  dependent code allocate an appropriately-sized chunk of memory for
  this purpose.
2001-11-11 17:18:27 +00:00
thorpej 4ffa983428 Pull in common 32-bit ARM VM parameters. 2001-11-11 16:44:15 +00:00
thorpej c653a0ee51 Even though the ARM architecture defines large, standard, and small
pages, we use the standard (4K) page size as PAGE_SIZE.  Make the
PAGE_SIZE related variables compile-time constants that reflect this.

Results in a bit over 2K worth of .text savings, and visibly better
code in the places that use PAGE_SIZE, etc.
2001-11-11 16:40:36 +00:00
isaki db0f7ea415 add Nereid. ne* at intio0 2001-11-11 01:40:29 +00:00
isaki 85e2e11f39 Support an ethernet part of Nereid.
Nereid is the board of ethernet/USB/memory for X68k
developed by X-PowerStation, a japanese X68k circle.
See http://xps.jp/ but only written in japanese.
2001-11-11 01:39:02 +00:00
isaki 20d2e2f7e8 Support BUS_SPACE_MAP_SHIFTED_EVEN for bus_space_map().
Now BUS_SPACE_MAP_SHIFTED means BUS_SPACE_MAP_SHIFTED_ODD.
It is needed for Nereid Ethernet.
2001-11-11 01:38:00 +00:00
thorpej 2ea8a793d0 * Define prologue/epilogue macros for the cache clean functions,
and use them, like we do in the SA-1 code.
* Use numbered labels for loops.
2001-11-11 01:05:11 +00:00
thorpej 3492e0ce0b Fix a missing-whitespace typo. 2001-11-11 01:02:58 +00:00
thorpej eb8206f223 Use numeric labels for loops. 2001-11-11 00:47:49 +00:00
thorpej de8e924e4c * Define prologue/epilogue macros for the cache clean functions,
and use them, rather than replicating the code several times.
* Use numbered labels for loops.
2001-11-11 00:41:48 +00:00
soren 3566ffe886 Fix vnd pastoes. 2001-11-11 00:38:30 +00:00
thorpej ddb435fb56 Define KERNEL_TEXT_BASE, ALT_PAGE_TBLS_BASE, and KERNEL_VM_BASE
in terms of KERNEL_BASE.
2001-11-11 00:32:02 +00:00
thorpej fe9e809208 Add a comment explaining that we expect the memory controller
registers to already be subregion'd off, and actually init
the PCI DMA tag.
2001-11-10 23:14:51 +00:00
thorpej 9e1b785626 Split all the model/version-specific cpufuncs into separate files
corresponding to the model/version.
2001-11-10 23:14:08 +00:00
thorpej a27687fb2f Fix some whitespace. 2001-11-10 23:12:41 +00:00
wdk 571fbc80c7 Tidy up debug logic
Fix compile errors when DIAGNOSTIC or DEBUG options disabled.
2001-11-10 22:54:54 +00:00
perry 2cff38a9ba trivially rename some macro parameters to avoid lint warnings. 2001-11-10 22:21:00 +00:00
jklos e00ba8ee0d Now properly probes for cards with 64k of buffer. Reversed order
of tests in case space isn't fully decoded.
2001-11-10 21:32:33 +00:00
tsutsui 3f6a86f512 Add some definitions for battery backed clock register 5,
and fix one spelling nit.

Mostly from port-hp300/8824, which had already pointed out
y2k (and y2k+1) bugs before 2000, but they were not fixed
till the last month. (I noticed this PR today. Oops)
2001-11-10 19:43:48 +00:00
augustss c64847f048 If the RTC gives a time more than 1000 days before file system time then
use the file system time.  (My iMac seems to give 1904 as the year very
often (dead battery?), and setting the correct date with ntpdate doesn't
seem to work.)
2001-11-10 15:37:40 +00:00
wdk 7f5269c58f NetBSD Disklabel and SGI Volume header support. Based on NetBSD/mipsco
due to its similarities.

Patch has been tested by many people on the sgimips list for some time with
no complaints.

Contributed by: Christopher SEKIYA <wileyc@rezrov.net>
2001-11-10 07:35:17 +00:00
wdk de81761c50 Complete overhaul of WD33c93 SCSI driver
- Full support for SCSI-2 Tagged commands (enabled by default)
 - Implement save and restore datapointer messages
 - Formalize interface between MI and MD drivers.
 - decouple interface between MD driver and DMA routines
 - Use scsipi layer where appropriate (Tags, Sync Negotiations etc)
 - control blocks stored using kernel pool(9) functions
 - evcnt(9) compliant counters
 - Enable advanced features on later WD33c93 chips.
   (Identify message out phase is hardware assisted)
 - Improved timeout support (one per active control block)
 - Improved MESG_IN and MESG_OUT handling
 - Start to tidy up debugging output
 - Numerous bug fixes and cleanups throughout

Changes are based largely on the NCR53c9x MI driver for ideas on
how to DTRT.
2001-11-10 07:32:42 +00:00
shin 82c810212c make this compile without DDB. 2001-11-10 06:56:35 +00:00
sato c702430929 MCR-300/310/320/330/for Docomo have same PWCTL_LCDLIGHT, PWCTL_LCD port. 2001-11-10 04:53:47 +00:00
thorpej 615b7aff22 Delete an option that doesn't really exist. 2001-11-10 00:18:17 +00:00
thorpej fa6ae96384 This file is not used. 2001-11-10 00:13:58 +00:00
thorpej f03c5f5a7c Add VERBOSE_INIT_ARM and SYMTAB_SPACE options (commented out). Add
devices: iopxs (i80312 Companion I/O), pci, ppb, fxp, inphy, ukphy.
2001-11-10 00:11:11 +00:00
thorpej 8a0624f3a4 Add some missing backslashes. 2001-11-09 23:36:52 +00:00
thorpej d1f4bf74ca Add support for PCI DMA on the i80312. We currently just do
DMA via the Secondary Inbound window, for now.  Will probably
need to revisit this at some point.

Require that the board-specific i80312 front-end slice off a
subregion for the memory controller before calling i80312_attach(),
and fix a bug in the IQ80310 front-end that caused the Secondary
Inbound window to be configured incorrectly.
2001-11-09 23:15:52 +00:00
thorpej 3797f5214d Fix typos in determing the ATU and PPB bus numbers. 2001-11-09 22:47:48 +00:00
thorpej c3dc4c8c9e Add PCI_NETBSD_CONFIGURE. 2001-11-09 20:59:39 +00:00
thorpej 393b381a6d PCI interrupt mapping support for the IQ80310. 2001-11-09 20:58:57 +00:00
scw 45e7238a02 Bump the version numbers of all bootloaders which use loadfile_elfXX() now
that it tries hard to avoid backwards seeks.
2001-11-09 19:53:11 +00:00
thorpej d32191e3da Add support for configuring the PCI bus (starting with the Secondary
bus only, for now).

XXX Some cleanup wrt. pci_conf_interrupt() needs to happen.
2001-11-09 19:48:35 +00:00
thorpej b1ec255377 Add a "firstbus" argument to pci_configure_bus(), indicating the
first bus number to use, rather than always assuming that we should
start at bus #0.
2001-11-09 19:29:12 +00:00
thorpej 671a1b111f Print the fault PC for non-USR Prefetch Aborts. 2001-11-09 19:04:23 +00:00
scw 439d3ea3cb G/C some debug printfs inadvertently left in the last commit. 2001-11-09 18:27:59 +00:00
scw 2f42a5932e Implement just enough of an lseek() to keep loadfile_elf32() happy.
While I'm here, bump RAWFS_BSIZE up to 8192 since the installation
instructions use "bs=8k oconv=sync". My Archive Viper now streams
nicely while booting.
2001-11-09 18:25:11 +00:00
scw dca93f1b48 The success/failure status for some Bug syscalls is indicated by the Z
flag in the status register, not by a value on the stack.

How this ever worked for so long is beyond me...
2001-11-09 18:18:19 +00:00
thorpej 82c11eec1c Clear the Master Abort after reading config space for a non-existent
PCI device.  Disable debugging messages, as PCI config space works now.
2001-11-09 18:04:10 +00:00