.os_partition = false
 };
 
+static struct nvram_os_partition common_partition = {
+       .name = "common",
+       .index = -1,
+       .os_partition = false
+};
+
 static enum pstore_type_id nvram_type_ids[] = {
        PSTORE_TYPE_DMESG,
        PSTORE_TYPE_PPC_RTAS,
        PSTORE_TYPE_PPC_OF,
+       PSTORE_TYPE_PPC_COMMON,
        -1
 };
 static int read_type;
 }
 
 /*
- * Reads the oops/panic report, rtas and of-config partition.
+ * Reads the oops/panic report, rtas, of-config and common partition.
  * Returns the length of the data we read from each partition.
  * Returns 0 if we've been called before.
  */
                time->tv_sec = 0;
                time->tv_nsec = 0;
                break;
+       case PSTORE_TYPE_PPC_COMMON:
+               sig = NVRAM_SIG_SYS;
+               part = &common_partition;
+               *type = PSTORE_TYPE_PPC_COMMON;
+               *id = PSTORE_TYPE_PPC_COMMON;
+               time->tv_sec = 0;
+               time->tv_nsec = 0;
+               break;
        default:
                return 0;
        }
 
        case PSTORE_TYPE_PPC_OF:
                sprintf(name, "powerpc-ofw-%s-%lld", psname, id);
                break;
+       case PSTORE_TYPE_PPC_COMMON:
+               sprintf(name, "powerpc-common-%s-%lld", psname, id);
+               break;
        case PSTORE_TYPE_UNKNOWN:
                sprintf(name, "unknown-%s-%lld", psname, id);
                break;
 
        /* PPC64 partition types */
        PSTORE_TYPE_PPC_RTAS    = 4,
        PSTORE_TYPE_PPC_OF      = 5,
+       PSTORE_TYPE_PPC_COMMON  = 6,
        PSTORE_TYPE_UNKNOWN     = 255
 };