Commit Graph

150 Commits

Author SHA1 Message Date
thorpej 9c31f51c34 Rename map_section() to pmap_map_section(), move it to pmap.c, and give it
an extra argument (prot - specifies protection of the mapping).
2002-02-20 00:10:15 +00:00
bjh21 984f6cdf94 Revert my last change: GENERIC has more bogons than I'd hoped. 2002-02-18 20:55:55 +00:00
bjh21 ea3b1622e8 Internal prototypes for loads of functions.
Casts in calls to sc_setup_dma and sc_need_bump to match implementations.
__RCSID() while I'm here.
2002-02-18 19:57:09 +00:00
bjh21 c44fd75edb Add prototypes for function pointers in struct esc_softc. 2002-02-18 19:55:01 +00:00
bjh21 432b398217 Add internal prototypes for lots of functions.
Add __RCSID() while I'm here.
2002-02-18 19:22:14 +00:00
bjh21 23b31cf96e My acorn32 kernels now compile successfully without LOOSE_PROTOTYPES. 2002-02-18 16:34:13 +00:00
bjh21 468fff80ed Pull in <arm/arm32/machdep.h> for initarm() prototype.
Change signature of initarm() to match the prototype.
Add prototype for canonicalose_bootconfig().
__RCSID() while I'm here.
2002-02-18 13:53:29 +00:00
bjh21 03357551c5 Add a prototype for asc_dump().
Delete asc_dmaintr(): it's unused.
__RCSID().
2002-02-18 13:19:54 +00:00
bjh21 77046b2b48 Add prototype for sbicdumpstate().
Add in-core RCSID.
2002-02-18 13:15:15 +00:00
bjh21 8a8c12cfc9 Add prototypes for podulebusmatch(), podulebusattach(), podulebusprint(),
podulebussubmatch(), podulechunkdirectory() and podulesncan().
Fix argument types of podulebussubmatch().
Remove podloader_read_region(), since it's not used externally.
2002-02-18 13:11:07 +00:00
bjh21 943c65af59 Add prototype for stray_irqhandler(). 2002-02-17 23:58:35 +00:00
bjh21 490dd78bcc cons_decl(com), to get prototypes. 2002-02-17 23:53:18 +00:00
bjh21 8eb5175b46 Add __RCSID(). 2002-02-17 23:47:56 +00:00
bjh21 63dc353d42 Add prototypes for lpt_port_test() and lptprobe(). 2002-02-17 23:45:29 +00:00
reinoud 309c1facde Create a .zip file next to the .tar file special for those Acorn folks who
can download a free unzipper but dont have access to a .tar.gz file.
2002-02-15 21:49:40 +00:00
reinoud 6dc9bb6c37 Forgot to remove the include file for the COMPAT_OLD_BOOTLOADER option i
removed.
2002-02-12 19:21:36 +00:00
reinoud c68fc4c05d Get rid of the verbose flag ... this only clobbers the output. 2002-02-12 13:03:43 +00:00
thorpej cd98cbf7fb * For platforms which are already ELF, remove the definition of
MACHINE_ARCH since <arm/param.h> already sets it correctly to "arm".
* For platforms which are not yet ELF, defined MACHINE_ARCH to "arm32"
  if __ELF__ is not defined by the C preprocessor.
* In <arm/param.h>, clarify the rules about when MACHINE and
  MACHINE_ARCH are defined, and to what.  Also, for ELF platforms,
  int the non-_KERNEL case, force both MACHINE and MACHINE_ARCH to "arm",
  rather than allowing platform-specifc code to define either.
2002-02-12 06:58:18 +00:00
reinoud bff769a5fc The 4Mb sure was too little to boot the installation sets.... 2002-02-12 00:29:55 +00:00
reinoud 8a3a4890b3 Update the bootloader extraction program to be more friendly and to provide
a way to include the bootloader in the release structure

XXX it needs to honour DESTDIR one day
2002-02-11 22:12:22 +00:00
reinoud 9ca7566eb9 The COMPAT_OLD_BOOTLOADER flag can go now since BtRiscBSD is no longer
suported due to ELF transition.
2002-02-11 21:48:46 +00:00
reinoud 6dae5d0659 Cleanup the settype script and dont forget the `howto' files for UnixFS 2002-02-11 19:32:02 +00:00
reinoud f4bbd8d351 Remove old BtNetBSD.old bootloader... its obsolete and might be accidentaly
pulled in one time.
2002-02-11 19:02:37 +00:00
reinoud f80d729bf3 Commit of BtNetBSD version 0.99 : new bootconfig implemented in the
bootloader that also allows ELF symbols to be read correctly as well as
still having the posibility to boot older kernels with the `oldkernel'
option.

There is now support for upto 32 blocks of DRAM and a 16 blocks of VRAM.
Also preliminary support for specifying Mode Defintion Files (MDF) to the
kernel.
2002-02-11 19:00:07 +00:00
reinoud 11982f07b9 _important_ : the old BtRiscBSD compatibility has been put to rest... this
means that kernels from now on are not bootable by !BtRiscBSD but only with
!BtNetBSD.

Big initial commit for a new cleaned up and extended bootblock style. This
patch also allows ELF symbol tables to be read when the patches on the
bootloader are commit but will work fine with the older bootloader.

An extra option `oldkernel' will be provided in the newer bootloader to
pass out old style bootconfig's thus enabling old style kernels to load and
function.

Tested on a.out and ELF (preliminary) kernels with both older and new style
bootconfig blocks.
2002-02-11 18:47:36 +00:00
skrll 88279a037a We're not arm32 we're acorn32. 2002-02-11 08:28:16 +00:00
reinoud 4ec25a3335 Use `booted_kernel' instead of the `boot_file' variable. 2002-02-10 23:01:45 +00:00
reinoud 2082d60338 We don't need to include "footbridge.h" 2002-02-09 23:58:30 +00:00
reinoud 4ffbd975dc Oeps... boot_file was needed after all ... weird 2002-01-31 22:46:40 +00:00
reinoud c8f5e8e49c Initial `machdep.booted_kernel' support as a string flag on the boot
arguments since otherwise RiscOS file names must be parsed.
2002-01-31 21:01:40 +00:00
reinoud a2cea03cf2 Update and clean the config files to look more equal ... some non standard
configutations were not updated during time.
2002-01-30 14:01:33 +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 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 f5ee1b0539 Don't explicitly assign MACHINE_ARCH. 2002-01-25 17:22:35 +00:00
reinoud 6875bccf40 Cleanup kernel configuration file and add a generic INSTALL kernel. The
A7000 kernels are obsolete now the ARM7500 detection is integrated. The
NC's however are not completely supported and should in the near future be
bootable with GENERIC/INSTALL too.
2002-01-25 15:20:54 +00:00
oster 39b858e3bf Add new RF_* options for RAIDframe bits that are no longer built by default.
While we're here, enable RAIDframe (and RAID_AUTOCONFIG) by default for
architectures that I'm comfortable can deal with it being on by default.

Also: bump the number of 'raid' devices from 4 to 8, since 4 seems to
be insufficient in practise.
2002-01-19 18:45:06 +00:00
thorpej 75dfddd49d Use bpf_mtap(). 2002-01-16 05:56:54 +00:00
manu 9a870a5b82 updated chrtoblktbl[] 2002-01-12 12:23:48 +00:00
manu 833e540a34 Added clockctl 2002-01-12 12:09:51 +00:00
reinoud b8eb6adfa1 Make the MACHINE_ARCH overrideable by build.sh 2002-01-09 20:54:40 +00:00
bjh21 f2b2562dd8 Don't print arm700bugcount at shutdown. I'm planning to make it into
an evcnt, so users can get at it using vmstat if they care.
2002-01-07 21:40:59 +00:00
thorpej d9f543962d Acorn systems do not support the ISA bus; remove these files. 2002-01-06 20:29:42 +00:00
martin b506d6e135 Add PPPoE to all generic kernels that should be able to use it.
XXX TODO: do this for INSTALL kernels too, add sysinst support and make the
XXX needed binaries available on the ramdisk root fs.
2001-12-28 12:21:52 +00:00
cjep e76e91a051 Pull out csc Cumana SCSI II driver and note that it is not currently
working properly. This seems to have been the case for some time
(cf. PR #8924).
2001-12-22 23:17:35 +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
reinoud 608b11c8f4 Minor bootloader update but most of all updated UnixFS disk selections so
now also other patitions are possible; The scripts `native/wd*' were all
broken !!! Guess Mark Brinicombe had some plans but forgot to subit them...
2001-12-16 20:54:29 +00:00
bjh21 b17e1abb0f Use the MI DP83905 support for media selection on those cards that use it. 2001-12-16 00:23:59 +00:00
bjh21 2ca506c0ca if_ne_pbus needs the "mx98905" attribute. 2001-12-15 23:48:38 +00:00
bjh21 7de3bbbbe3 Use the MX98905 bug workaround for EtherN and EtherI cards. 2001-12-15 20:30:06 +00:00
gmcgarry bdd225baa1 Add a blurb to the top of all GENERIC files. This serves three purposes:
- to clarify some terminology
- to clarify the intention of the GENERIC file
- to cross-reference some useful man pages
2001-12-14 05:34:45 +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
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 ce1401fe6e Use <machine/intr.h>, not <machine/irqhandler.h> 2001-11-27 00:53:11 +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 2c47b0a10f Pasto in last. 2001-11-26 23:52:58 +00:00
thorpej ed112809c9 Allow port-specific Makefile fragments to specify a list of additional
genassym.cf fragments, if desired.
2001-11-26 23:44:58 +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 1b71762f33 Move disklabel_acorn.h to <sys/disklabel_acorn.h>, much like we did
with disklabel_mbr.h.  More cleanup yet to come.
2001-11-25 16:22:47 +00:00
thorpej ccbcd042c1 Clean this up, don't install files that userland doens't need. 2001-11-24 03:54:52 +00:00
thorpej ce8333e910 This is a Shark-specific file; don't need it here. 2001-11-24 03:52:34 +00:00
thorpej fc2c469259 The ARM, Ltd. floating point emulator has moved to arch/arm. 2001-11-24 01:27:11 +00:00
thorpej ef9741def9 No need to install bootconfig.h 2001-11-24 00:57:43 +00:00
thorpej b8ed19b4ef No longer need <machine/undefined.h>. 2001-11-23 21:23:30 +00:00
thorpej fc019be5fd Use <arm/undefined.h> instead of <machine/undefined.h>. 2001-11-23 21:18:29 +00:00
thorpej 597c20c6d6 Don't need a <machine/profileio.h> on these platforms. 2001-11-23 20:56:27 +00:00
thorpej 0a824f32cb No longer need <machine/pte.h>. 2001-11-23 20:43:03 +00:00
thorpej a41a73c44a No longer need <machine/cpus.h> 2001-11-23 19:51:32 +00:00
thorpej 0ab1aedd0d No longer need <machine/cpufunc.h> 2001-11-23 19:40:45 +00:00
thorpej 5101f01dff Move even more constants into the shared 32-bit vmparam.h header.
Cleanup elsewhere will have to be done before we can sanitize this
header any further.
2001-11-23 18:16:10 +00:00
thorpej 15c76e3c84 - Move more contents of various <machine/vmparam.h> files into
<arm/arm32/vmparam.h> (mostly the stuff that's tied to the pmap
  implementation).
- Since the MMU definitions in pte.h are specific to ARM processors
  that support 32-bit mode, move pte.h to <arm/arm32/pte.h>.
- Make the Netwinder startup file build again (use PT_B|PT_C, rather
  than PT_CACHEABLE, since the latter expands to a variable these days).
2001-11-23 17:39:03 +00:00
thorpej 0ec8fbad4d Extra whitespace removal. 2001-11-23 17:29:00 +00:00
thorpej fec02f1259 No need to pull in <machine/pte.h> directly. 2001-11-23 17:23:40 +00:00
atatat 2bf2c362fb The bridge(4) pseudo-device no longer requires the port to
__HAVE_GENERIC_SOFT_INTERRUPTS, so add it back to all GENERIC configs.
2001-11-23 05:00:22 +00:00
thorpej 5278f1771c Remove kerndebug.h from non-Shark code (it's a Shark-specific header
file, and probably should be done away with anyway).
2001-11-22 19:19:48 +00:00
thorpej b393d0d3f7 Kill <machine/katelib.h>. Any place that still uses it should just
reference <arm/arm32/katelib.h> until such time as all use of this
file has been purged from the face of the earth.
2001-11-22 18:34:30 +00:00
thorpej 67fd41ddbf Add 26-bit and 32-bit types.h files, which indicate the programming
model in use for a given platform (__PROG26 vs __PROG32), then pulls
in <arm/types.h>.  Change each ARM port to pull in <arm/arm26/types.h>
or <arm/arm32/types.h> as appropriate.  Change all references to PROG26
and PROG32 to __PROG26 and __PROG32.  Eliminate the opt_progmode.h
header file.
2001-11-22 17:59:57 +00:00
soren 0cbd8ee484 pccons is not used by acorn32. 2001-11-21 03:43:13 +00:00
lukem 03aef4723c cleanup:
options SPACE TAB
	makeoptions TAB
	psuedo-device TAB
	remove trailing whitespace
	replace multiple spaces -> tabs
	options "FOO" -> options FOO
	options "FOO=bar" -> options FOO=bar
	options "FOO=\"bar\"" -> options FOO="\"bar\""
2001-11-20 12:56:17 +00:00
bjh21 0d20115da8 Match multiple-include-protection macros to name of file. 2001-11-18 13:10:57 +00:00
bjh21 306ca6424a Roll back last change. Acorn32, being a major port, shouldn't switch to ELF
until the ABI is finalized.
2001-11-18 13:09:27 +00:00
soren 662f877587 MAXSLP is defined to be a machine-independent scheduling parameter,
so move it into sys/param.h.
2001-11-15 18:06:11 +00:00
augustss c5477b70aa The wsmux pseudo device does not need a count anymore. 2001-11-13 17:54:46 +00:00
thorpej 4ffa983428 Pull in common 32-bit ARM VM parameters. 2001-11-11 16:44:15 +00:00
thorpej 147b1bdc1c Add some rudimentary support for ELF symbols in DDB on the ARM ports.
On platforms which load the kernel sans symbols directly from firmware
(possibly in e.g. S-Record format), call ddb_init() with empty arguments,
so that it will search any compiled in SYMTAB_SPACE.  On all other platforms,
if __ELF__, also call ddb_init() with empty arguments until ELF bootloaders
which pass symbol information are ready.
2001-11-09 07:21:37 +00:00
thorpej 47514a31be Remove unneeded declarations of the db_machine_init() function. The
ARM ports are the only ones that actually have one, and it is about
to change.
2001-11-09 06:52:23 +00:00
thorpej 3130a93ac8 Remove unnecessary prototypes for zero_page_read{only,write}(). 2001-11-09 00:34:34 +00:00
reinoud 9be624a530 Not used in this port yet but since it is supposed to be a generic machine
dependend loadfile extention i copied it from arch/arm32/include where it
was committed as part of the ofwboot for sharks where Jason is working on.
2001-11-03 02:12:37 +00:00
reinoud 88ca038117 Change MACHINE_ARCH to arm making it ELF now. 2001-10-31 02:10:35 +00:00
jmc 6d536163de Change defaults for kernel compiles. Default all to USETOOLS?=no and have
the etc Makefile override that by putting USETOOLS into $.MAKEOVERRIDES
This way the default for kernel compiles is still to use the installed
toolchain instead of depending on $TOOLDIR. $TOOLDIR can be used by
simply adding USETOOLS=yes to the command line as usual.

Adjust each ports template to set the default no setting and also pull in
bsd.own.mk if they weren't already to ensure they'll build correctly
with the new toolchain setup.
2001-10-26 06:45:33 +00:00
reinoud d3340e7db2 Add a pretty lame LOWMEM configuration ... it has the basic interfaces in it
but lacks the podulebus completely; this might be a good starting point for
small memory machines.

Most stuff is disabled but commenting it for easy adding.
2001-10-23 21:21:59 +00:00
thorpej ba217c4196 Set MACHINE_ARCH explicitly in Makefiles for which it is constant.
Also, since config(8) now explcitly sets MACHINE, there is no need
to do it here in the Makefile.
2001-10-23 19:26:41 +00:00
thorpej a2bf3bc31b Pull in <bsd.own.mk> to get the correct toolchain definitions for
the USE_NEW_TOOLCHAIN case.
2001-10-23 17:32:35 +00:00
reinoud 492b11d134 Added the documentation section of arch/arm32 to not let it dissapear.
Can't say for sure ig the interrupts/majors+minors files are still valid
though.
2001-10-18 00:05:00 +00:00
reinoud 163c0895bf Bug fix : due to changes in wscons having a wsmux seems mandatory now to
get it compiled...

added the pseudo-device wsmux 1 to ensure this demand.
2001-10-17 22:54:25 +00:00
bjh21 e2d7d02aa0 Ensure that arch/acorn32/compile gets created. 2001-10-07 12:20:55 +00:00
bjh21 8cdda239fa Basic acorn32 makefile -- the arm32 one with the obvioud transformations
applied.  This is necessary to get kernel headers installed properly.
2001-10-06 22:04:11 +00:00
bjh21 2989551639 vidc.h => vidc_machdep.h, since the latter exists and the former doesn't. 2001-10-06 22:03:02 +00:00
reinoud 7d4a1addde Initial commit of the splitting off of arch/acorn32 from arch/arm32.
The IOMD/VIDC combination is now moved to arch/arm/iomd together. These
files still need a lot of cleaning up :( .... esp. the RC7500 support that
is still dormant in it; this needs either to be removed or split out for
RC7500's ``VIDC'' video/audio variant.

Apart from the RC7500 support wich is still in arch/arm32 the
iomd,vidc,riscpc and podulebus subdirectories of arch/arm32 can be removed.

This split still uses some small parts of arch/arm32 .... those are the MI
parts that haven't been moved yet.

RiscPC/A7000 have been tested and confirmed to build as should NC.
2001-10-05 22:27:40 +00:00