Quantcast
Viewing all 17527 articles
Browse latest View live

SITARA-DDR-CONFIG-TOOL: DDR4 memory configurations issues with EMIF tool

Part Number:SITARA-DDR-CONFIG-TOOL

Dear TI Team,

we're using the EMIF configuration tool (AM65x/DRA80xM EMIF Tool Spreadsheet (ZIP 326 KB) 12 Oct 2018) to configure DDR controller settings for our custom AM6548 board.

So far we've noticed three (four) issues:

  • The EMIF tool is unable to cope with comma as the decimal separator (e.g. german notation). What is problematic is that the tool "silently" fails in that case, and for example just calculates tRC=tRAS+tRP=35+13,75=35
  • The EMIF tool puts "error" into certain register values if the C/A latency is specified as 4. The register values are fine if zero is used for c/a latency.
  • A follow up to the previous issue: The tool apparently hard codes the C/A parity latency enable bit in DDRCTL_CRCPARCTL1 to 0.
  • The EMIF tool is able to export a GEL file for use in CCS and a dtsi file for use in U-Boot but can't generate the necessary header file for the RTOS SDK SBL/board library.

We've managed to work around the first issue (after figuring out what's going wrong) by switching to a dot as the decimal separator in our Excel settings.

We believe we can ignore the second issue for now, since the third issue means that C/A parity is disabled anyway. Is that correct?

Our current issue is that our DDR settings "work" for when using them via the GEL file (not thoroughly tested) and as part of our SBL (at least a brief automated RAM test succeeds), but fails when using them as part of U-Boot (based on ti-u-boot-2018.01). So far we've noticed that the U-Boot DDR initialization fails during the call to read_dqs_training() since the QSGERR (DQS gate training error) bit gets set.

We're still in the process of verifying all of the timing settings, but your colleagues suggested to inform you about issues with the EMIF tool early on. It would also be nice to know if there are any further (known) issues with the EMIF tool.

Our setup uses a single 16 bit DDR4 memory chip (MT40A256M16).

Regards,

Dominic


mcal_01_09_00_30: Open points related to SPI module

Hello,

I have found some problems in the TI Mcal for TDA2xx/TDA2Ex with Spi Driver (at least MCSPI).

I have the following Packages:

mcal_01_09_00_30

1.

For the MOSI/MISO Signals the two Ports spi[x]_d0 und spi[x]_d1 are available. According to the HW Datasheet, you can use both for MOSI/MISO as you choose.

In the function Spi_mcspiConfigJob() (Spi_Mcspi.c L206) spi[x]_d1 will be set to Rx anyway. But on my Customer HW spi[x]_d1 should be the Tx Signal.

For me it looks like there is no way to configure it, so this usecase is not supported in the Driver. I had to patch Spi_Mcspi.c to make it work.

 

2.

In BSWMD/Copy_Spi.arxml the UPPER-MULTIPLICITY for SpiChannel is „1“. Means you can only set up one Spi Channel in Cfg5.

So I changed UPPER-MULTIPLICITY to 15.

After that the Problem occurs, that the MAX value for SpiDriver\SpiMaxChannel is also “1”. This should also be changed.

 

3.

SpiConf_SpiChannel_xxx and SpiConf_SpiSequence_xxx are not generated from the Spi Module.

 

4.

If Spi_DataType is defined as uint8 (as needed from Slave) the the DET SPI_E_PARAM_POINTER (Spi.c L702 Spi_SetupEB()) comes up.

In the comment above it’s written „[…]required by AUTOSAR SPI spec“.

I don’t know, if this is right, but it wouldn’t be compatible with Spi Slaves, were datatype != 32 bit is needed. (As in my case with CanTrcv TJA1145)

Thanks 

Kishore 

TDA2P-ACD: CSx Pin for two NAND flash

Part Number:TDA2P-ACD

I have questions about pin configuration in TDA2P processor for our custom ECU. We need to connect two parallel 16b NAND Flash over GPMC interface. It means, we should connect  following pins: AD[0:16], BEN0, ADVnALE, WEn, OEnREn, WAIT0 parallel to each NAND, and every NAND will have one CS pin. For the 1st NAND we will connect CS0 pin, and for the 2nd NAND we want to use CS3 pin, instead of CS1 or other CS pins, because the pins (CS1 and CS4-CS7) are already used for other functionalities.
 
The question is, is there any restriction to decide which CSx pin to be used? would it be complex for configuring the Driver related to CSx pin?
We just want to make sure, that configuring the NAND interface wouldn't be complex during board Startup.
 
both NAND Flash will not be used for booting.
 
Thanks in advance 

AM3354: USB0 enumeration error

Part Number:AM3354

Hi team,

 

I am experiencing a problem with the USB0 port of one of my AM3354-based systems.

 

I am having trouble enumerating a cap touch controller board based on an Atmel cap touch controller IC. The controller board is from an outside vendor. Upon power up, the controller board does not enumerate, and the port shuts down, dropping Vbus. I receive a Babble interrupt when this happens. The problem doesn't always happen at the same point in the enumeration process. Sometimes no packets are exchanged, sometimes I see SOF packets, and sometimes I get all the way through to the first data exchange with SETUP packets transmitted and ACKd by the cap touch controller. Then the port shuts down.

 

Now, in the USB 2.0 specification, there is a time interval called out as Tsigatt, which is the maximum time from when Vbus is up to valid level to when a device has to signal attach. My cap touch board is a full speed device so it signals attach by driving D+ to the high state.

 

I have two cap touch boards that are used with this system. One is for an 8 in. LCD display and one is for a 10 in. 

  • The 8 in. controller always seems to enumerate successfully--it takes about 80 ms to drive D+ high following Vbus startup.
  • The 10 in. controller takes from 100 ms to 103 ms.  It rarely enumerates correctly--maybe 1 or 2 of ten tries.  When it does enumerate successfully, it appears to continue to maintain valid communication.
  • If I interpose an older USB 1.0 hub between the AM3354 port and my cap touch board, I see the hub driving D+ high very quickly after Vbus rises--within a ms. And the 10 inch cap touch board always works with this hub.
  • When I view the D+ and D- signals, I don't see any signal integrity issues--noise is minimal and rise and fall times appear to be fine. I can decode the USB packets with their Tek scope, and they appear to be valid.
  • I can plug a USB drive into the port and watch it setup a high speed connection--it always works fine.

 

Could this 100 ms timeout be the source of the problem? How is that time interval set within the AM3354 USB subsystem--is it register programmed, or set by the driver?

 

Going back to the spec, it says the Tsigatt time interval to be <100 ms for "all hub and device implementations".  This is what I am concerned about.  The spec is called out on Page 150 and shown in Figure 7-29 of the USB 2.0 Serial Bus Specification Revision 2.0.


Thanks,

Brian

Linux/TMDSEVM6678: Fix for "child process exited abnormally" when running the PROCESSOR-SDK-RTOS-C667x installer

Part Number:TMDSEVM6678

Tool/software: Linux

Hi!

This is not really a question but I thought it might be worth mentioning this as I saw a bunch of related and unanswered questions in the forum.

When running the C667x processor SDK installer on a fresh Ubuntu installation (and Debian), the installer fails with this rather undescriptive error:

Problem running post-install step. Installation may not complete correctly
Error running /home/peck/ti/cgt6x_x86_installer --prefix /home/peck/ti --mode unattended: child process exited abnormally

After printing this error message, not all required files are extracted. What fails is the installation of TI_CGT_6x. I tried excluding that from the installation and then it succeeded. Then I tried installing it separately from http://www.ti.com/tool/download/C6000-CGT-8-3 

Here is exactly what I did to get the error:

Create a Google Cloud Compute Engine instance like this

gcloud compute instances create abc --zone us-central1-a --machine-type n1-standard-16 --boot-disk-type=pd-ssd --boot-disk-size=200GB --image=ubuntu-1604-xenial-v20190212 --image-project=ubuntu-os-cloud

gcloud compute ssh abc

And then, on the vm:

wget software-dl.ti.com/.../ti-processor-sdk-rtos-c667x-evm-05.02.00.10-Linux-x86-Install.bin
export INSTALLER=ti-processor-sdk-rtos-c667x-evm-05.02.00.10-Linux-x86-Install.bin

chmod +x $INSTALLER

./$INSTALLER --mode unattended

AM5728: How to setup the DMM for max memory available to Linux

Part Number:AM5728

We have created a board (we do that sometimes)  We're using both EMIFs and each has 2GBytes DDR3LP attached to it for a total of 4GBytes on the board. 

1.  Is it possible to let Linux use all of it?

2.  Assuming not, how much can I feed Linux?

3.  What do I need to do in Linux configuration to accomplish this maximum memory usage?

4. How do I setup the DMM?  There is no 4GByte size in the LISA configuration registers.  I see that I could (technically) setup the 4GByte area using two sections (LISA registers).  What happens to device registers?  Does the processor/memory manager prioritize register addresses over memory addresses?  I guess I could limit the low end 2Gytes to 1 GByte or add a third LISA layout to bring back the 0x50000000 to 0x7fffffff area. At this point, I'm not worried about interleaving - I can handle that.  Please be specific and show the LISA register values I need.

Thanks in advance

-Paul

TMS320C5535: Booting from an external I2C EEPROM

Part Number:TMS320C5535

I'm trying to program an external I2C EEPROM with a boot image output from code composer studio, but am having a hard time troubleshooting since it's my first time working with boot loaders. I have reviewed SPRABL7D and SPRU280I which gave me a general idea of what to do, but there is no step-by-step guide for my specific case. Here are the steps I've taken so far:

1) I'm trying to make a boot image using the hex55 utility on code composer studio. I tried to follow SPRABL7D and SPRU280I the best I can, and have the utility set up as follows:

Image may be NSFW.
Clik here to view.

SPRABL7D says "A boot signature to the boot image boot signature is 0x09AA" but I don't know know where to put this boot signature. Please let me know if anything else in the setup is incorrect. 

2) The EEPROM I'm using is CAT24C64 ( 8KB, I2C) since it meets the bootloader's requirements. I program the .hex file that the hex55 utility outputs into the EEPROM using an Arduino as a programmer. The program I'm trying to burn is less than 8KB, so it should fit into the EEPROM memory:

Image may be NSFW.
Clik here to view.

After these steps, I hook up the C5535 to the EEPROM using I2C (I2C has been verified and is working, so that shouldn't be the problem), but the C5535 does NOT boot up from the EEPROM . Any guidance or advice for what I may have done wrong would be greatly appreciated. I have also attached the .map file for your reference. 

Best, 

Eddie

(Please visit the site to view this file)

Compiler/TDA2: Buying a TDA2x

Part Number:TDA2

Tool/software: TI C/C++ Compiler

Good night!

I would like to tell you where I can buy the TDA3x or TDA2x because on the site Texas instruments the sale is not available.

Thank you,

Hugo


Linux/PROCESSOR-SDK-AM335X: problem with launching a program

Part Number:PROCESSOR-SDK-AM335X

Tool/software: Linux

Hi~

I have ported ti-processor-sdk-linux-am335x-evm-05.02.00.10 to my am3354 board and got the Matrix GUI, but when I want to launch a test program it always takes two times.

My test program is a QT app, even I use "gst-play-1,0 test.avi" command to play an avi vedio,success comes in the second time.

AM3874: Power Consumption for AM3874

Part Number:AM3874

Hello, is there any documentation on the Power Consumption for the AM3874?

Thanks,

Joe

Linux/PROCESSOR-SDK-AM335X: uvc usb camera problem

Part Number:PROCESSOR-SDK-AM335X

Tool/software: Linux

hi Mike

e2e.ti.com/.../223368

        I test your code, "0317.TestRepeatOpen.rar" on my board , also have the same problem.

        I make a program using QT and opencv to test my camera , it also fails with "select timeout".

       Any suggestion to me?

       thank you.

CPU: AM3354

SDK: ti-processor-sdk-linux-am335x-evm-05.02.00.10

    

root@am335x-evm:/home/david# ./sensor_test     
9963776:                     Brightness:128
9963777:                       Contrast:135
9963778:                     Saturation:80
9963779:                            Hue:0
9963792:                          Gamma:4
9963795:                           Gain:16
9963800:           Power Line Frequency:1
9963803:                      Sharpness:20
{ pixelformat = ''YUYV'', description = ''YUYV 4:2:2'' }
select time = 3003101
select timeout   
       

root@am335x-evm:/home/david# v4l2-ctl --all
Driver Info (not using libv4l2):
        Driver name   : uvcvideo
        Card type     : USB2.0 PC CAMERA
        Bus info      : usb-musb-hdrc.0-1
        Driver version: 4.14.79
        Capabilities  : 0x84200001
                Video Capture
                Streaming
                Extended Pix Format
                Device Capabilities
        Device Caps   : 0x04200001
                Video Capture
                Streaming
                Extended Pix Format
Priority: 2
Video input : 0 (Camera 1: ok)
Format Video Capture:
        Width/Height      : 640/480
        Pixel Format      : 'YUYV'
        Field             : None
        Bytes per Line    : 1280
        Size Image        : 614400
        Colorspace        : Default
        Transfer Function : Default
        YCbCr Encoding    : Default
        Quantization      : Default
        Flags             :
Crop Capability Video Capture:
        Bounds      : Left 0, Top 0, Width 640, Height 480
        Default     : Left 0, Top 0, Width 640, Height 480
        Pixel Aspect: 1/1
Selection: crop_default, Left 0, Top 0, Width 640, Height 480
Selection: crop_bounds, Left 0, Top 0, Width 640, Height 480
Streaming Parameters Video Capture:
        Capabilities     : timeperframe
        Frames per second: 30.000 (30/1)
        Read buffers     : 0
                     brightness (int)    : min=0 max=255 step=1 default=128 value=128
                       contrast (int)    : min=0 max=255 step=1 default=135 value=135
                     saturation (int)    : min=0 max=255 step=1 default=80 value=80
                            hue (int)    : min=-127 max=127 step=1 default=0 value=0
                          gamma (int)    : min=1 max=8 step=1 default=4 value=4
                           gain (int)    : min=0 max=65535 step=1 default=16 value=16
           power_line_frequency (menu)   : min=0 max=2 default=1 value=1
                      sharpness (int)    : min=0 max=255 step=1 default=20 value=20

AM3874: Reserve Power for AM3874 small board when main input power if cut

Part Number:AM3874

Hello, I'm planning to design a small board that receives Gigabit ethernet data and saves the data to CFAST 2.0 Compact Flash card using the SATA interface. In the event that main power is cut I need to close the data file on the Compact Flash correctly. How can I provide a backup power supply for my board that will provide at least a minute of power for the AM3874 processor and the CFAST card? What options do I have to provide a small amount of power so the file that I am writing to on the memory card can be closed correctly?

Thank you 

Linux/AM5728: Problem in Audio capture

Part Number:AM5728

Tool/software: Linux

Hi,

we are working on a custom AM5728 based board. we are trying to capture Audio through McASP using TLV320AIC3106.

audio is getting captured but while analyzing the output file it is observed that negative part of the waveform is getting clipped. Hardware input is ok till the input of TLV320AIC3106. we are giving input to 2L only . 2R is tied to ground.

Are there any software settings to be checked ? like signed or unsigned format etc.. 

BR

Markareddy

Linux: MATHLIB C66X Linux installer crashes X windows

Tool/software: Linux

I'm trying to install the latest mathlib for C66X DSPs. The installer comes up with a dialog which has a language selection drop down. I leave it on English and click the OK button. At that point it crashes my X Windows system (xorg), causing all programs to close and returning to the login screen. This is on Ubuntu 18.10 with the Nvidia proprietary graphics drivers.

I see that the mathlib_c66x_3_1_2_1_Linux.bin is a 32 bit executable ELF. I verified the md5 checksum is correct. Any ideas what could be causing this? Maybe it is a 32 bit executable issue, since I'm running a 64 bit Linux system?

Is there any other way to obtain the c66x mathlib SDK? A simple archive for example?

Thanks for any help with this.

Best regards,

Element Green

Linux/AM5708: SDK for Custom board based on AM5708

Part Number:AM5708

Tool/software: Linux

Hello Experts,

Could you please help me to find out most suitable sdk for custom board based on AM508? 

Initially we tried to go with "http://software-dl.ti.com/processor-sdk-linux/esd/AM57X/latest/index_FDS.html"  but it is not working after software changes w.r.t custom board.

As we are in critical stage of project i am ready to take paid support from ti or any other vendors associated with ti.

Thanks,

Gourav


RTOS/AM3359: How to change or add PDO on ethercat slave

Part Number:AM3359

Tool/software: TI-RTOS

Hello!

I have saw the file named PRU-ICSS EtherCAT Slave Troubleshooting Guide.   I got  some questions:

How many ways to change or add  PDO?

Why does the second method do not use xml file?

How does the second method config the esc's registers?

Where  can I find the details of the first method? Of course I have  browsed the Beckhoff's page and I  did not find details.

Last ,I want to use the first method to realize the CIA402 part .The first method need to use SSC,but, the file  PRU ICSS EtherCAT Slave User Guide said that Option #2 <PRU_ICSS_EtherCAT.html#generating-ethercat-sources-using-beckhoff-ssc-tool-option-2>`__ will NOT work for CiA402 application. I do not know if CIA402 can work with the first method.

Image may be NSFW.
Clik here to view.
Image may be NSFW.
Clik here to view.

Than you for your help and forgive me for my terrible Eglish!!!!!!!

Linux/TDA2: Where to find "Image data buffer address of capture source" ?

Part Number:TDA2

Tool/software: Linux

Hi Sir,

My HW is TDA2x CPU board + Vision Board + daughter board + LVDS sensor and SDK is PROCESSOR_SDK_VISION_03_05_00_00 with TDA2XX_EVM_LINUX_ALL define.

I select use-case "4CH VIP LVDS capture + SGX MOSAIC + DISPLAY" and I want to save the source image in this ues-case.

I try to check the typedef structure in this case, but I can't find the parameters for recording the image buffer address.

"structure name: Chains_lvdsVipMultiCam_SgxDisplayAppObj".

May you tell me where to find the image buffer location and any document about describing the structure define ?

Thanks.

Ranny.

CCS / TMS320C5545:C5545 BoosterPack

Part Number:TMS320C5545

Tool/software: Code Composer Studio

Hello,

I am using TI's chip for the first time. I am currently learning how to compile on my C5545 BoosterPack. Is there any documentation for beginners?

RTOS/TMS320C6657: socketndk.h: Cannot open file "sys/time.h"

Part Number:TMS320C6657

Tool/software: TI-RTOS

Hello, Dear Friends. I have a problem with including NDK to my project.

I am using next components:

-> bios_6_73_01_01

-> ndk_3_40_01_01

-> pdk_c665x_2_0_12

-> xdctools_3_51_01_18_core

var boardName = "evmC6657";
var deviceType = "c6657";
var socType = "c6657";
var osType = "tirtos";


var boardSettings = xdc.useModule("ti.board.Settings");
boardSettings.boardName = boardName;

var cslSettings = xdc.useModule("ti.csl.Settings");
cslSettings.deviceType = deviceType;
cslSettings.useCSLIntcLib = true;

var osalSettings = xdc.useModule("ti.osal.Settings");
osalSettings.osType = osType;
osalSettings.socType = socType;

var ndkSettings = xdc.useModule("ti.transport.ndk.nimu.Settings");
ndkSettings.socType = socType;

var emacSettings = xdc.useModule("ti.drv.emac.Settings");
emacSettings.socType = socType;

var Global = xdc.useModule("ti.ndk.config.Global");
Global.IPv6 = false;
var Udp = xdc.useModule("ti.ndk.config.Udp");
var Ip = xdc.useModule("ti.ndk.config.Ip");

var emacSettings = xdc.useModule("ti.drv.emac.Settings");
emacSettings.socType = socType;

var BIOS = xdc.useModule("ti.sysbios.BIOS");

var Startup = xdc.useModule("xdc.runtime.Startup");
Startup.firstFxns[Startup.firstFxns.length++] = "&knEvmInit";

var Task = xdc.useModule("ti.sysbios.knl.Task");
var taskParams = new Task.Params();
taskParams.stackSize = 32768;
Program.global.myTask = Task.create("&knUdpStart", taskParams);

Problem:

Starting build of library sources ...
making C:/workspace_8_3_0/test_udp/src/sysbios/sysbios.ae66 ...
Build of libraries done.
cle66 package/cfg/test_udp_pe66.c ...
 
>> Compilation failure
subdir_rules.mk:19: recipe for target 'build-286147953-inproc' failed
"C:\ti_8_3_0\ndk_3_40_01_01\packages\ti\ndk\inc\socketndk.h", line 48: fatal error: cannot open source file "sys/time.h"
1 catastrophic error detected in the compilation of "package/cfg/test_udp_pe66.c".
Compilation terminated.

What am I doing wrong?

TMS320C6678: Interfacing C66x DSPs to USB and other microcontrollers

Part Number:TMS320C6678

I'm working on several products that will benefit from as much DSP resources as possible, but at least a few of these products wont require a microcontroller, due to low complexity of the application software (primarily DSP computation intensive). The TMS320C6678 and 6657 seem like attractive DSP options for this. One product will likely be a PCIe card for desktop PCs, where the integrated PCIe interface can be used. However, I would also like to make a portable USB 2.0 high speed product, possibly also with Ethernet.

It seems these DSPs have Gigabit Ethernet peripherals, but I don't see anything obvious which could interface with USB. The SPI interface appears to be master only. The only straightforward option I can see is using a USB to UART bridge, but that would severely limit the amount of data throughput.

I also looked at the AM57x Sitara processors with built in C66x DSPs. I may just end up using one of those (like the AM5706) interfaced to the C6678 or 6657 over PCIe. That doesn't seem to be as cost effective as I'd like though, but might be the route to take.

I'd appreciate any tips on system architecture and typical ways to interface C66x DSPs.

Best regards,

Element Green

Viewing all 17527 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>