I think this is a discussion point for Kevin Hillman, and a tip for other DaVinci users.
In the DaVinci errata the register PBBPR is mentioned: the maximum burst length for the DDR2 controller. It **MUST** be set to a value like 32, not the default 255, or else you will have a lot of EMAC under-runs (we found about 1 in 20000 packets got lost when streaming video while the DSP is heavily loaded). The normal place to do this is: arch/arm/mach_davinci/board_evm.c : __init davinci_evm_init() If I try to access the register using __REG( ) the kernel crashes. This is caused by the special address of the PBBPR register: 0x20000020, outside the remapped I/O area 0x01C00000 - 0x1FFFFFFFF (see "include/asm-arch/arch-davinci/io.h"). I think that is a (small) bug in the kernel code. When I try to use mmap() the kernel crashes too, I suppose that function is not valid in the __init level modules. After the kernel is up one can do a mmap() and set the register from user space. Arie de Muijnck -------------------------------------------------------- CONFIDENTIALITY NOTICE - This e-mail transmission, and any documents, files or previous e-mail messages attached to it may contain information that is confidential or legally privileged. If you are not the intended recipient, or a person responsible for delivering it to the intended recipient, you are hereby notified that you must not read this transmission and that any disclosure, copying, printing, distribution or use of any of the information contained in or attached to this transmission is STRICTLY PROHIBITED. If you have received this transmission in error, please immediately notify Arie Muijnck by telephone or [EMAIL PROTECTED] and delete the original transmission and its attachments without reading or saving in any manner. _______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
