summaryrefslogtreecommitdiffstats
path: root/sys/arch/sgi/stand (follow)
Commit message (Collapse)AuthorAgeFilesLines
* libsa's memcpy() is actually memmove(). make a proper memmove(), and givederaadt2019-04-202-4/+4
| | | | memcpy() correct behaviour. This also brings the bcopy() macro into line.
* change marks[] array to uint64_t, so the code can track full 64-bitderaadt2019-04-101-2/+2
| | | | | details from the ELF header instead of faking it. Proposal from mlarkin, tested on most architectures already
* Fix the locating of the OpenBSD disklabel on media with 2048 bytevisa2018-03-022-7/+13
| | | | | | | sectors (installXX.iso). The change to properly locate the disklabel, introduced after 6.0, assumed incorrectly 512 byte sectors. Diff from miod@
* If you use sys/param.h, you don't need sys/types.hderaadt2017-09-081-2/+1
|
* Do not create machine@ symlinks in obj as root during includes:, buttb2016-11-062-4/+6
| | | | | | | | | defer their creation to later, so that they are owned by BUILDUSER. This eliminates the last root-owned files in obj/ from 'make build'. In addition, place a MACHINE == hppa test in hppa/stand/Makefile.inc to avoid creating bogus symlinks on all other archs. joint work with & ok natano, "let's try it" deraadt
* Make the sgi boot blocks read the real OpenBSD disklabel instead ofvisa2016-10-054-28/+165
| | | | | | | assuming that the 'a' partition starts at the same location as the volume header partition #0. Diff from Miod Vallat
* crank bootloader version after .SUNW_ctf changejasper2016-09-131-2/+5
| | | | | as discussed with jsing@ it's easier this way to ensure people have bootblocks capable of loading the section
* Prep for relro: make sure it's off for any non-PIE stand/ programguenther2016-07-301-2/+2
| | | | ok millert@ kettenis@
* Change a bunch of (<blah> *)0 to NULL.krw2016-03-141-3/+3
| | | | ok beck@ deraadt@
* Replace unbounded gets() in libsa with getln() which takes a buffer size,miod2015-11-161-2/+2
| | | | | and convert all gets() users. ok deraadt@
* Nuke a #if 0/#endif block and a related variable. No plans to ever makekrw2015-09-301-19/+1
| | | | | | this work better than it does now. Eliminates a stray use of LABELSECTOR. ok miod@
* Add IP26 kernels and boot blocks to the installation media.miod2015-09-271-2/+3
|
* typosmiod2015-09-231-3/+3
|
* revert a few stragglers hiding outtedu2014-07-121-2/+2
|
* revert bogus free changes in not kernel files. got a little trigger happy.tedu2014-07-121-2/+2
|
* add a size argument to free. will be used soon, but for now default to 0.tedu2014-07-122-4/+4
| | | | after discussions with beck deraadt kettenis.
* It's been a quarter century: we can assume volatile is present with that name.guenther2014-03-291-2/+2
| | | | ok dlg@ mpi@ deraadt@
* /etc/random.seed support in the boot blocks (only when loading from disk).miod2014-02-222-8/+57
|
* crank the versionderaadt2013-12-281-2/+2
|
* Try to load entropy data from disk:/etc/random.seed, and additionallyderaadt2013-12-281-1/+3
| | | | | | | use a MD-supplied random function. Then, insert this into the ELF openbsd.randomdata of the kernel, so that it has entropy right from the start. Some help from jsing for the softraid aspects. Also tested by phessler
* Don't forget to create a boot-IP28 link in /usr/mdec, for the sake of themiod2013-12-081-1/+2
| | | | installer. Fixes boot block installation on, well, IP28.
* fix typo in last commitderaadt2013-11-131-2/+2
|
* Oops. Use %llu for DL_GETDSIZE() value.krw2013-11-121-2/+2
|
* Use DL_GETDSIZE() to get disk size.krw2013-11-121-6/+6
|
* Remove libsa exec.c, not used by anything anymore; all boot blocks now usemiod2013-01-011-2/+2
| | | | loadfile or a derivative of.
* Be sure to compile boot block objects with -D_NO_ABICALLS, to prevent .S filesmiod2012-10-192-4/+4
| | | | | | | | | in libkern from getting a ".abicalls" pseudo-op from including <machine/asm.h>; this will in turn flag the .o file as PIC even though it doesn't contain PIC code, really. This gets rid of the annoying "linking PIC files with non-PIC files" warnings spewed by ld at link time.
* Link boot64 twice, first as a self-contained binary, to enforce there are nomiod2012-10-191-2/+7
| | | | | unresolved symbols, then as a relocatable image as initially intended. This will prevent the arcbios.c 1.18 breakage from occuring again.
* Put back the kl_n_shift variable, removed by mistake in 1.18, causing themiod2012-10-182-17/+40
| | | | | | | | | | boot blocks to fail on IP27 and IP35 (IP26, IP30 and 32-bit ARCBios systems unaffected). While there, provide a simpler ARC_Call() macro for 32-bit boot blocks, and put a few more variables and statements within explicit __LP64__ guards. Crank boot blocks version as well.
* Bring the `let decide ARCBios address at runtime' code to the SGI bootblocks,miod2012-09-294-15/+61
| | | | | | which allows them to run on IP26 (POWER Indigo2 R8000). Crank boot blocks version.
* Move sgi/stand to plain -fno-pie -nopie. Binaries are the same.pascal2012-08-314-15/+8
| | | | tested by and ok deraadt@
* Add NOPIE= bits for sys/arch/*/stand to ensure that bootblocks will always bepascal2012-08-214-4/+13
| | | | | | built with -fno-pie. This gets the hairiest part of PIE out of the way ... ok deraadt@
* When writing the new volume header to disk, write back the wholematthew2012-05-291-2/+2
| | | | | | | sector rather than just the bytes for the volume header itself. Silences the "sloppy I/O" warnings triggered by sgi's distrib scripts. tested and ok deraadt
* Support for the POWER Indigo2 R10000 systems (IP28). Currently running withmiod2012-05-253-4/+11
| | | | | ECC checking disabled, which allows the existing Indigo2 drivers to run unmodified.
* Put more smarts into the limited bootblocks brain; they will now happilymiod2012-03-293-26/+85
| | | | | | | | | | | | recognize a kernel bootpath (when not autobooting) even if it does not start with a /, and will also recognize when this is a full path (e.g. bootp()mykernel), in which case OSLoadPartition does not need to be prepended to the constructed path. This will allow ELF kernels to be booted on ELF-unaware PROM with bootp()bootecoff bootp()kernel without doomed-to-fail tomfoolery to convert the 64-bit ELF kernel to a 32-bit ECOFF binary.
* Work in progress support for the SGI Indigo, Indigo 2 and Indy systemsmiod2012-03-281-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | (IP20, IP22, IP24) in 64-bit mode, adapated from NetBSD. Currently limited to headless operation, input and video drivers will get ported soon. Should work on all R4000, R4440 and R5000 based systems. L2 cache on R5000SC Indy not supported yet (coming soon), R4600 not supported yet either (coming soon as well). Tested to boot multiuser on: Indigo2 R4000SC, Indy R4000PC, Indy R4000SC, Indy R5000SC, Indigo2 R4400SC. There are still glitches in the Ethernet driver which are being looked at. Expansion support is limited to the GIO E++ board; GIO boards with PCI-GIO bridges not ported yet due to the lack of hardware, and this kind of driver does not port blindly. Most of this work comes from NetBSD, polishing and integration work, as well as putting as many ``R4x00 in 64-bit mode'' erratas as necessary, by yours truly. More work is coming, as well as trying to get some easy way to boot install kernels (as older PROM can only boot ECOFF binaries, which won't do for the kernel).
* Prevent the Ethernet driver to be opened twice when using a bootp() path;miod2012-03-191-3/+7
| | | | some ARCBios don't like this.
* Teach the bootblocks how to load kernel from tftp (i.e. when OSLoadPartitionmiod2012-03-1912-15/+541
| | | | | | | | is bootp() instead of a disk). Kind of ugly because of the usual `can't seek' problem causing kernels with symbols to be read from the network twice. While there, add a 32 bit ECOFF boot block, not hooked to the build yet, to be used shortly.
* Repair boot32 build after zlib upgrade.miod2011-07-091-2/+2
|
* Make this compile without warnings in all modes, and do not use NULL whenmiod2011-04-092-6/+15
| | | | integer zero is intended.
* Fix obj directory probing to support cross compiling.matthew2011-03-181-9/+5
| | | | "Go for it" deraadt@
* Change daddr_t to daddr32_t. The bootblocks on our architectures onlyderaadt2011-03-132-6/+6
| | | | | | | do 32-bit block spanning. If later on we get some that can/should do 64-bit, that can be done now using daddr64_t (but of course, we are taking this step to finalize the daddr_t 64-bit conversion). ok miod krw
* Undo unrelated changes commitedby mistake.miod2010-09-142-6/+4
|
* Force .rodata.str1.4 section to be merged into .text for the 32-bit bootblocks,miod2010-09-143-4/+7
| | | | fallout from using -mno-abicalls noticed by jsing@
* unstatic variable we need elsewhere, fixes stand build on tezromarco2010-09-141-2/+2
| | | | ok jsing
* Fix couple of warningsmarco2010-09-141-1/+2
| | | | ok miod
* Forc -mno-abicalls when compiling non-PIC bootblocks, for gcc 4 passes -KPICmiod2010-09-141-2/+2
| | | | to the assembler now unless -mno-abicalls is specified.
* dont let sys/ioctl.h imply that you get the ioctls in dkio.h. thisdlg2010-05-181-1/+2
| | | | | | | | | | | gets rid of #include <sys/dkio.h> in sys/ioctl.h and adds #include <sys/dkio.h> to the places that actually want and use the disk ioctls. this became an issue when krw@'s X build failed when he was testing a change to dkio.h. tested by krw@ help from and ok miod@
* Recycle unused disklabel fields in order to create a disklabel uniquejsing2010-04-231-2/+2
| | | | | | | identifier, allowing the disk to be identified without relying on the device name. ok deraadt@ krw@ beck@ marco@ todd@
* Use the new Elfxx_Phdr check hook to prevent loading a kernel not compiledmiod2009-11-301-1/+39
| | | | | for the platform we are running on (i.e. trying to boot e.g. bsd.IP32 on an IP27 machine).
* KSEG->CKSEG fallout.miod2009-11-241-4/+4
|