#include <asm/processor.h>
 #include <asm/time.h>
 #include <asm/lppaca.h>
+#include <asm/firmware.h>
 #include <asm/iseries/hv_call_xm.h>
 
 #include "processor_vpd.h"
 
 static int __init iseries_proc_create(void)
 {
-       struct proc_dir_entry *e = proc_mkdir("iSeries", 0);
+       struct proc_dir_entry *e;
+
+       if (!firmware_has_feature(FW_FEATURE_ISERIES))
+               return 0;
+
+       e = proc_mkdir("iSeries", 0);
        if (!e)
                return 1;
 
 {
        struct proc_dir_entry *e;
 
+       if (!firmware_has_feature(FW_FEATURE_ISERIES))
+               return 0;
+
        e = create_proc_entry("iSeries/titanTod", S_IFREG|S_IRUGO, NULL);
        if (e)
                e->proc_fops = &proc_titantod_operations;