From patchwork Fri Jan 11 16:32:27 2008 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: use public interface to detect CAS reboots Date: Fri, 11 Jan 2008 06:32:27 -0000 From: Michael Wolf X-Patchwork-Id: 22964 Message-Id: <47879A1B.5080501@linux.vnet.ibm.com> To: yaboot-devel@ozlabs.org The firmware field used to detect CAS reboots (ibm,fw-nbr-reboots) is really a private field that could change without warning. A new field ibm,#reconfig-reboots will be added as a public interface intended to be used for this detection. The patch will first check for ibm,#reconfig-reboots if that is not found it will see if ibm,fw-nbr-reboots is present and will use that instead. ----- diff --git a/second/yaboot.c b/second/yaboot.c index 5fc1213..b52ced6 100644 --- a/second/yaboot.c +++ b/second/yaboot.c @@ -1694,6 +1694,7 @@ yaboot_main(void) char *endp; int conf_given = 0; char conf_path[1024]; + int ret; if (_machine == _MACH_Pmac) setup_display(); @@ -1702,7 +1703,8 @@ yaboot_main(void) DEBUG_F("/chosen/bootargs = %s\n", bootargs); prom_get_chosen("bootpath", bootdevice, BOOTDEVSZ); DEBUG_F("/chosen/bootpath = %s\n", bootdevice); - prom_get_options("ibm,fw-nbr-reboots",fw_nbr_reboots, FW_NBR_REBOOTSZ); + if (prom_get_options("ibm,#reconfig-reboots",fw_nbr_reboots, FW_NBR_REBOOTSZ) == -1 ) + prom_get_options("ibm,fw-nbr-reboots",fw_nbr_reboots, FW_NBR_REBOOTSZ); fw_reboot_cnt = simple_strtol(fw_nbr_reboots,&endp,10); if (fw_reboot_cnt > 0L) prom_get_options("boot-last-label", bootlastlabel, BOOTLASTSZ);