Commit 7fd697fd54eabd3cfe28414d9c05f65c8cfd9585

Authored by Christophe Leroy
Committed by Tom Rini
1 parent 1e7cefef58

powerpc, 8xx: move get_immr() into C

Avoid unnecessary assembly functions when they can easily be written
in C.

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>

Showing 2 changed files with 8 additions and 16 deletions Side-by-side Diff

arch/powerpc/cpu/mpc8xx/start.S
... ... @@ -305,21 +305,6 @@
305 305 SYNC
306 306 rfi
307 307  
308   -/*
309   - * unsigned int get_immr (unsigned int mask)
310   - *
311   - * return (mask ? (IMMR & mask) : IMMR);
312   - */
313   - .globl get_immr
314   -get_immr:
315   - mr r4,r3 /* save mask */
316   - mfspr r3, IMMR /* IMMR */
317   - cmpwi 0,r4,0 /* mask != 0 ? */
318   - beq 4f
319   - and r3,r3,r4 /* IMMR & mask */
320   -4:
321   - blr
322   -
323 308 .globl get_pvr
324 309 get_pvr:
325 310 mfspr r3, PVR
arch/powerpc/include/asm/ppc.h
... ... @@ -38,8 +38,15 @@
38 38 #include <asm/arch/immap_lsch2.h>
39 39 #endif
40 40  
  41 +#include <asm/processor.h>
  42 +
41 43 #if defined(CONFIG_8xx)
42   -uint get_immr(uint);
  44 +static inline uint get_immr(uint mask)
  45 +{
  46 + uint immr = mfspr(SPRN_IMMR);
  47 +
  48 + return mask ? (immr & mask) : immr;
  49 +}
43 50 #endif
44 51 uint get_pvr(void);
45 52 uint get_svr(void);