Port-sparc64 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

ofwboot versions and upgrading



I am finding the ofwboot version situation a bit confusing.

I have an ultra5 with recent netbsd-3 on it.  I normally update machines
with INSTALL-NetBSD from etcmanage by booting the next branch kernel and
then updating userland.  It appears in this case that ofwboot/boot.c 1.9
which comes in netbsd-3 is before the critical update in 1.12, and that
netbsd-4 kernels rely on >= 1.12:

 revision 1.12
 date: 2006/01/27 18:31:11;  author: cdi;  state: Exp;  lines: +213 -305
 branches:  1.12.2;  1.12.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.


So, I need to install the ofwboot from netbsd-4.  But can this boot
netbsd-3 kernels?  All of the discussion I've found seems to say
"generally", and the critical questions are the following table:

ofwboot kernel  status
3       3       works (my machine to be upgraded is fine)
4       4       works (another of my machines)
3       4       fails, kernel complains about bootinfo
4       3       ???

What I would like to know is:

  If I put the netbsd-4 ofwboot in place on my netbsd-3 system, can I
  still boot the netbsd-3 kernel (netbsd.ok) if I need to?



I have installed bootblk from the head of the netbsd-3 branch.  Can
this load the netbsd-4 ofwboot?  Answer: the files /usr/mdec/bootblk
are byte-for-byte identical on netbsd-3 and netbsd-4, so sure.


Home | Main Index | Thread Index | Old Index