mirror of https://gitee.com/openkylin/linux.git
sparc: Consistently use 'wr' and 'rd' instructions for ASRs.
For consistency, don't use 'mov'. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
d6d88bae97
commit
598ec971dd
|
@ -55,15 +55,15 @@
|
|||
|
||||
/* The Get Condition Codes software trap for userland. */
|
||||
#define GETCC_TRAP \
|
||||
b getcc_trap_handler; mov %psr, %l0; nop; nop;
|
||||
b getcc_trap_handler; rd %psr, %l0; nop; nop;
|
||||
|
||||
/* The Set Condition Codes software trap for userland. */
|
||||
#define SETCC_TRAP \
|
||||
b setcc_trap_handler; mov %psr, %l0; nop; nop;
|
||||
b setcc_trap_handler; rd %psr, %l0; nop; nop;
|
||||
|
||||
/* The Get PSR software trap for userland. */
|
||||
#define GETPSR_TRAP \
|
||||
mov %psr, %i0; jmp %l2; rett %l2 + 4; nop;
|
||||
rd %psr, %i0; jmp %l2; rett %l2 + 4; nop;
|
||||
|
||||
/* This is for hard interrupts from level 1-14, 15 is non-maskable (nmi) and
|
||||
* gets handled with another macro.
|
||||
|
|
|
@ -48,7 +48,7 @@ void pmc_leon_idle_fixup(void)
|
|||
*/
|
||||
register unsigned int address = (unsigned int)leon3_irqctrl_regs;
|
||||
__asm__ __volatile__ (
|
||||
"mov %%g0, %%asr19\n"
|
||||
"wr %%g0, %%asr19\n"
|
||||
"lda [%0] %1, %%g0\n"
|
||||
:
|
||||
: "r"(address), "i"(ASI_LEON_BYPASS));
|
||||
|
@ -61,7 +61,7 @@ void pmc_leon_idle_fixup(void)
|
|||
void pmc_leon_idle(void)
|
||||
{
|
||||
/* For systems without power-down, this will be no-op */
|
||||
__asm__ __volatile__ ("mov %g0, %asr19\n\t");
|
||||
__asm__ __volatile__ ("wr %g0, %asr19\n\t");
|
||||
}
|
||||
|
||||
/* Install LEON Power Down function */
|
||||
|
|
Loading…
Reference in New Issue