History log of /src/sys/arch/luna68k/stand/boot/init_main.c |
Revision | | Date | Author | Comments |
1.17 |
| 24-Sep-2024 |
rin | luna68k: stand: Silence GCC12 -Warray-bounds for main()
- LUNA1_BOOTINFOADDR (0x8c0) is in the 0-th page [0, 0x1000), which causes -Warray-bounds for GCC12 and later. - LUNA2_BOOTINFOADDR (0x1d80) is also in the 0-th page, if we switch to 8KB page.
Fix luna68k build with GCC12.
|
1.16 |
| 14-Feb-2015 |
tsutsui | branches: 1.16.54; Explicitly denote static functions.
|
1.15 |
| 21-Apr-2014 |
tsutsui | branches: 1.15.4; Fix stupid botches in previous.
Use a proper device unit number if a unit number or non-default device is specified on the boot command.
|
1.14 |
| 16-Apr-2014 |
tsutsui | Use booted device unit if no unit number is specified on boot command.
Bump version to denote a visible change.
|
1.13 |
| 11-Jan-2014 |
tsutsui | branches: 1.13.2; Misc KNF and cosmetics.
|
1.12 |
| 11-Jan-2014 |
tsutsui | ctually remove all references to obsolete stinger.h.
|
1.11 |
| 11-Jan-2014 |
tsutsui | Remove unused KernInter stuff.
|
1.10 |
| 11-Jan-2014 |
tsutsui | Add support to pass boothowto and bootdev info from bootloader to kernel.
Bootloader side changes: - make boot command parse boothowto flags (-ads etc.) - pass boothowto and bootdev info to the kernel via %d7 and %d6 as the old 4.4BSD/luna68k kernel expected - remove unused and now unnecessary "howto" (how_to_boot) command - export and tweak make_device() in devopen.c to prepare bootdev info - remove unused and commented out get_boot_device()
|
1.9 |
| 10-Jan-2014 |
tsutsui | Reorgenize boot device configuration. The idea is taken from OpenBSD/luna88k.
- remove kernel-like autoconfiguration to probe bootable devices - initialize SCSI and Ethernet controllers statically instead - reorganize device softc structures per autoconf removal - probe and print all SCSI disks (but don't assign unit numbers) - make sdopen() to recheck the device and allocate softc dynamically - use controller number and SCSI target ID (ctlr * 10 + id) to specify the boot disk on the "boot" command arg - bump version to denote changes
Now bootloader works as the following: --- >> NetBSD/luna68k boot, Revision 1.8 (Wed Jan 8 22:13:12 JST 2014) >> (based on Stinger ver 0.0 [Phase-31])
Machine model = LUNA-II Physical Memory = 0x4000000 (64 MB)
sc0 at 0xe1000000: async, parity, ID 7 ID 3: TEAC FC-1 HGF 10 rev , 512 bytes/sect x 2879 sectors ID 6: IBM DPES-31080 rev S31Q, 512 bytes/sect x 2118143 sectors sc1 at 0xe1000040: async, parity, ID 7 ID 6: MELCO DSC-G rev 1.00, 512 bytes/sect x 62533295 sectors le0: Am7990 LANCE Ethernet, mem at 0x71010000 le0: Ethernet address = 00:00:0a:03:42:77
Press return to boot now, any other key for boot menu booting sd(16,0)netbsd - starting in 0 seconds. auto-boot sd(16,0)netbsd 1911696+96040 [280480+159179]=0x255a30 :
|
1.8 |
| 05-Jan-2014 |
tsutsui | Detect boot device on PROM load command and set proper default boot device.
Also remove now unnecessary the old netboot check.
Note all addresses of boot device info set by monitor are checked by memory dump on several LUNA ROM versions, and these addres might be different on earlier monitor ROM versions.
Bump version to denote the visible change.
|
1.7 |
| 03-Jan-2014 |
tsutsui | Pull more fixes from OpenBSD/luna88k:
- Bring getline() - a.k.a libsa gets() with a prompt prefix - in par with libsa gets(), featurewise; this means support for ^u to clear the input. - constify
|
1.6 |
| 05-Mar-2013 |
tsutsui | branches: 1.6.6; Check netboot and set proper default boot device. Also bump version.
|
1.5 |
| 21-Jan-2013 |
tsutsui | branches: 1.5.2; 1.5.6; Add support for "await key" to abort autoboot and get boot menu. Also add command help. Bump version.
|
1.4 |
| 20-Jan-2013 |
tsutsui | No need to include <sys/systm.h> in standalone sources.
|
1.3 |
| 13-Jan-2013 |
tsutsui | Add netboot support. Based on ews4800mips, mvme68k, and x68k standalone drivers. Also bump version.
Tested on LUNA-I.
XXX: We really need proper documents about libsa APIs.
|
1.2 |
| 12-Jan-2013 |
tsutsui | Check cputype and set machine type (LUNA-I or LUNA-II). Tested on only LUNA-I for now.
|
1.1 |
| 05-Jan-2013 |
tsutsui | First cut at NetBSD/luna68k native bootloader.
Based on 4.4BSD-Lite2/luna68k "Stinger" loader revision "Phase-31" http://svnweb.freebsd.org/csrg/sys/luna68k/stand/ and MI libsa glue stuff are taken from hp300 etc.
Tested on LUNA-I and old DK315C SCSI disk drive.
LUNA's monitor PROM can load only an a.out binary in 4.3BSD FFS partition (i.e. created by "newfs -O 0") on disks with OMRON's UniOS disklabel, but now we can load an ELF kernel in root partition via this bootloader. (See luna68k/disksubr.c for details of UniOS label)
TODO: - LUNA-II support (check 68040 to adjust cpuspeed for DELAY()) - secondary SCSI support for LUNA-II - netboot via le(4) (should be trivial) - support boot options on bootloader prompt - bootinfo (passing info about booted device and kernel symbols) - support "press return to boot now, any other key for boot menu" method like x86 bootloader (needs cnscan() like functions) - tapeboot (anyone wants it?)
|
1.5.6.5 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.5.6.4 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.5.6.3 |
| 23-Jun-2013 |
tls | resync from head
|
1.5.6.2 |
| 25-Feb-2013 |
tls | resync with head
|
1.5.6.1 |
| 21-Jan-2013 |
tls | file init_main.c was added on branch tls-maxphys on 2013-02-25 00:28:49 +0000
|
1.5.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.5.2.2 |
| 23-Jan-2013 |
yamt | sync with head
|
1.5.2.1 |
| 21-Jan-2013 |
yamt | file init_main.c was added on branch yamt-pagecache on 2013-01-23 00:05:53 +0000
|
1.6.6.1 |
| 18-May-2014 |
rmind | sync with head
|
1.13.2.1 |
| 10-Aug-2014 |
tls | Rebase.
|
1.15.4.1 |
| 06-Apr-2015 |
skrll | Sync with HEAD
|
1.16.54.1 |
| 02-Aug-2025 |
perseant | Sync with HEAD
|