Home | History | Annotate | only in /src/sys/arch/sparc/stand/bootxx
History log of /src/sys/arch/sparc/stand/bootxx
RevisionDateAuthorComments
 1.21 03-Jun-2023  lukem adapt to ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}

Simplify CWARNFLAGS to use ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}
which works for both clang and gcc, and remove compiler-specific
equivalents.
 1.20 03-Jun-2023  lukem bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.19 06-Sep-2020  mrg add support for new GCC 9 warnings that may be too much to fix
right now. new address-of-packed-member and format-overflow
warnings have new GCC_NO_ADDR_OF_PACKED_MEMBER amd
GCC_NO_FORMAT_OVERFLOW variables to remove these warnings.

apply to a bunch of the tree. mostly, these are real bugs that
should be fixed, but in many cases, only by removing the 'packed'
attribute from some structure that doesn't really need it. (i
looked at many different ones, and while perhaps 60-80% were
already properly aligned, it wasn't clear to me that the uses
were always coming from sane data vs network alignment, so it
doesn't seem safe to remove packed without careful research for
each affect struct.) clang already warned (and was not erroring)
for many of these cases, but gcc picked up dozens more.
 1.18 23-Apr-2020  joerg Uses LFS boot code
 1.17 12-Jan-2014  tsutsui branches: 1.17.40;
Add empty LIBCRTI= as LIBCRT0 to build sa programs without installed DESTDIR.

XXX: probabry we should have bsd.saprog.mk or something.
 1.16 11-Dec-2005  christos branches: 1.16.112; 1.16.122; 1.16.128;
merge ktrace-lwp.
 1.15 28-Jul-2004  simonb Define LIB{CRT0,C,CRTBEGIN,CRTEND} as nothing, we don't need to link
against them.
 1.14 07-May-2002  pk branches: 1.14.10;
Convert `bootxx' to raw binary format which is what the MI installboot(8)
program needs.
 1.13 21-Feb-2000  pk branches: 1.13.8; 1.13.12;
bootxx links at 0x340000
2nd-stage boot programs choices: 0x200000,0x300000,0x400000,0x700000 (default: 0x300000)
 1.12 21-Feb-2000  pk RELOC -> RELOC_DEFAULT
 1.11 21-Aug-1999  sommerfeld branches: 1.11.2;
Use ${SIZE}, ${OBJCOPY} rather than size and objcopy.
 1.10 28-Apr-1999  christos Add -DLIBSA_NO_CLOSE
 1.9 05-Mar-1999  pk branches: 1.9.2; 1.9.4;
Use `-Ttext' switch & collect ld options in LINKFLAGS.
 1.8 01-Jun-1997  mrg Completely rearrange SPARC boot code, modeling it after alpha and hp300
ports' boot programs. Also added support for loading gzip'd kernels,
useful for booting from floppy. From Jason R. Thorpe <thorpej@nas.nasa.gov>,
tested by Matthew Green <mrg@eterna.com.au> and Erik Fair <fair@clock.org>.
 1.7 17-Apr-1997  thorpej STRIP -> STRIPFLAG
 1.6 29-Nov-1996  pk remove header munging hack.
 1.5 10-Oct-1995  pk We don't need `rem.o'.
 1.4 09-Oct-1995  pk branches: 1.4.2;
Brr.. libkern.o is way too big for our bootxx..
 1.3 30-Sep-1995  pk Make this work with OBJ dirs.
 1.2 18-Sep-1995  pk Don't strip bootxx on installation.
 1.1 16-Sep-1995  pk Network booting; "oldmon" support; combine all functionality in single images.
Many thanks to Gordon Ross and Chuck Cranor for figuring out and testing
the old monitor (sun4) stuff.
 1.4.2.1 13-Oct-1995  pk Update from trunk: remove rem.o
 1.9.4.1 21-Jun-1999  thorpej Sync w/ -current.
 1.9.2.1 22-Feb-2000  he Apply patch (requested by pk):
Make several sparc boot programs to run at different relocated
addresses. The boot build procedures can then pick the one which
is least likely to fail.
 1.11.2.1 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.13.12.1 20-Jun-2002  nathanw Catch up to -current.
 1.13.8.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.14.10.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.14.10.2 18-Sep-2004  skrll Sync with HEAD.
 1.14.10.1 03-Aug-2004  skrll Sync with HEAD
 1.16.128.1 18-May-2014  rmind sync with head
 1.16.122.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.16.112.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.17.40.1 25-Apr-2020  bouyer Sync with bouyer-xenpvh-base2 (HEAD)
 1.26 08-Oct-2015  joerg Don't check if an array is (not) NULL, check if the string is empty.
 1.25 26-Oct-2009  cegger branches: 1.25.22; 1.25.40;
kill extra whitespaces
reviewed by tsutsui@
 1.24 23-Aug-2009  he We need an explicit include of <sys/exec_aout.h> here as well.
 1.23 23-Mar-2009  tsutsui - use -Os to shrink bianries
- remove local shrinked memcpy() from bootxx.c bacause
now it's identical with __OPTIMIZE_SIZE__ libsa one
derived from src/common/lib/libc/string/bcopy.c.

Tested netboot from le0 and bootxx + boot from sd0 on SS1+.
 1.22 19-Mar-2009  he Now that the stand/ code was converted to use memcpy(), the private
implementation of bcopy() needs to become memcpy() as well. The
simpler local implementation is needed so that the boot code doesn't
overflow the available space.
 1.21 18-Mar-2009  cegger bcopy -> memcpy
 1.20 28-Apr-2008  martin branches: 1.20.8; 1.20.14;
Remove clause 3 and 4 from TNF licenses
 1.19 08-Mar-2007  he branches: 1.19.40; 1.19.42; 1.19.44;
Make the loadboot() declaration consistent, use char* because it
does pointer arithmetic on the argument.
 1.18 04-Mar-2007  christos Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.17 13-Jul-2006  uwe branches: 1.17.10;
De-__P. ANSIify.

Same object code is generated (except in prf.c, where putchar argument
type was changed to int to match the prototype and one instrcution
changes accordingly).

strategy() in ofdev.c was not ANSIified in this sweep, b/c that
changes code generated at call sites!
 1.16 14-Jun-2006  uwe Nothing in this file needs <sys/time.h>
 1.15 14-Jun-2006  uwe Get strcpy prototype from libkern.h, not string.h
 1.14 11-Dec-2005  christos branches: 1.14.4; 1.14.8; 1.14.14;
merge ktrace-lwp.
 1.13 03-Jun-2005  martin branches: 1.13.2;
constify
 1.12 28-Apr-2005  martin Ooops, missed this file when changing the bootdevice signature.
Pointed out by Juergen Hannken-Illjes.
 1.11 15-May-2002  lukem branches: 1.11.10; 1.11.16; 1.11.18; 1.11.24;
bootblock.h:
- unify sparc_bbinfo (1064 bytes, with 256 block entries)
and sun68k_bbinfo (296 byte, with 64 block entries)
into shared_bbinfo (512 bytes, with 118 block entries),
which will be also shared by future bbinfo-using platforms
(including macppc)
- add datestamp to *_BBINFO_MAGIC strings, to prevent installboot vs
bootxx version skew.
- add macppc support

*/bootxx.c:
- migrate to new shared_bbinfo structure

installboot:
- add macppc support (still needs applepartmap support and testing)
- improve and add some more warnings & errors to installboot
- implement shared_bbinfo_clearboot() and shared_bbinfo_setboot(), which
perform the majority of the work for bbinfo-using back-ends
(rather than replicating that across multiple back-ends).
 1.10 07-May-2002  lukem convert to <sys/bootblock.h>
 1.9 30-Oct-2001  thorpej Rather than using nlist(3), use a magic structure with a magic
number that installboot(8) can search for. Suggested by cgd@netbsd.org.
 1.8 13-Mar-2000  soren branches: 1.8.8; 1.8.10; 1.8.12;
Fix doubled 'the's in comments.
 1.7 08-Nov-1999  pk Include <sys/exec.h> instead of <a.out.h>/
 1.6 12-Jun-1999  pk branches: 1.6.2; 1.6.4; 1.6.8;
Initialize the heap (for alloc()) explicitly, since the `end' symbol
is not necessarily double-word aligned.
 1.5 03-May-1999  christos Casts for PROM_LOADADDR which is not casted anymore.
 1.4 15-Feb-1999  pk branches: 1.4.4;
Use PROMLIB to streamline this code. This also provides the bulk of
Open Firmware boot code.
 1.3 05-Sep-1998  pk Assign my copyrights to TNF.
 1.2 14-Sep-1997  pk Call the device close routine when we're done reading.
 1.1 01-Jun-1997  mrg branches: 1.1.4;
Completely rearrange SPARC boot code, modeling it after alpha and hp300
ports' boot programs. Also added support for loading gzip'd kernels,
useful for booting from floppy. From Jason R. Thorpe <thorpej@nas.nasa.gov>,
tested by Matthew Green <mrg@eterna.com.au> and Erik Fair <fair@clock.org>.
 1.1.4.1 16-Sep-1997  thorpej Update marc-pcmcia branch from trunk.
 1.4.4.1 21-Jun-1999  thorpej Sync w/ -current.
 1.6.8.1 27-Dec-1999  wrstuden Pull up to last week's -current.
 1.6.4.1 15-Nov-1999  fvdl Sync with -current
 1.6.2.1 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.8.12.2 20-Jun-2002  nathanw Catch up to -current.
 1.8.12.1 08-Jan-2002  nathanw Catch up to -current.
 1.8.10.1 12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.8.8.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.8.8.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.11.24.1 28-Apr-2005  tron Pull up revision 1.12 (requested by martin in ticket #211):
Ooops, missed this file when changing the bootdevice signature.
Pointed out by Juergen Hannken-Illjes.
 1.11.18.1 29-Apr-2005  kent sync with -current
 1.11.16.1 12-May-2005  riz Pull up new patch (requested by martin in ticket #1484):
Do not rely on strings to which pointers are returned by promlib functions
to persist accross further promlib calls.
This fixes (at least) bootjs.net.
 1.11.10.1 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.13.2.3 03-Sep-2007  yamt sync with head.
 1.13.2.2 30-Dec-2006  yamt sync with head.
 1.13.2.1 21-Jun-2006  yamt sync with head.
 1.14.14.1 19-Jun-2006  chap Sync with head.
 1.14.8.2 11-Aug-2006  yamt sync with head
 1.14.8.1 26-Jun-2006  yamt sync with head.
 1.14.4.1 09-Sep-2006  rpaulo sync with head
 1.17.10.1 12-Mar-2007  rmind Sync with HEAD.
 1.19.44.4 11-Mar-2010  yamt sync with head
 1.19.44.3 16-Sep-2009  yamt sync with head
 1.19.44.2 04-May-2009  yamt sync with head.
 1.19.44.1 16-May-2008  yamt sync with head.
 1.19.42.1 18-May-2008  yamt sync with head.
 1.19.40.1 02-Jun-2008  mjf Sync with HEAD.
 1.20.14.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.20.8.1 28-Apr-2009  skrll Sync with HEAD.
 1.25.40.1 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.25.22.1 03-Dec-2017  jdolecek update from HEAD
 1.12 07-Feb-2024  msaitoh Fix typo of "following" in comment.
 1.11 17-Jul-2011  joerg Retire varargs.h support. Move machine/stdarg.h logic into MI
sys/stdarg.h and expect compiler to provide proper builtins, defaulting
to the GCC interface. lint still has a special fallback.
Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and
derive va_list as required by standards.
 1.10 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.9 04-Mar-2007  christos branches: 1.9.40; 1.9.42; 1.9.44;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.8 13-Jul-2006  uwe branches: 1.8.10;
De-__P. ANSIify.

Same object code is generated (except in prf.c, where putchar argument
type was changed to int to match the prototype and one instrcution
changes accordingly).

strategy() in ofdev.c was not ANSIified in this sweep, b/c that
changes code generated at call sites!
 1.7 04-Mar-2006  uwe branches: 1.7.2;
s/u_intN_t/uintN_t/
 1.6 24-Dec-2005  perry branches: 1.6.4; 1.6.6;
__asm__ -> __asm
__const__ -> const
__inline__ -> inline
__volatile__ -> volatile
 1.5 11-Dec-2005  christos merge ktrace-lwp.
 1.4 03-Jun-2005  martin branches: 1.4.2;
constify
 1.3 26-Feb-2003  pk branches: 1.3.2;
Move all `ID prom' stuff into the prom library.
 1.2 03-May-1999  christos Casts for PROM_LOADADDR which is not casted anymore.
 1.1 15-Feb-1999  pk branches: 1.1.4;
Use PROMLIB to streamline this code. This also provides the bulk of
Open Firmware boot code.
 1.1.4.1 21-Jun-1999  thorpej Sync w/ -current.
 1.3.2.1 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.4.2.3 03-Sep-2007  yamt sync with head.
 1.4.2.2 30-Dec-2006  yamt sync with head.
 1.4.2.1 21-Jun-2006  yamt sync with head.
 1.6.6.1 22-Apr-2006  simonb Sync with head.
 1.6.4.1 09-Sep-2006  rpaulo sync with head
 1.7.2.1 11-Aug-2006  yamt sync with head
 1.8.10.1 12-Mar-2007  rmind Sync with HEAD.
 1.9.44.1 16-May-2008  yamt sync with head.
 1.9.42.1 18-May-2008  yamt sync with head.
 1.9.40.1 02-Jun-2008  mjf Sync with HEAD.

RSS XML Feed