[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen master] xen/arm: vgic-v2: Report the correct GICC size to the guest



commit 8ee6d574b7073b5c98fcf94d20a53197609b85e1
Author:     Julien Grall <julien.grall@xxxxxxxxxx>
AuthorDate: Thu Oct 8 19:23:51 2015 +0100
Commit:     Ian Campbell <ian.campbell@xxxxxxxxxx>
CommitDate: Fri Oct 23 14:25:48 2015 +0100

    xen/arm: vgic-v2: Report the correct GICC size to the guest
    
    The GICv2 DT node is usually used by the guest to know the address/size
    of the regions (GICD, GICC...) to map into their virtual memory.
    
    While the GICv2 spec requires the size of the GICC to be 8KB, we
    correctly do an 8KB stage-2 mapping but erroneously report 256 in the
    device tree (based on GUEST_GICC_SIZE).
    
    I bet we didn't see any issue so far because all the registers except
    GICC_DIR lives in the first 256 bytes of the GICC region and all the
    guests I have seen so far are driving the GIC with GICC_CTLR.EIOmode =
    0.
    
    Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
    Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
    [ ijc -- fixed some typos in commit message ]
---
 xen/include/public/arch-arm.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
index 9a96401..3c365f3 100644
--- a/xen/include/public/arch-arm.h
+++ b/xen/include/public/arch-arm.h
@@ -397,7 +397,7 @@ typedef uint64_t xen_callback_t;
 #define GUEST_GICD_BASE   0x03001000ULL
 #define GUEST_GICD_SIZE   0x00001000ULL
 #define GUEST_GICC_BASE   0x03002000ULL
-#define GUEST_GICC_SIZE   0x00000100ULL
+#define GUEST_GICC_SIZE   0x00002000ULL
 
 /* vGIC v3 mappings */
 #define GUEST_GICV3_GICD_BASE      0x03001000ULL
--
generated by git-patchbot for /home/xen/git/xen.git#master

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.