[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PATCH 55/77] ppc/pnv+spapr: Add "ibm, pa-features" property
From: |
Benjamin Herrenschmidt |
Subject: |
[Qemu-ppc] [PATCH 55/77] ppc/pnv+spapr: Add "ibm, pa-features" property to the device-tree |
Date: |
Wed, 11 Nov 2015 11:28:08 +1100 |
This is currently missing on both PowerNV and PAPR
FIXME: Split patch & fix tabs
Signed-off-by: Benjamin Herrenschmidt <address@hidden>
---
hw/ppc/pnv.c | 8 ++++++++
target-ppc/translate_init.c | 1 +
2 files changed, 9 insertions(+)
diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c
index 179f93b..1787dd1 100644
--- a/hw/ppc/pnv.c
+++ b/hw/ppc/pnv.c
@@ -275,6 +275,11 @@ static void powernv_create_cpu_node(void *fdt, CPUState
*cs, int smt_threads)
uint32_t page_sizes_prop[64];
size_t page_sizes_prop_size;
char *nodename;
+ const uint8_t pa_features[] = { 24, 0,
+ 0xf6, 0x3f, 0xc7, 0xc0, 0x80, 0xf0,
+ 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x80, 0x00,
+ 0x80, 0x00, 0x80, 0x00, 0x80, 0x00 };
if ((index % smt_threads) != 0) {
return;
@@ -349,6 +354,9 @@ static void powernv_create_cpu_node(void *fdt, CPUState
*cs, int smt_threads)
page_sizes_prop, page_sizes_prop_size)));
}
+ _FDT((fdt_property(fdt, "ibm,pa-features",
+ pa_features, sizeof(pa_features))));
+
/* XXX Just a hack for now */
_FDT((fdt_property_cell(fdt, "ibm,chip-id", 0)));
diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c
index b623206..25f5b18 100644
--- a/target-ppc/translate_init.c
+++ b/target-ppc/translate_init.c
@@ -10028,6 +10028,7 @@ static void ppc_cpu_initfn(Object *obj)
},
};
env->sps = (env->mmu_model & POWERPC_MMU_64K) ? defsps_64k : defsps_4k;
+ env->ci_large_pages = env->mmu_model >= POWERPC_MMU_2_06;
}
#endif /* defined(TARGET_PPC64) */
--
2.5.0
- [Qemu-ppc] [PATCH 43/77] ppc/pnv: Add OCC model stub with interrupt support, (continued)
- [Qemu-ppc] [PATCH 43/77] ppc/pnv: Add OCC model stub with interrupt support, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 42/77] ppc/pnv: Add cut down PSI bridge model and hookup external interrupt, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 50/77] ppc: Update LPCR definitions, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 49/77] ppc/pnv: Create a default PCI layout, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 51/77] ppc: Use a helper to filter writes to LPCR, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 53/77] ppc: Add proper real mode translation support, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 52/77] ppc: Cosmetic, align some comments, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 63/77] ppc: Initialize AMOR in PAPR mode, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 57/77] ppc: Enforce setting MSR:EE, IR and DR when MSR:PR is set, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 61/77] ppc: SPURR & PURR are HV writeable and privileged, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 55/77] ppc/pnv+spapr: Add "ibm, pa-features" property to the device-tree,
Benjamin Herrenschmidt <=
- [Qemu-ppc] [PATCH 56/77] ppc: Fix conditions for delivering external interrupts to a guest, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 54/77] ppc: Fix 64K pages support in full emulation, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 58/77] ppc: Initial HDEC support, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 59/77] ppc: Add placeholder SPRs for DPDES and DHDES on P8, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 62/77] ppc: Add dummy SPR_IC for POWER8, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 60/77] ppc: LPCR is a HV resource, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 64/77] ppc: Fix writing to AMR/UAMOR, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 65/77] ppc: Add POWER8 IAMR register, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 67/77] ppc: Add dummy write to VTB, Benjamin Herrenschmidt, 2015/11/10
- [Qemu-ppc] [PATCH 66/77] ppc: Add a few more P8 PMU SPRs, Benjamin Herrenschmidt, 2015/11/10