[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [PATCH 33/40] arm64: gic: implement the REG_WRITE32/REG_READ32
Hi Shijie, On 03/11/17 03:12, Huang Shijie wrote: Implement the REG_WRITE32/REG_READ32. This patch refers to Chen Baozi's patch: "Initial codes for arm64" Change-Id: I942d68d7e9ed31382951a2bfebd29d87acc84281 Jira: ENTOS-247 Signed-off-by: Huang Shijie <shijie.huang@xxxxxxx> --- arch/arm/gic.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/arch/arm/gic.c b/arch/arm/gic.c index e72c723..ce7f7c8 100644 --- a/arch/arm/gic.c +++ b/arch/arm/gic.c @@ -44,14 +44,22 @@ static struct gic gic; static inline uint32_t REG_READ32(volatile uint32_t *addr) This should be implemented in an arch specific header. { uint32_t value; +#if defined(__arm__) __asm__ __volatile__("ldr %0, [%1]":"=&r"(value):"r"(addr)); +#else + __asm__ __volatile__("ldr %w0, [%1]":"=&r"(value):"r"(addr)); +#endif rmb(); return value; }static inline void REG_WRITE32(volatile uint32_t *addr, unsigned int value){ +#if defined(__arm__) __asm__ __volatile__("str %0, [%1]"::"r"(value), "r"(addr)); +#else + __asm__ __volatile__("str %w0, [%1]"::"r" (value), "r"(addr)); +#endif wmb(); } > Cheers, -- Julien Grall _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/cgi-bin/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |