[PATCH] ppc64: cleanups hpte_init_native, kill warning for !PSERIES builds
Anton Blanchard
anton at samba.org
Sun Nov 14 19:52:45 EST 2004
From: Christoph Hellwig <hch at lst.de>
this splits out a small helper that checks whether tlb batching should
be enabled from hpte_init_native, thus cleaning up the ifdef hell and
killing a warning for pmac builds.
Signed-off-by: Anton Blanchard <anton at samba.org>
Index: linux-2.5/arch/ppc64/mm/hash_native.c
===================================================================
--- linux-2.5.orig/arch/ppc64/mm/hash_native.c 2004-11-14 15:52:18.747505472 +1100
+++ linux-2.5/arch/ppc64/mm/hash_native.c 2004-11-14 19:47:45.772890897 +1100
@@ -387,33 +387,37 @@
local_irq_restore(flags);
}
-void hpte_init_native(void)
-{
#ifdef CONFIG_PPC_PSERIES
- struct device_node *root;
- const char *model;
-#endif /* CONFIG_PPC_PSERIES */
+/* Disable TLB batching on nighthawk */
+static inline int tlb_batching_enabled(void)
+{
+ struct device_node *root = of_find_node_by_path("/");
+ int enabled = 1;
+
+ if (root) {
+ const char *model = get_property(root, "model", NULL);
+ if (model && !strcmp(model, "IBM,9076-N81"))
+ enabled = 0;
+ of_node_put(root);
+ }
+ return enabled;
+}
+#else
+static inline int tlb_batching_enabled(void)
+{
+ return 1;
+}
+#endif
+
+void hpte_init_native(void)
+{
ppc_md.hpte_invalidate = native_hpte_invalidate;
ppc_md.hpte_updatepp = native_hpte_updatepp;
ppc_md.hpte_updateboltedpp = native_hpte_updateboltedpp;
ppc_md.hpte_insert = native_hpte_insert;
ppc_md.hpte_remove = native_hpte_remove;
-
-#ifdef CONFIG_PPC_PSERIES
- /* Disable TLB batching on nighthawk */
- root = of_find_node_by_path("/");
- if (root) {
- model = get_property(root, "model", NULL);
- if (model && !strcmp(model, "IBM,9076-N81")) {
- of_node_put(root);
- goto bail;
- }
- of_node_put(root);
- }
-#endif /* CONFIG_PPC_PSERIES */
-
- ppc_md.flush_hash_range = native_flush_hash_range;
- bail:
+ if (tlb_batching_enabled())
+ ppc_md.flush_hash_range = native_flush_hash_range;
htab_finish_init();
}
More information about the Linuxppc64-dev
mailing list