clear.S 522 B

12345678910111213141516171819
  1. /*
  2. * Code to call _setup_L2CR to flus, invalidate and disable the L2,
  3. * and if present, do the same to the L3.
  4. */
  5. #define CLEAR_CACHES \
  6. bl _setup_L2CR; \
  7. \
  8. /* If 745x, turn off L3CR as well */ \
  9. mfspr r8,SPRN_PVR; \
  10. srwi r8,r8,16; \
  11. \
  12. cmpli cr0,r8,0x8000; /* 7450 */ \
  13. cmpli cr1,r8,0x8001; /* 7455 */ \
  14. cmpli cr2,r8,0x8002; /* 7457 */ \
  15. /* Now test if any are true. */ \
  16. cror 4*cr0+eq,4*cr0+eq,4*cr1+eq; \
  17. cror 4*cr0+eq,4*cr0+eq,4*cr2+eq; \
  18. beql _setup_L3CR