The following patch is needed to properly wire the TLB entries on the newer 8xx processors. I think it will work on all of them with sufficient entries to allow the pinning. Don't do this on an 823 or 850.
-- Dan --- linux-2.6.11.5/arch/ppc/kernel/head_8xx.S 2005-03-19 01:34:56.000000000 -0500 +++ linux-2.6-tlbpin/arch/ppc/kernel/head_8xx.S 2005-05-07 00:57:32.000000000 -0400 @@ -663,7 +663,7 @@ tlbia /* Invalidate all TLB entries */ #ifdef CONFIG_PIN_TLB lis r8, MI_RSV4I at h - ori r8, r8, 0x1c00 + ori r8, r8, 0x1f00 #else li r8, 0 #endif @@ -671,7 +671,7 @@ #ifdef CONFIG_PIN_TLB lis r10, (MD_RSV4I | MD_RESETVAL)@h - ori r10, r10, 0x1c00 + ori r10, r10, 0x1f00 mr r8, r10 #else lis r10, MD_RESETVAL at h