[PATCH] cleanups hpte_init_native, kill warning for !PSERIES builds

From: Christoph Hellwig
Date: Sun Oct 24 2004 - 08:06:41 EST


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.


--- 1.19/arch/ppc64/mm/hash_native.c 2004-09-30 07:34:39 +02:00
+++ edited/arch/ppc64/mm/hash_native.c 2004-10-24 11:56:10 +02:00
@@ -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 (!strcmp(model, "CHRP 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 (!strcmp(model, "CHRP 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();
}
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/