diff --git a/stand/powerpc/ofw/main.c b/stand/powerpc/ofw/main.c index 34c7e12778e..093dda27ae0 100644 --- a/stand/powerpc/ofw/main.c +++ b/stand/powerpc/ofw/main.c @@ -35,7 +35,21 @@ #include #include -struct arch_switch archsw; /* MI/MD interface boundary */ +#ifdef CAS +static int ppc64_autoload(void); +#endif + +struct arch_switch archsw = { /* MI/MD interface boundary */ + .arch_getdev = ofw_getdev, + .arch_copyin = ofw_copyin, + .arch_copyout = ofw_copyout, + .arch_readin = ofw_readin, +#ifdef CAS + .arch_autoload = ppc64_autoload, +#else + .arch_autoload = ofw_autoload, +#endif +}; uint32_t acells, scells; @@ -163,15 +177,8 @@ main(int (*openfirm)(void *)) */ cons_probe(); - archsw.arch_getdev = ofw_getdev; - archsw.arch_copyin = ofw_copyin; - archsw.arch_copyout = ofw_copyout; - archsw.arch_readin = ofw_readin; #ifdef CAS setenv("cas", "1", 0); - archsw.arch_autoload = ppc64_autoload; -#else - archsw.arch_autoload = ofw_autoload; #endif /* Set up currdev variable to have hooks in place. */