Revert part of r306065
This is a separate change I was testing.
This commit is contained in:
parent
66ee57c162
commit
cf8ec4e3c3
@ -99,7 +99,6 @@ ofw_restore_trap_vec(char *restore_trap_vec)
|
|||||||
/*
|
/*
|
||||||
* Saved SPRG0-3 from OpenFirmware. Will be restored prior to the callback.
|
* Saved SPRG0-3 from OpenFirmware. Will be restored prior to the callback.
|
||||||
*/
|
*/
|
||||||
#ifndef __powerpc64__
|
|
||||||
register_t ofw_sprg0_save;
|
register_t ofw_sprg0_save;
|
||||||
|
|
||||||
static __inline void
|
static __inline void
|
||||||
@ -141,8 +140,6 @@ ofw_sprg_restore(void)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
parse_ofw_memory(phandle_t node, const char *prop, struct mem_region *output)
|
parse_ofw_memory(phandle_t node, const char *prop, struct mem_region *output)
|
||||||
{
|
{
|
||||||
@ -347,12 +344,11 @@ OF_initial_setup(void *fdt_ptr, void *junk, int (*openfirm)(void *))
|
|||||||
ofmsr[0] = mfmsr();
|
ofmsr[0] = mfmsr();
|
||||||
#ifdef __powerpc64__
|
#ifdef __powerpc64__
|
||||||
ofmsr[0] &= ~PSL_SF;
|
ofmsr[0] &= ~PSL_SF;
|
||||||
#else
|
#endif
|
||||||
__asm __volatile("mfsprg0 %0" : "=&r"(ofmsr[1]));
|
__asm __volatile("mfsprg0 %0" : "=&r"(ofmsr[1]));
|
||||||
__asm __volatile("mfsprg1 %0" : "=&r"(ofmsr[2]));
|
__asm __volatile("mfsprg1 %0" : "=&r"(ofmsr[2]));
|
||||||
__asm __volatile("mfsprg2 %0" : "=&r"(ofmsr[3]));
|
__asm __volatile("mfsprg2 %0" : "=&r"(ofmsr[3]));
|
||||||
__asm __volatile("mfsprg3 %0" : "=&r"(ofmsr[4]));
|
__asm __volatile("mfsprg3 %0" : "=&r"(ofmsr[4]));
|
||||||
#endif
|
|
||||||
openfirmware_entry = openfirm;
|
openfirmware_entry = openfirm;
|
||||||
|
|
||||||
if (ofmsr[0] & PSL_DR)
|
if (ofmsr[0] & PSL_DR)
|
||||||
@ -444,9 +440,7 @@ openfirmware_core(void *args)
|
|||||||
*/
|
*/
|
||||||
oldmsr = intr_disable();
|
oldmsr = intr_disable();
|
||||||
|
|
||||||
#ifndef __powerpc64__
|
|
||||||
ofw_sprg_prepare();
|
ofw_sprg_prepare();
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Save trap vectors */
|
/* Save trap vectors */
|
||||||
ofw_save_trap_vec(save_trap_of);
|
ofw_save_trap_vec(save_trap_of);
|
||||||
@ -469,9 +463,7 @@ openfirmware_core(void *args)
|
|||||||
/* Restore trap vecotrs */
|
/* Restore trap vecotrs */
|
||||||
ofw_restore_trap_vec(save_trap_of);
|
ofw_restore_trap_vec(save_trap_of);
|
||||||
|
|
||||||
#ifndef __powerpc64__
|
|
||||||
ofw_sprg_restore();
|
ofw_sprg_restore();
|
||||||
#endif
|
|
||||||
|
|
||||||
intr_restore(oldmsr);
|
intr_restore(oldmsr);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user