PR_PCSTS
if (mfpr(PR_PCSTS) & KA43_PCS_TRAP2) {
snprintb(sbuf, sizeof(sbuf), KA43_PCSTS_BITS, mfpr(PR_PCSTS));
snprintb(sbuf, sizeof(sbuf), KA43_PCSTS_BITS, mfpr(PR_PCSTS));
mtpr(KA43_PCS_REFRESH, PR_PCSTS); /* disable primary cache */
val = mfpr(PR_PCSTS);
mtpr(val, PR_PCSTS); /* clear error flags */
mtpr(val, PR_PCSTS); /* flush primary cache */
mtpr(val, PR_PCSTS); /* flush primary cache */
mtpr(val, PR_PCSTS); /* enable primary cache */
mtpr(PCSTS_FLUSH, PR_PCSTS); /* primary */
mtpr(PCSTS_ENABLE, PR_PCSTS);
mtpr(KA670_PCS_REFRESH, PR_PCSTS); /* disable primary cache */
mtpr(mfpr(PR_PCSTS), PR_PCSTS); /* clear error flags */
mtpr(KA670_PCS_FLUSH | KA670_PCS_REFRESH, PR_PCSTS); /* flush primary cache */
mtpr(KA670_PCS_ENABLE | KA670_PCS_REFRESH, PR_PCSTS); /* flush primary cache */
if (mfpr(PR_PCSTS) & KA670_PCS_TRAP2) {
snprintb(sbuf, sizeof(sbuf), KA670_PCSTS_BITS, mfpr(PR_PCSTS));
mtpr(KA670_PCS_REFRESH, PR_PCSTS); /* disable primary cache */
val = mfpr(PR_PCSTS);
mtpr(val, PR_PCSTS); /* clear error flags */
mtpr(KA670_PCS_FLUSH | KA670_PCS_REFRESH, PR_PCSTS); /* flush primary cache */
mtpr(KA670_PCS_ENABLE | KA670_PCS_REFRESH, PR_PCSTS); /* flush primary cache */
snprintb(sbuf, sizeof(sbuf), KA670_PCSTS_BITS, mfpr(PR_PCSTS));