Home | History | Annotate | Download | only in xxboot
History log of /src/sys/arch/x68k/stand/xxboot/Makefile.xxboot
RevisionDateAuthorComments
 1.21  07-Jan-2024  isaki TAB/space/indent cleanup.
 1.20  25-Apr-2022  mlelstv libsa now needs ioctl to support media with large sectors. Provide
missing functions.

libsa defines files[] array itself, just reference it.
This also adds another global variable that tracks the root
filesystem module.
 1.19  04-Feb-2022  isaki Add missing -m68020-60 option. This makes xxboot_ustarfs work even on 68060.
Problem reported by Makoto Kamada. Confirmed on XEiJ (68060 mode).
 1.18  16-Aug-2020  isaki Overhaul xxboot. And merge floppy boot, taken from boot_ustar.
- Rewrite boot.S completely.
boot.S now supports boot from SCSI HD/CD and floppy.
- Use IOCS call to identify the floppy format, instead of chkfmt.s which
accesses hardware directly.
- Import print_hex() debug function from boot_ufs.
- Import a feature that displays initial registers (for debug) from boot_ufs,
and restore it (this in boot_ufs has been broken).
- Add size optimized alternatives for some libkern routines.
- Stop linking libsa to prevent to link unexpected objects.
- Bump version to 2.0.
 1.17  14-Aug-2020  isaki Reduce binary size as possible. These reduce filesize about 20 words.
- Use word alignment (rather than longword alignment) for text/data section.
- Use short reference. In the bootloader, all symbols can be expressed in
short.
 1.16  14-Aug-2020  isaki Use fixed 'xx' instead of DEV and DEVDRV for simplicity.
There is no choice other than xx for now.
 1.15  14-Aug-2020  isaki Style fixes. One entry per line for some parts.
 1.14  14-Aug-2020  isaki - Restore display of first_kbyte. This is helpful for development.
- Check the filesize of resulting file instead of section sizes.
If there is a gap between sections, the filesize may be exceeded even
though the section total is not exceeded. Of course that doesn't
usually happen but I've experienced this during development.
 1.13  10-Aug-2020  rin Make x68k/stand compile with GCC8. Tested with XEiJ.
 1.12  28-Jan-2020  isaki Set heap area explicitly.
Until the load address was moved, the heap was placed at _end (it's default)
and it was large space. After moving, this default space was too small.
 1.11  18-Jan-2020  isaki Check whether the text+data+bss doesn't reach 0x6000 where secondary
bootloader should be.
 1.10  18-Jan-2020  isaki Use ASSERT() in ldscript to check first_kbyte (etc) restrictions,
rather than complicated shell expressions in Makefile.
 1.9  18-Jan-2020  isaki Change primary bootloader's load address from 0x0f0000 to 0x003000.
- Moving addresses closer eliminates bunch of this linker errors:
in function `entry0':
relocation truncated to fit: R_68K_16 against `edata'+ffffffffffff8000
:
- By this change, harmful -noinhibit-exec option can also be removed.
Finally, we can break the builds when assemble error occurs!
- Load address of secondary is 0x6000, so that this change limits
text+data+bss 12KB or less. Current actual size is 5~7KB.
I think it should be fine.
- cd9660 can have up to 30KB text+data in its bootarea. Even in this
case, this change limits text+data+bss 12KB or less (currently, it's
about 6KB). However, I take breaking the builds on errors rather than
future size limitation.
There is no user visible changes or interface changes.
 1.8  18-Jan-2020  isaki Add 0x prefix when defining variables, not when using it.
This was necessary for bc(1) but it's no longer necessary.
 1.7  18-Jan-2020  isaki Pass address constants from Makefile to ldscript.
 1.6  16-Jan-2020  isaki Rewrite limit check using cross-build tools.
This eliminates use of hosts tr(1) and bc(1).
(But I'm going to remove this again soon due to other reason)
 1.5  16-Jan-2020  isaki Remove .else part of .if OBJECT_FMT == ELF.
All similar parts in other Makefiles are removed in 2010.
 1.4  08-Apr-2017  christos branches: 1.4.14; 1.4.20;
centralize vers.c building for standalone programs.
 1.3  08-Aug-2014  isaki branches: 1.3.4; 1.3.8; 1.3.12;
Remove OBJCOPY?=objcopy.
Falling back to the hosttool is not a good way now.
 1.2  12-Aug-2013  joerg branches: 1.2.2;
Build boot loaders without unwind tables.
 1.1  20-Mar-2012  minoura branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8;
Initial support for xxboot (cdboot_cd9660, specifically).
 1.1.8.1  28-Aug-2013  rmind sync with head
 1.1.6.2  18-Nov-2012  riz Pull up following revision(s) (requested by tsutsui in ticket #645):
sys/arch/x68k/stand/newdisk/newdisk.c: revision 1.10
sys/arch/x68k/stand/xxboot/xxboot_ffsv1/Makefile: revision 1.1
sys/arch/x68k/stand/xxboot/xx.c: revision 1.1
sys/arch/x68k/stand/Makefile: revision 1.10
sys/arch/x68k/stand/Makefile: revision 1.11
sys/arch/x68k/stand/boot/conf.c: revision 1.9
sys/arch/x68k/stand/Makefile: revision 1.12
sys/arch/x68k/stand/Makefile: revision 1.13
sys/arch/x68k/include/loadfile_machdep.h: revision 1.7
sys/arch/x68k/stand/xxboot/consio1.c: revision 1.1
sys/arch/x68k/stand/libsa/sdcd.c: revision 1.12
sys/arch/x68k/stand/libsa/libx68k.h: revision 1.6
sys/arch/x68k/stand/boot/ne.c: revision 1.1
sys/arch/x68k/stand/xxboot/boot.S: revision 1.1
sys/arch/x68k/stand/libsa/sdcd.c: revision 1.13
sys/arch/x68k/stand/netboot/boot.c: revision 1.1
sys/arch/x68k/stand/libsa/devopen.c: revision 1.6
sys/arch/x68k/stand/libsa/clock.c: revision 1.1
sys/arch/x68k/stand/boot/ne.h: revision 1.1
sys/arch/x68k/stand/netboot/conf.c: revision 1.1
sys/arch/x68k/stand/boot/version: revision 1.5
sys/arch/x68k/stand/boot/version: revision 1.6
sys/arch/x68k/stand/netboot/version: revision 1.1
sys/arch/x68k/stand/xxboot/Makefile.xxboot: revision 1.1
sys/arch/x68k/stand/boot/if_ne.c: revision 1.1
sys/arch/x68k/stand/boot/dp8390.h: revision 1.1
sys/arch/x68k/stand/xxboot/xxboot_lfsv2/Makefile: revision 1.1
sys/arch/x68k/stand/boot/dp8390.c: revision 1.1
sys/arch/x68k/stand/xxboot/bootmain.c: revision 1.1
sys/arch/x68k/stand/installboot/installboot.c: revision 1.6
sys/arch/x68k/stand/xxboot/conf.c: revision 1.1
sys/arch/x68k/stand/xxboot/xxboot_lfsv1/Makefile: revision 1.1
sys/arch/x68k/stand/libsa/Makefile.inc: revision 1.2
distrib/sets/lists/base/md.x68k: revision 1.44
sys/arch/x68k/stand/boot/conf.c: revision 1.10
sys/arch/x68k/stand/boot/boot.ldscript: revision 1.3
distrib/sets/lists/base/md.x68k: revision 1.45
sys/arch/x68k/stand/xxboot/xxboot.ldscript: revision 1.1
sys/arch/x68k/stand/xxboot/Makefile: revision 1.15
sys/arch/x68k/stand/libsa/Makefile: revision 1.29
sys/arch/x68k/stand/xxboot/cdboot_cd9660/Makefile: revision 1.1
sys/arch/x68k/stand/netboot/Makefile: revision 1.1
sys/arch/x68k/stand/libsa/consio.c: revision 1.10
sys/arch/x68k/stand/xxboot/version: revision 1.1
sys/arch/x68k/stand/xxboot/xxboot_ffsv2/Makefile: revision 1.1
Comment fix.
Add FFSv2 support.
Fix CD support.
Initial support for xxboot (cdboot_cd9660, specifically).
Add xxboot (stage1) support.
put library first.
Fix CD support (again!).
Descend to xxboot.
Add xxboot_?fsv?.
Change to the 2-clauses license.
Tweak SUBDIR build order and add comments about each dir.
Fix a bug in check_getchar() (called from awaitkey_1sec()).
It didn't clear input key data when non ASCII keys (CTRL, OPT.1 etc)
were pressed so it couldn't detect further key inputs and
"any other key for boot menu" interrupt during boot didn't work
in that case.
The problem was tracked by Y.Sugahara,
and tested on X68030 and XM6i by me.
Bump version to denote check_getchar() bug fix.
First cut at x68k network bootloader via NE2000 on Neptune-X and Nereid.
Written by isaki@ back in 2003 based on x86's NE2000 netboot, and
misc debug and improvements by tsutsui@ and Y.Sugahara.
Tested on XM6i (emulating Nereid Ethernet) and X68030 + Neptune-X by me,
also on X68030 + Nereid and X68000 PRO-II + Xellent30 + Nereid by isaki@.
Note:
- X680x0 IPLROM doesn't support bootstrap from Neptune-X or Nereid,
so this network bootloader needs to be loaded from floppy or harddisk.
- Currently netboot support is not merged into the secondary Multi-boot
(/usr/mdec/boot) due to size restriction.
- Primary loaders assumes that the secondary bootloader name is /boot,
so /usr/mdec/netboot needs to be installed as /boot into the target
bootstrap device.
Add new /usr/mdec/netboot.
Check lp->d_npartitions before calling dkcksum()
(which is in src/sbin/disklabel/dkcksum.c) because
it doesn't check range and could cause coredump during
installboot against floppy that includes garbage in LABELSECTOR.
 1.1.6.1  20-Mar-2012  riz file Makefile.xxboot was added on branch netbsd-6 on 2012-11-18 19:05:17 +0000
 1.1.4.2  03-Dec-2017  jdolecek update from HEAD
 1.1.4.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.2.3  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.1.2.2  17-Apr-2012  yamt sync with head
 1.1.2.1  20-Mar-2012  yamt file Makefile.xxboot was added on branch yamt-pagecache on 2012-04-17 00:07:03 +0000
 1.2.2.1  10-Aug-2014  tls Rebase.
 1.3.12.1  21-Apr-2017  bouyer Sync with HEAD
 1.3.8.1  26-Apr-2017  pgoyette Sync with HEAD
 1.3.4.1  28-Aug-2017  skrll Sync with HEAD
 1.4.20.3  29-Feb-2020  ad Sync with head.
 1.4.20.2  25-Jan-2020  ad Sync with head.
 1.4.20.1  17-Jan-2020  ad Sync with head.
 1.4.14.1  08-Apr-2020  martin Merge changes from current as of 20200406

RSS XML Feed