Home | History | Annotate | only in /src/sys/arch/macppc/stand/bootxx
History log of /src/sys/arch/macppc/stand/bootxx
RevisionDateAuthorComments
 1.21 27-Jan-2019  dholland fix duplicated chunk from merge
 1.20 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.19 30-Dec-2018  christos no pie/sanitizers for boot code.
 1.18 02-Mar-2018  sevan branches: 1.18.2; 1.18.4;
Do not pass libgcc.a to linker as it breaks build with MKGCC=no e.g HEAD-LLVM.
It doesn't appear to be required for the stock GCC build either, having been
able to build a release without it.
 1.17 15-Jul-2017  christos branches: 1.17.2;
Avoid missing _restgpr_30_x
 1.16 20-Apr-2017  uwe Quash .eh_frame unwind tables in boot code.
 1.15 10-Aug-2014  joerg branches: 1.15.4; 1.15.8; 1.15.12;
Put GCC/GAS specific options under ACTIVE_CC == "gcc".
 1.14 08-Aug-2014  joerg Don't set -mmultiple or -mno-string for PowerPC, the difference is too
small to really matter and it sometimes even increases the size.
 1.13 12-Jan-2014  tsutsui branches: 1.13.2;
Add empty LIBCRTI= as LIBCRT0 to build sa programs without installed DESTDIR.

XXX: probabry we should have bsd.saprog.mk or something.
 1.12 15-Mar-2009  tsutsui branches: 1.12.12; 1.12.22; 1.12.26;
- create symlinks for MD system headers by <bsd.klinks.mk>
- suppress warnings on build without DESTDIR
 1.11 11-Dec-2005  christos branches: 1.11.78; 1.11.86; 1.11.92;
merge ktrace-lwp.
 1.10 09-Apr-2004  matt When linking, use ${_MKTARGET_LINK} so that MAKEVERBOSE=1 looks right.
 1.9 28-Feb-2003  matt branches: 1.9.2;
Make this play with gcc 3.3. Add -ffreestanding. Cleanup bootxx.
 1.8 03-Feb-2003  matt Add -DPPC_OEA to CPPFLAGS
 1.7 15-May-2002  lukem convert to using shared_bbinfo from <sys/bootblock.h>, and install as an
"${OBJCOPY} -O binary ..." program (rather than as ELF)
 1.6 13-Apr-2002  tsutsui Use "-Os -mmultiple".
 1.5 12-Dec-2001  tv MKfoo=no -> NOfoo
 1.4 07-Feb-2000  tsubai branches: 1.4.8; 1.4.12;
Move CFLAGS and CPPFLAGS to {bootxx,ofwboot}/Makefile to compile installboot
without -D_STANDALONE.
 1.3 06-May-1999  wrstuden branches: 1.3.2;
MAke this cross-tools happy.
 1.2 13-Feb-1999  lukem branches: 1.2.4;
convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
 1.1 12-Jun-1998  tsubai Add primary boot (bootxx) and installboot command.
 1.2.4.1 21-Jun-1999  thorpej Sync w/ -current.
 1.3.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.4.12.3 20-Jun-2002  nathanw Catch up to -current.
 1.4.12.2 17-Apr-2002  nathanw Catch up to -current.
 1.4.12.1 08-Jan-2002  nathanw Catch up to -current.
 1.4.8.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.4.8.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.9.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.9.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.9.2.1 03-Aug-2004  skrll Sync with HEAD
 1.11.92.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.11.86.1 28-Apr-2009  skrll Sync with HEAD.
 1.11.78.1 04-May-2009  yamt sync with head.
 1.12.26.1 18-May-2014  rmind sync with head
 1.12.22.2 03-Dec-2017  jdolecek update from HEAD
 1.12.22.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.12.12.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.13.2.1 10-Aug-2014  tls Rebase.
 1.15.12.1 21-Apr-2017  bouyer Sync with HEAD
 1.15.8.1 26-Apr-2017  pgoyette Sync with HEAD
 1.15.4.1 28-Aug-2017  skrll Sync with HEAD
 1.17.2.2 15-Jul-2017  christos 2552540
 1.17.2.1 15-Jul-2017  christos file Makefile was added on branch perseant-stdc-iso10646 on 2017-07-15 23:26:47 +0000
 1.18.4.1 10-Jun-2019  christos Sync with HEAD
 1.18.2.1 18-Jan-2019  pgoyette Synch with HEAD
 1.21 23-Jan-2020  uwe Avoid warning about dcbf, icbi first argument.

as(1) is not quite happy when RA=0 argument to these instructions is
spelled as %r0 and emits a warning. Spell that argument as 0 to
placate it. Same object code is generated.
 1.20 28-Oct-2019  joerg branches: 1.20.2;
Mark local-only function as static to save space.
 1.19 12-Nov-2018  scole PR 51495/port-macppc

Allow ppc601 to boot off hard disk
 1.18 14-Mar-2009  dsl branches: 1.18.62; 1.18.64;
ANSIfy another 1261 function definitions.
The only ones left in sys are beyond by sed script!
(or in sys/dist or sys/external)
Mostly they have function pointer parameters.
 1.17 14-Mar-2009  dsl Change about 4500 of the K&R function definitions to ANSI ones.
There are still about 1600 left, but they have ',' or /* ... */
in the actual variable definitions - which my awk script doesn't handle.
There are also many that need () -> (void).
(The script does handle misordered arguments.)
 1.16 24-Dec-2005  perry branches: 1.16.78; 1.16.86; 1.16.92;
bare asm -> __asm
 1.15 24-Dec-2005  perry Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.14 11-Dec-2005  christos merge ktrace-lwp.
 1.13 12-Mar-2004  wrstuden branches: 1.13.16;
Fix ofwboot to deal with larger kernels. Rather than loading at
0x6?0000, load at 0xe00000. This gives us room for around 13 MB of
kernel, as opposed to the current 5 MB (0x600000 - 0x100000).

No changes to load-base or real-base are needed due to this change,
though machines that needed specific OFW settings before (OF 1.x
and 2.x) this change still need those settings.

Partially revert revision 1.25 -> 1.26 of ofwboot/Makefile & friends.
We do not need to distinguish between where ofwboot and ofwboot.{elf,xcf}
load; they are both fine loading somewhere other than load-base.
 1.12 20-Oct-2003  matt Reorganize the way powerpc port install machine specific headers.
Use <powerpc/oea/bat.h> exclusively and remove <machine/bat.h> and
<powerpc/bat.h>. Remove unneeded <machine/cpufunc.h>. To insure
1:1 correspondence of <powerpc/FOO.h> to <machine/FOO.h> include
"../../powerpc/include/Makefile" in "arch/FOO/include/Makefile".
Incororpate <byte_swap.h> into <bswap.h> and then byte_swap.h
 1.11 28-Feb-2003  matt branches: 1.11.2;
Make this play with gcc 3.3. Add -ffreestanding. Cleanup bootxx.
 1.10 31-Oct-2002  matt Convert to register prefixes. Use ANSI string concatenation for
multiline asm strings.
 1.9 18-May-2002  lukem minor cosmetic tweaks:
- put \r\n before OF_open message
- use '0' + i % 10 instead of 'A' + i to print the read block number
 1.8 17-May-2002  lukem Fixes from Bill Studenmund and Allen Briggs:
- setup a 32KB (+32byte) stack, instead of 4KB stack
- cache flush: use _start instead of 0x4000, and flush 2k instead of 1k

Features (by me):
- implement:
OF_write() (and grab "stdout" from "/chosen")
putstrn(s,n) using OF_write(); write string s of n bytes long
putstr(s); write fixed-sized string s
putc(c); write char c
- add some useful messages which output the status of loading the
stage 2 bootstrap (which is usually ofwboot)

This code now works on Bill's Beige G3!
 1.7 16-May-2002  wrstuden Adjust how we set up our stack. According to the ABI, we store the
return pc address at (r1). So don't initialize r1 to be outside our
stack area. Scooted it in 16 bytes to help alignment.
 1.6 15-May-2002  lukem branches: 1.6.2;
convert to using shared_bbinfo from <sys/bootblock.h>, and install as an
"${OBJCOPY} -O binary ..." program (rather than as ELF)
 1.5 22-Dec-1999  thorpej branches: 1.5.8; 1.5.12;
Update for BAT{U,L}() changes.
 1.4 13-Jul-1998  tsubai branches: 1.4.14;
* Use "boot-device" if "bootpath" is not set.
* Reduce code size.
 1.3 02-Jul-1998  tsubai Reduce flushcache'd area.
 1.2 26-Jun-1998  tsubai Change load address of ofwboot for large (md root) kernel.
 1.1 12-Jun-1998  tsubai Add primary boot (bootxx) and installboot command.
 1.4.14.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.5.12.2 11-Nov-2002  nathanw Catch up to -current
 1.5.12.1 20-Jun-2002  nathanw Catch up to -current.
 1.5.8.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.6.2.1 30-May-2002  gehenna Catch up with -current.
 1.11.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.11.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.11.2.1 03-Aug-2004  skrll Sync with HEAD
 1.13.16.1 21-Jun-2006  yamt sync with head.
 1.16.92.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.16.86.1 28-Apr-2009  skrll Sync with HEAD.
 1.16.78.1 04-May-2009  yamt sync with head.
 1.18.64.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.18.64.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.18.64.1 10-Jun-2019  christos Sync with HEAD
 1.18.62.1 26-Nov-2018  pgoyette Sync with HEAD, resolve a couple of conflicts
 1.20.2.1 25-Jan-2020  ad Sync with head.

RSS XML Feed