Module Name: src
Committed By: rin
Date: Tue Mar 2 07:27:24 UTC 2021
Modified Files:
src/sys/arch/evbppc/obs405: obs600_autoconf.c obs600_machdep.c
Log Message:
Invoke calc_delayconst() before read_eeprom(), which uses delay(9).
Fix unintended looong waiting time during boot.
To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/evbppc/obs405/obs600_autoconf.c
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/evbppc/obs405/obs600_machdep.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/evbppc/obs405/obs600_autoconf.c
diff -u src/sys/arch/evbppc/obs405/obs600_autoconf.c:1.9 src/sys/arch/evbppc/obs405/obs600_autoconf.c:1.10
--- src/sys/arch/evbppc/obs405/obs600_autoconf.c:1.9 Tue Mar 2 07:21:01 2021
+++ src/sys/arch/evbppc/obs405/obs600_autoconf.c Tue Mar 2 07:27:24 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: obs600_autoconf.c,v 1.9 2021/03/02 07:21:01 rin Exp $ */
+/* $NetBSD: obs600_autoconf.c,v 1.10 2021/03/02 07:27:24 rin Exp $ */
/*
* Copyright 2004 Shigeyuki Fukushima.
@@ -33,7 +33,7 @@
* DAMAGE.
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: obs600_autoconf.c,v 1.9 2021/03/02 07:21:01 rin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: obs600_autoconf.c,v 1.10 2021/03/02 07:27:24 rin Exp $");
#include "dwctwo.h"
@@ -101,8 +101,6 @@ cpu_configure(void)
pic_add(&pic_uic1);
pic_add(&pic_uic2);
- calc_delayconst();
-
/* Make sure that timers run at CPU frequency */
mtdcr(DCR_CPC0_CR1, mfdcr(DCR_CPC0_CR1) & ~CPC0_CR1_CETE);
Index: src/sys/arch/evbppc/obs405/obs600_machdep.c
diff -u src/sys/arch/evbppc/obs405/obs600_machdep.c:1.10 src/sys/arch/evbppc/obs405/obs600_machdep.c:1.11
--- src/sys/arch/evbppc/obs405/obs600_machdep.c:1.10 Sun Jul 15 05:16:42 2018
+++ src/sys/arch/evbppc/obs405/obs600_machdep.c Tue Mar 2 07:27:24 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: obs600_machdep.c,v 1.10 2018/07/15 05:16:42 maxv Exp $ */
+/* $NetBSD: obs600_machdep.c,v 1.11 2021/03/02 07:27:24 rin Exp $ */
/* Original: md_machdep.c,v 1.3 2005/01/24 18:47:37 shige Exp $ */
/*
@@ -68,7 +68,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: obs600_machdep.c,v 1.10 2018/07/15 05:16:42 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: obs600_machdep.c,v 1.11 2021/03/02 07:27:24 rin Exp $");
#include "opt_compat_netbsd.h"
#include "opt_ddb.h"
@@ -206,10 +206,6 @@ cpu_startup(void)
*/
board_info_init();
- read_eeprom(sizeof(buf), buf);
- macaddr = &buf[0];
- macaddr1 = &buf[8];
-
/*
* Now that we have VM, malloc()s are OK in bus_space.
*/
@@ -228,8 +224,14 @@ cpu_startup(void)
panic("setting mem-size");
prop_object_release(pn);
+ calc_delayconst(); /* required by read_eeprom() */
+
#define ETHER_ADDR_LEN 6
+ read_eeprom(sizeof(buf), buf);
+ macaddr = &buf[0];
+ macaddr1 = &buf[8];
+
pd = prop_data_create_data_nocopy(macaddr, ETHER_ADDR_LEN);
KASSERT(pd != NULL);
if (prop_dictionary_set(board_properties, "emac0-mac-addr", pd) ==