Commit graph

53 commits

Author SHA1 Message Date
Jake Burkholder 4f4f7ac78c Remove NOFORTH=yes, it seems to work now thanks to scottl. 2002-09-02 01:11:46 +00:00
Robert Drehmel 9884a53c1a - Do not pretend to compile a kernel and remove the definition
of the _KERNEL macro.
 - Do not include <sys/pcpu.h> for no reason.

Suggested by:	jake
2002-08-21 15:52:23 +00:00
Robert Drehmel 09bb4b96a4 - Define the macro _KERNEL to pretend we are compiling a kernel.
This is required by recent changes to <sys/pcpu.h>, which uses
   the #error preprocessor directive to keep non-kernel
   applications from using it.
   _KERNEL is defined below the #include <stand.h>, because <stand.h>
   removes the definition of _KERNEL.
 - Move the inclusion of <sys/queue.h> above the inclusion of
   <sys/linker.h> to avoid syntax errors.
2002-08-21 12:45:36 +00:00
Jake Burkholder 7746cd480a Print out the strings in vers.o instead of hardcoding the loader banner. 2002-08-04 01:30:26 +00:00
Jake Burkholder dd5629cde7 Enable netboot support by default, since it can now coexist with disk and
cdrom support.  This avoids having to distribute separate loaders.
2002-07-07 23:08:22 +00:00
Jake Burkholder 3238ad66ae Make building with ficl work. Unfortunately booting with it doesn't. 2002-07-07 18:23:10 +00:00
Jake Burkholder d89286ce68 Enable cd9660 support by default. 2002-06-21 22:34:51 +00:00
Peter Wemm 92caa29d8e Add boot_serial and boot_multicons variables to set RB_SERIAL and
RB_MULTIPLE since this seems to be the easiest way to add these flags
for non-forth loaders etc.
2002-06-20 06:29:42 +00:00
Poul-Henning Kamp 080ef30b20 Add explicit dependency on ufsread.c 2002-06-05 12:30:45 +00:00
Poul-Henning Kamp af53575a04 Remove UFS related #includes, they're read in ufsread.c now. 2002-06-05 12:12:25 +00:00
Poul-Henning Kamp 3795d538a8 Make sparc64 share ufsread.c with i386.
Sponsored by: DARPA & NAI Labs.
2002-06-05 12:00:53 +00:00
Poul-Henning Kamp 7cbccd7f79 Avoid entering IOCCC with a memcpy turned bcopy. 2002-06-05 11:56:12 +00:00
Jake Burkholder 8c7b34b8a3 Add needed include of queue.h. Remove unneeded include of smp.h. 2002-05-29 19:38:49 +00:00
Jake Burkholder 35738638d6 Use a contrived 'tlb_entry' structure for passing the mappings for the
kernel text and data from the loader to the kernel, so that the tte format
is not part of the loader->kernel ABI.
2002-05-29 05:49:59 +00:00
Jake Burkholder d9f2757eaa Sync with i386. The loader was being installed before the beforeinstall
target, which conventiently moved it to loader.old, leaving no loader.
2002-05-28 23:09:59 +00:00
Tom Rhodes d394511de3 More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
David E. O'Brien 21ab21338d Match the default newfs UFS block size. 2002-05-13 05:09:34 +00:00
Jake Burkholder 6cc8d3ac6b Attempt to not crash and burn on UltraSPARC III machines; the cpuid property
is named differently.
2002-05-11 22:05:22 +00:00
David E. O'Brien d1bdfb40fd -ffreestanding is the word.
(also resort some CFLAGS such that the more "important" value are first so
they are easier to see)
2002-05-10 09:26:35 +00:00
Jake Burkholder 127e8646b8 Split file system setup code out into a function called mount.
Implement vsnprintf.  Implement panic in terms of it.
2002-04-24 05:54:10 +00:00
Jake Burkholder 0d0c927680 Add support for loading files other than /boot/loader. Useful if you're
loader is screwed and you want loader.old.
Rewrite the scaled down printf so it actually works right, and add support
for more formats.
2002-04-24 04:27:49 +00:00
Jake Burkholder 3ff6556567 Add an exit function. 2002-04-24 02:50:59 +00:00
Jake Burkholder 083d8c5bab Add -Wno-unused. 2002-04-24 02:50:36 +00:00
Jake Burkholder 8c2f8986a6 memcpy, memset -> bcopy, bzero. 2002-04-24 02:24:32 +00:00
Jake Burkholder 4b487ad2ec Clean up elf loading to not make assumptions about the ordering of sections.
Don't load the symbol table; this is only needed for loading kernels and we
load the loader.
2002-04-24 02:10:35 +00:00
Jake Burkholder e2b255fdea Remove xfsread. Just call fsread directly. 2002-04-24 01:47:05 +00:00
Jake Burkholder 912ceb7f18 Remove a bunch of unused variables, functions and macros. Allocate storage
statically instead of using a faked up malloc.
2002-04-24 01:40:54 +00:00
David E. O'Brien 34ef85ee3d o Use our own elf2aout now.
o Generalize a little.
2002-04-21 02:37:55 +00:00
Thomas Moestl bc3c153560 Do not use semi-fixed TLB slots for the 4M kernel pages any more. 2002-04-02 17:10:15 +00:00
Thomas Moestl 2c94cd1ba0 1.) Rename locore.s to locore.S (by repocopy), to be able to remove
special-case make rule
2.) Cleanups, remove superfluous expicit rules, add -nostdlib to LDFLAGS,
    remove -X and -g, remove -g from CFLAGS
3.) Add BINDIR
4.) Build install the loader help file, add an empty help.sparc64
5.) Change the default configuration to only support booting from disk
6.) Get libofw.a from a path relative ${.OBJDIR}, not ${.CURDIR}

Submitted by:	jake (1 - 5), obrien (6)
2002-04-02 17:08:37 +00:00
Thomas Moestl ad68ab89e2 Add support for booting from CD-ROM. Make it possible to enable UFS
support using make arguments.
2002-04-01 23:28:35 +00:00
Thomas Moestl 163f47b1ec 1.) Produce a boot1 disklabel template of the format disklabel(8) expects.
2.) Clean up and change over to using bsd.prog.mk

Submitted by:	jake (2)
2002-04-01 22:57:51 +00:00
David E. O'Brien 77dfe39221 was repocopied to ../boot1 2002-03-28 02:56:05 +00:00
David E. O'Brien 20d9715213 Apparently either gcc or ld, in their infinite wisdom, want to
put a bunch of crap before the code in .text.  Since the firmware
doesn't seem to honour the a.out entry point, we need to include
a little assmbler file which jumps to where we want to be in C.

Submitted by:	jake
2002-03-28 02:41:52 +00:00
David E. O'Brien 0ce1fc3fc3 Opps, bootblock component is no more. 2002-03-28 01:41:23 +00:00
David E. O'Brien 8fa3779837 Add a Makefile for sparc64 at this level. 2002-03-28 01:01:43 +00:00
Robert Drehmel aa22cb469c Change every occurrence of "bootblock" into "boot1" after
the repo-move from "src/sys/boot/sparc64/bootblock".
2002-03-05 16:39:36 +00:00
Robert Drehmel 83ea6c23b5 - Fix seeking for offsets requiring more than 32 bits.
- Add sanity checks to lookup().
 - Implement the 'l' modifier in printf().

Submitted by:	tmm
2002-03-05 11:22:43 +00:00
Jake Burkholder dd4af53607 Catch up to change in tte format.
Forgetten by:	jake
Submitted by:	tmm
2002-03-01 06:17:28 +00:00
Robert Drehmel 4d79812a7c - Fix indentation and return statements to conform to style(9).
- Use the __FBSDID macro.
 - Fix some warnings.

Submitted by:	obrien (partly)
2002-02-26 10:05:20 +00:00
Jake Burkholder 4aaca88542 Keep track of the ttes used to map the kernel and pass them to it as loader
metadata.  Modify tlb handling functions to take a tte, instead of virtual
address, physical address and flags.
2002-02-23 11:06:37 +00:00
Jake Burkholder 3c5ef798a0 Add make variables for fs support and propagate them to CFLAGS. Put
-ffreestanding in CFLAGS.  Remove unnecessary LDFLAGS.
2002-02-23 04:35:28 +00:00
Jake Burkholder d112f7bd5b Fix fs support ifdefs. Add tftp support. Add physical and virtual
watchpoint support for debugging (under LOADER_DEBUG).  Claim the
physical and virtual addresses used to map the kernel from the prom;
we map it ourselves behind the scenes though.  Add a reboot command.

Submitted by:	tmm
2002-02-23 04:04:30 +00:00
Jake Burkholder 20dc3b11c5 Allocate a frame on our initial stack so that it doesn't run off into
random memory.  Disable interrupts while loading the tlb.

Submitted by:	tmm
2002-02-23 03:38:18 +00:00
Jake Burkholder 4f265afbc1 Include <machine/metadata.h>. 2002-02-23 03:33:39 +00:00
Robert Drehmel c119807ba8 Add the FreeBSD/sparc64 bootblock and its make file. 2002-02-15 12:49:20 +00:00
Robert Drehmel c9f26ad128 Avoid having the text and data sections merged into one program
header table entry by removing the -N flag from the LDFLAGS.
2001-12-28 22:12:38 +00:00
Jake Burkholder 8be89d4719 Add code to copy the enironment and loader metadata into kernel space. 2001-10-30 06:37:36 +00:00
Jake Burkholder a237ed036e Add definitions for network support, doesn't work yet.
Pass the right arguments to the kernel.
Replace magic numbers with symbolic constants.
Pass the real openfirmware entry point to OF_init.
2001-10-30 06:31:45 +00:00
Jake Burkholder 073e92a52c Use ENTRY() for defining functions in asm.
Remove asm functions to call the openfirmware and kernel entry points;
we can just call them directly.
Don't use the stack pointer for an intermediate result in setx.
Put the stack in the bss.
2001-10-30 06:27:34 +00:00