Home | History | Annotate | Download | only in ofwboot
History log of /src/sys/arch/sparc/stand/ofwboot/loadfile_machdep.c
RevisionDateAuthorComments
 1.17  29-Apr-2022  rin Fix fallout from libsa change; stand.h includes <sys/param.h> now.

- Stop redefining roundup2().
- Compare kvamap->start (uint64_t) with 0 instead of NULL.
- Include <sys/param.h> explicitly.

Thanks gson@ for notification.
 1.16  04-Nov-2016  macallan fix remaining *_TSB_DATA() uses
 1.15  15-Aug-2016  maxv Uninitialized var, found by brainy; not tested, but obvious enough
 1.14  14-Jun-2015  martin branches: 1.14.2;
Fix available length calculation in kvamap_extract when reusing existing
mappings.
 1.13  21-Apr-2014  palle branches: 1.13.2; 1.13.4;
sun4v: Update TTE data in sparc64_finalize_tlb_sun4v() - sun4v has no L (locked) bit + ensure that the ITLB has the EP (executable) bit set
 1.12  21-Feb-2014  palle branches: 1.12.2;
sun4v: Rename TLB_ defines to SUN4U_TLB_ so entries created using TSB_DATA() are properly setup for sun4u and sun4v. Relocate the cputyp variable from autoconf.c to locore.s and make it const in param.h so optimized code can be generated. Parts from OpenBSD. Optimization suggested by nakayama@. OK martin@, mrg@, nakayama@
 1.11  08-Dec-2013  palle Add support for running ofwboot on sun4v. Please note that the kernel on sun4v will be loaded properly but when the kernel takes over it will crash immediately since the kernel is not sun4v ready yet
 1.10  21-May-2011  nakayama branches: 1.10.4; 1.10.14; 1.10.18;
Fix debug build.
 1.9  21-May-2011  tsutsui WARNSfy and fix dumb bugs noticed by warnings.
 1.8  20-May-2011  he Put the external functions from net.c in it's own header file and
include it, and do some other minimal adjustments to bring this
back to a buildable state.

OK'ed by martin@
 1.7  18-May-2009  nakayama branches: 1.7.4; 1.7.6;
Make ofwboot can handle over 4GB physical memory by using OpenFirmware
calls properly, and some cosmetic changes. Idea from OpenBSD.
 1.6  25-Aug-2008  martin branches: 1.6.4; 1.6.14; 1.6.18;
Deal with kernels that have a combined text/data segment. Output a big
warning when booting them.
 1.5  28-Apr-2008  martin branches: 1.5.2; 1.5.6;
Remove clause 3 and 4 from TNF licenses
 1.4  17-Oct-2007  garbled branches: 1.4.16; 1.4.18; 1.4.20;
Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree. Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches. The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
 1.3  05-Jun-2007  martin branches: 1.3.10;
Use the new loadfile() marker MARK_DATA to optimize the loaded kernel
mappings before calling the entry point - change text mappings to read
only and only insert those into the iTLB.
While there remove a few magic constants by information queried from
the firmware.
 1.2  04-Mar-2006  uwe branches: 1.2.12; 1.2.26; 1.2.28; 1.2.34;
s/u_intN_t/uintN_t/
 1.1  27-Jan-2006  cdi branches: 1.1.2; 1.1.4; 1.1.6;
Alter sparc64 bootstrap:

- Map kernel with permanent 4MB pages to ease kernel's life
- Pass mappings down to the kernel as part of bootinfo structure
- Try to detect whether kernel is aware of the new boot scheme or not and
in the former case map the kernel using OpenFirmware and do not pass
bootinfo structure
- Provide -C switch to force compatibility mode if autodetection fails
- While on this, fix PR #25763: If load of default kernel fails, try one by
one those specified in compiled-in list

Much inspired by the bootloader of FreeBSD, with some imported code from there.
 1.1.6.1  22-Apr-2006  simonb Sync with head.
 1.1.4.2  01-Feb-2006  yamt sync with head.
 1.1.4.1  27-Jan-2006  yamt file loadfile_machdep.c was added on branch yamt-uio_vmspace on 2006-02-01 14:51:37 +0000
 1.1.2.1  09-Sep-2006  rpaulo sync with head
 1.2.34.1  26-Jun-2007  garbled Sync with HEAD.
 1.2.28.1  11-Jul-2007  mjf Sync with head.
 1.2.26.1  09-Jun-2007  ad Sync with head.
 1.2.12.3  03-Sep-2007  yamt sync with head.
 1.2.12.2  21-Jun-2006  yamt sync with head.
 1.2.12.1  04-Mar-2006  yamt file loadfile_machdep.c was added on branch yamt-lazymbuf on 2006-06-21 14:56:40 +0000
 1.3.10.1  06-Nov-2007  matt sync with HEAD
 1.4.20.3  20-Jun-2009  yamt sync with head
 1.4.20.2  04-May-2009  yamt sync with head.
 1.4.20.1  16-May-2008  yamt sync with head.
 1.4.18.1  18-May-2008  yamt sync with head.
 1.4.16.2  28-Sep-2008  mjf Sync with HEAD.
 1.4.16.1  02-Jun-2008  mjf Sync with HEAD.
 1.5.6.1  19-Oct-2008  haad Sync with HEAD.
 1.5.2.1  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.6.18.1  26-Apr-2015  msaitoh Pullup another commit for ticket #1958 requested by martin:

sys/arch/sparc/include/openfirm.h 1.7
sys/arch/sparc/stand/ofwboot/Locore.c 1.11
sys/arch/sparc/stand/ofwboot/loadfile_machdep.c 1.7
sys/arch/sparc/stand/ofwboot/openfirm.h 1.4

Make ofwboot can handle over 4GB physical memory by using OpenFirmware
calls properly, and some cosmetic changes. Idea from OpenBSD.
 1.6.14.1  26-Apr-2015  msaitoh Pullup another commit for ticket #1958 requested by martin:

sys/arch/sparc/include/openfirm.h 1.7
sys/arch/sparc/stand/ofwboot/Locore.c 1.11
sys/arch/sparc/stand/ofwboot/loadfile_machdep.c 1.7
sys/arch/sparc/stand/ofwboot/openfirm.h 1.4

Make ofwboot can handle over 4GB physical memory by using OpenFirmware
calls properly, and some cosmetic changes. Idea from OpenBSD.
 1.6.4.1  19-Apr-2015  msaitoh Pullup another commit for ticket #1958 requested by martin:

sys/arch/sparc/include/openfirm.h 1.7
sys/arch/sparc/stand/ofwboot/Locore.c 1.11
sys/arch/sparc/stand/ofwboot/loadfile_machdep.c 1.7
sys/arch/sparc/stand/ofwboot/openfirm.h 1.4

Make ofwboot can handle over 4GB physical memory by using OpenFirmware
calls properly, and some cosmetic changes. Idea from OpenBSD.
 1.7.6.1  06-Jun-2011  jruoho Sync with HEAD.
 1.7.4.1  31-May-2011  rmind sync with head
 1.10.18.1  18-May-2014  rmind sync with head
 1.10.14.2  03-Dec-2017  jdolecek update from HEAD
 1.10.14.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.10.4.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.12.2.1  10-Aug-2014  tls Rebase.
 1.13.4.3  05-Dec-2016  skrll Sync with HEAD
 1.13.4.2  05-Oct-2016  skrll Sync with HEAD
 1.13.4.1  22-Sep-2015  skrll Sync with HEAD
 1.13.2.1  20-Jul-2015  snj Pull up following revision(s) (requested by martin in ticket #842):
sys/arch/sparc/stand/ofwboot/loadfile_machdep.c: revision 1.14
sys/arch/sparc/stand/ofwboot/version: revision 1.21
sys/arch/sparc64/include/cpu.h: revision 1.115
sys/arch/sparc64/sparc64/autoconf.c: revision 1.203
sys/arch/sparc64/sparc64/mp_subr.S: revision 1.9 via patch
sys/arch/sparc64/sparc64/pmap.c: revisions 1.295, 1.295 via patch
Fix available length calculation in kvamap_extract when reusing existing
mappings.
--
Bump version now that we can load kernels with sizeof(.data)+sizeof(.bss)> 4 MB
--
Do not hardcode the assumption that .data and .bss fit together in a single
4 MB page. This allows booting kernels with options USB_DEBUG again.
--
Slightly optimize the ITLB usage on secondary processors
 1.14.2.1  07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)

RSS XML Feed