Hi,
The ASM function generated by Halcogen in order to read and clear pmu_overflow_flags is :
; Get Overflow Flags
.def _pmuGetOverflow_
.asmfunc
_pmuGetOverflow_
mrc p15, #0, r0, c9, c12, #3 ; read overflow
mov r1, #0
mcr p15, #0, r1, c9, c12, #3 ; clear flags
bx lr
.endasmfunc
I think there is a problem at line 6, it should be :
mov r1, #1
in order to clear the flag, nope?
Maybe it's already written in some errata? if so, could you link me the PDF file please?