From 2c80f5c4137414f8cad44d595b72242084ea7e72 Mon Sep 17 00:00:00 2001 From: Stephen Rothwell Date: Tue, 21 Jun 2005 17:15:39 -0700 Subject: [PATCH] --- yaml --- r: 2499 b: refs/heads/master c: c92877e0a079fe5a488cb244c7afb05137702b49 h: refs/heads/master i: 2497: 9835c1c1a8fd3b304bbc55d70c772ec8cda12001 2495: d4372b7d0b73ef697ead608287afa8bfde744074 v: v3 --- [refs] | 2 +- trunk/arch/ppc64/kernel/idle.c | 5 +++++ trunk/include/asm-ppc64/iSeries/ItLpQueue.h | 16 ++++------------ 3 files changed, 10 insertions(+), 13 deletions(-) diff --git a/[refs] b/[refs] index 7c44002a785b..d14512821459 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2310c977a9b7a4d08fbaa74e694b49b38d49f5ae +refs/heads/master: c92877e0a079fe5a488cb244c7afb05137702b49 diff --git a/trunk/arch/ppc64/kernel/idle.c b/trunk/arch/ppc64/kernel/idle.c index ff8a7db142d3..bdf13b4dc1c8 100644 --- a/trunk/arch/ppc64/kernel/idle.c +++ b/trunk/arch/ppc64/kernel/idle.c @@ -42,6 +42,11 @@ static int (*idle_loop)(void); static unsigned long maxYieldTime = 0; static unsigned long minYieldTime = 0xffffffffffffffffUL; +static inline void process_iSeries_events(void) +{ + asm volatile ("li 0,0x5555; sc" : : : "r0", "r3"); +} + static void yield_shared_processor(void) { unsigned long tb; diff --git a/trunk/include/asm-ppc64/iSeries/ItLpQueue.h b/trunk/include/asm-ppc64/iSeries/ItLpQueue.h index b2bdef429591..393299e04d7f 100644 --- a/trunk/include/asm-ppc64/iSeries/ItLpQueue.h +++ b/trunk/include/asm-ppc64/iSeries/ItLpQueue.h @@ -64,9 +64,9 @@ struct ItLpQueue { u8 xPlicStatus; // 0x01 DedicatedIo or DedicatedLp or NotUsed u16 xSlicLogicalProcIndex; // 0x02 Logical Proc Index for correlation u8 xPlicRsvd[12]; // 0x04 - char* xSlicCurEventPtr; // 0x10 - char* xSlicLastValidEventPtr; // 0x18 - char* xSlicEventStackPtr; // 0x20 + char *xSlicCurEventPtr; // 0x10 + char *xSlicLastValidEventPtr; // 0x18 + char *xSlicEventStackPtr; // 0x20 u8 xIndex; // 0x28 unique sequential index. u8 xSlicRsvd[3]; // 0x29-2b u32 xInUseWord; // 0x2C @@ -76,17 +76,9 @@ struct ItLpQueue { extern struct ItLpQueue xItLpQueue; -extern struct HvLpEvent * ItLpQueue_getNextLpEvent(struct ItLpQueue *); +extern struct HvLpEvent *ItLpQueue_getNextLpEvent(struct ItLpQueue *); extern int ItLpQueue_isLpIntPending(struct ItLpQueue *); extern unsigned ItLpQueue_process(struct ItLpQueue *, struct pt_regs *); extern void ItLpQueue_clearValid(struct HvLpEvent *); -static __inline__ void process_iSeries_events(void) -{ - __asm__ __volatile__ ( - " li 0,0x5555 \n\ - sc" - : : : "r0", "r3"); -} - #endif /* _ITLPQUEUE_H */