xref: /plan9/sys/src/ape/lib/ap/power/cycles.s (revision 3801c5d3654aa9f2550619504513a2c27d776557)
1*3801c5d3SDavid du Colombier#define TBRL	268
2*3801c5d3SDavid du Colombier#define TBRU	269		/* Time base Upper/Lower (Reading) */
3*3801c5d3SDavid du Colombier
4*3801c5d3SDavid du Colombier/*
5*3801c5d3SDavid du Colombier * time stamp counter; _cycles since power up
6*3801c5d3SDavid du Colombier * Runs at fasthz/4 cycles per second (m->clkin>>3)
7*3801c5d3SDavid du Colombier */
8*3801c5d3SDavid du ColombierTEXT _cycles(SB),1,$0
9*3801c5d3SDavid du Colombierloop:
10*3801c5d3SDavid du Colombier	MOVW	SPR(TBRU),R7
11*3801c5d3SDavid du Colombier	MOVW	SPR(TBRL),R8
12*3801c5d3SDavid du Colombier	MOVW	SPR(TBRU),R5
13*3801c5d3SDavid du Colombier	CMP	R5,R7
14*3801c5d3SDavid du Colombier	BNE	loop
15*3801c5d3SDavid du Colombier	MOVW	R7,0(R3)
16*3801c5d3SDavid du Colombier	MOVW	R8,4(R3)
17*3801c5d3SDavid du Colombier	RETURN
18