This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Unable to clear BFSR

Note: This was originally posted on 20th July 2010 at http://forums.arm.com

Hi ,

I have situation where I get ERROR(0x1) on HRESP of SAHB bus , which is as expected.
I have my Bus fault handler enabled and it is being serviced. I can read the BFSR (Bus Fault Status Register)
and can see corresponding transactions on PPB bus

@ Nth cycle

HADDRppb   = 0xE000ED29 ( address of BFSR )
HTRANSppb = 0x2 (NON SEQ)
HSIZEppb     =  0x0 ( 8 bits transfer )
HRESPppb   =  0x0
HWRITEppb = 0x0 ( Read operation of BFSR )

@N+1 cycle
HRDATAppb  =  0x8200

Now for clearing the BFSR , I intend to write 0xff.
However, I see following transactions on PPB bus


@ Mth cycle

HADDRppb   = 0xE000ED29 ( address of BFSR )
HTRANSppb = 0x2 (NON SEQ)
HSIZEppb     =  0x0 ( 8 bits transfer )
HRESPppb   =  0x0
HWRITEppb = 0x1 (Write operation of BFSR )

@M+1 th cycle
HWDATAppb  =  0xffffffff

As per AHB protocol, HWDATAppb should have 0xffff_ffff in the Mth cycle itself
Can anyone help me out as why write data is coming one cycle delayed ?
As a result I am unable clear the Bus Fault Status Register( BFSR).

Thanks,
Vinayak
0