Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 2499
b: refs/heads/master
c: c92877e
h: refs/heads/master
i:
  2497: 9835c1c
  2495: d4372b7
v: v3
  • Loading branch information
Stephen Rothwell authored and Linus Torvalds committed Jun 22, 2005
1 parent 6a33193 commit 2c80f5c
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 13 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 2310c977a9b7a4d08fbaa74e694b49b38d49f5ae
refs/heads/master: c92877e0a079fe5a488cb244c7afb05137702b49
5 changes: 5 additions & 0 deletions trunk/arch/ppc64/kernel/idle.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
16 changes: 4 additions & 12 deletions trunk/include/asm-ppc64/iSeries/ItLpQueue.h
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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 */

0 comments on commit 2c80f5c

Please sign in to comment.