The CAS (Client-Architecture Support) call tells firmware what capabilities the
OS has.  These capabilities result in different modes which the device-tree is
configured in, as well as what processor capabilities are presented.  So, if
the capabilities are different from what was previously booted, firmware has to
reboot to reconfigure the device-tree.  The second boot will have the updated
device-tree and we can boot as normal.

When this firmware initiated reboot occurs yaboot will now boot the same kernel
as the previous boot attempt with no action by the user needed.  I have
successfully booted on POWER5 and POWER6 machines using various levels of the
kernel.

Patch from: Mike Wolf <mjw@linux.vnet.ibm.com>
2 files changed