hc
2024-05-11 297b60346df8beafee954a0fd7c2d64f33f3b9bc
kernel/arch/powerpc/include/asm/page_32.h
....@@ -22,7 +22,8 @@
2222 #define PTE_FLAGS_OFFSET 0
2323 #endif
2424
25
-#ifdef CONFIG_PPC_256K_PAGES
25
+#if defined(CONFIG_PPC_256K_PAGES) || \
26
+ (defined(CONFIG_PPC_8xx) && defined(CONFIG_PPC_16K_PAGES))
2627 #define PTE_SHIFT (PAGE_SHIFT - PTE_T_LOG2 - 2) /* 1/4 of a page */
2728 #else
2829 #define PTE_SHIFT (PAGE_SHIFT - PTE_T_LOG2) /* full page */
....@@ -39,6 +40,8 @@
3940 typedef unsigned long pte_basic_t;
4041 #endif
4142
43
+#include <asm/bug.h>
44
+
4245 /*
4346 * Clear page using the dcbz instruction, which doesn't cause any
4447 * memory traffic (except to write out any cache lines which get
....@@ -48,6 +51,8 @@
4851 {
4952 unsigned int i;
5053
54
+ WARN_ON((unsigned long)addr & (L1_CACHE_BYTES - 1));
55
+
5156 for (i = 0; i < PAGE_SIZE / L1_CACHE_BYTES; i++, addr += L1_CACHE_BYTES)
5257 dcbz(addr);
5358 }