Commit Graph

333 Commits

Author SHA1 Message Date
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