This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PROCESSOR-SDK-AM335X: PROCESSOR-SDK-AM335X

Part Number: PROCESSOR-SDK-AM335X

Hello,

I originally asked this but did not follow up as I thought the issue was resolved. However, upon further inspection, we are still stuck on the issue. Specifically, I was wondering if it is possible to disable the ECC within the Beaglebone black manually via software? I was able to find code to enable the ECC, but none to disable. Is it disabled by default? Or is there some code I can run to explicitly disable ECC? The code below (from the AM335x technical reference manual) is used to enable L2ECC, and I was wondering if it could be tweaked to instead disable ECC?

_enableL2ECC:
	STMFD sp!, {r0 - r4} @ save context of R0-R4, which secure monitor call may use
	MRC p15, #1, r0, c9, c0, #2 @ Read L2 Cache Auxiliary Control Reg into R0
	MOV r1, #0 @ Clear R1
	MOVT r1, #0x1020 @ enable mask for ECC (set bits 21 and 28 to enable ECC)
	ORR r0, r0, r1 @ OR with original register value
	MOV r12, #0x0102 @ setup service ID in R12
	MCR p15,#0x0,r1,c7,c5,#6 @ invalidate entire branch predictor array
	DSB @ data synchronization barrier operation
	ISB @ instruction synchronization barrier operation
	DMB @ data memory barrier operation
	SMC #1 @ secure monitor call SMC (previously SMI)
	LDMFD sp!, {r0 - r4} @ after returning from SMC, restore R0-R4
	MOV pc, lr @ return