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.

AM3358 with ANDROIDEVKIT-JB-AM335X random crashes

Other Parts Discussed in Thread: AM3358

Hi,

we are using a custom board based on the BeagleBoneBlack. One of the major differences is the usage of two DDR3 RAMs. The DDR3 layout used is similar to the layout in the datasheet SPRS717G (http://www.ti.com/lit/ds/symlink/am3358.pdf), figure 7-49 on page 174, but without the DDR_VTT resistors.

Here are some of the error messages from the kernel when crashed (sometimes there are none):

[10605.243560] Unhandled fault: external abort on non-linefetch (0x1028) at 0xf9e01110

[ 406.733764] PVR_K: HWRecoveryResetSGX: SGX Hardware Recovery triggered
[...]
[ 406.803497] PVR_K: Found MMU context for page fault 0x00471000

[ 153.088195] Unable to handle kernel paging request at virtual address 01800010

[ 103.161560] pagealloc: memory corruption

I have found a similar post on this forum (http://e2e.ti.com/support/arm/sitara_arm/f/791/t/332807.aspx), but we don't have a signal like ddr3_vtt_toggle (since we don't even have vtt resistors) so the solution might not be the same.

We have used the RatioSeed and ddr3_register_calc_tool to determine the timings/register settings. The DDR3 tests from CCS5 are good.
The software used is the android devkit v4.1.1 with linux kernel 3.2. We have modified the uboot and kernel config to our needs, but we experience random crashes. The u-boot and kernel boots, but the system crashes sometimes after a few minutes, sometimes after 10 or more hours. I have slightly increased the voltage of core, mpu and ddr3, rebuild the kernel, u-boot, filesystem and sgx but no difference.

Are the VTT resistors mandatory, even if the trace lengths are shorter than 32mm? Could the missing VTT resistors cause errors like these?
I am grateful for any help and I will try to provide any information that could help to identify the problem.