- make a bootloader pass bootpath which includes device path on ARC BIOS
via BTINFO_BOOTPATH
- make a kernel use BTINFO_BOOTPATH in bootinfo to see boot device first,
then check argv[0] passed from ARC BIOS if there is no valid bootinfo
- check OSLoadPartition variables in the ARCBIOS environment and whole
argv[] arguments for IP12
- initialize mach_type before it's referred
- bump boot version
Tested on IP32 with various kernel/bootloader combinations.
as per the ARC specification. They are actually 64bit on MIPS64 based
machines and our paddr_t is not equal to pointer size.
(arc is ILP32 but has 64bit paddr_t)
- While here, change some unsigned long to u_long for consistency.
* if loading from cdrom, assume we're performing an install and
fix up bootpath/kernel to load the proper install kernel.
* maximum filename length in volume header is eight characters.
Change boot.elf to ip2xboot, boot.ip32 to ip3xboot, and boot
to aoutboot (which matches kernel naming scheme as well).
for a boot device type; this gets the boot.ip32 booting a kernel off disk.
While here remove some unrolled string compares in favor of strncmp() to
make code more readable.
info along to the kernel (currently just the symbol table info).
- Don't bother with the startprog dance; we don't need to do anything
special, here, so just call the entry point directly.
- A bunch of random cleanup.