NOT ABLE TO DEBUG ARM CODE
HIGHLY IMPORTANT ERROR NOT ABLE TO DEBUG THE CODE ICEPICK_C
Hi
Team I am not able to debug the dsp and arm code
i get this error
Kindly let me know what could be done!
ICEPICK_C: Error connecting to the target: (Error -1265 @ 0x0) Device ID is not recognized or is not supported by driver. Confirm device and debug probe configuration is correct, or update device driver. (Emulation package 5.1.641.0)
Thank you
Deepak R
Help on omapl138 lcdk analog io
Dear all, I have an omapl138 lcdk. I want to capture analog input and after processing the input I will generate analog output. The audio io channel is not suitable for my application as it is band limited to audio range. I want lesser frequency like voltage from temperature sensor.
Kindly help me to solve my problem.
omap l138 camera and lcd
Dear all I have an omapl138 lcdk. I want to capture image from camera and display on lcd. Kindly help me to choose the proper lcd and camera for my lcdk
Unable to write to registers of timer0 for OMAP-L138
Hi,
I am testing baremetal driver for TIMER0 module on DSP side of OMAPL138. I am able to create executable image and able to program image with help of IPC. The problem that I am facing is, the register writes that I am performing are not successful. For example if I write value of 0 to TGCR register and read back, the value is not reflecting properly. I have verified that the base addresses and offset I am using are proper as, I am able to read proper REV ID for TIMER 0 module.
From one of the link I came to know such issues will happen when the clock to the module is not provided properly. I checked if I can to any thing w.r.t PSC setting for TIMER0, but there are no register relevant to TIMERS
I have attached product.bld and product.bld.xml that I used for creating BIOS image.
please note that timer64bit_noos is executable file name and omap_l138_64_bit_timer_plus_drv.c","halconfig.c" and "timertest.c are source files.
Please let me know where I am going wrong or give some pointers
Following are package details,(Please visit the site to view this file)
ipc_3_00_01_24,
bios version bios_6_35_03_47
xdctools version xdctools_3_25_02_70
linux 3.10.1
Thanks in Advance,
Generate pulse with OMAP L138 LCDK
Debugging slavecore (DSP) using syslink and gdb
Hello,
I'm using OMAP-L138 LCDK heterogeneous target board, XDS200 debugger, CCSv6.1.2, bios_6_35_04_50, ipc_1_25_03_15, syslink_2_21_01_05 and xdctools_3_25_03_72.
I'd like to debug DSP core application running on linux (ARM-core) with gdb and syslink.
I almost found the solution about development environment except slavecore debug using gdb or any solution.
TI's wiki explained "Debugging slave cores running SysBios" but it is insufficient to solve the problem. http://processors.wiki.ti.com/index.php/CCS_Debugging_of_Linux_Applications_with_GDB
Anyone help me?
Thank you :)
Need help on interfacing communication between ARM and DSP OMAPL137
Hi
Team
As I am working on omapl137 spectrum kit to get hands on interfacing communicating between ARM and DSP .I need help on the initial codes and the reference document that hast o be gone through to start this!
Kindly Help......
1) Reference document for API and Interaction between ARM<--->DSP
2)Source code basics example for getting started to know the communication between ARM DSP
3)Software tools that is required to compile and interact between DSP<--->ARM
Thank you
Deepak R
Reading binary file via fread() in OMAP-L138 / C674x simulator
Here's my setup:
Host PC: Windows 10 64-bit
CCS: Version: 5.5.0.00077
Simulator: C674x cycle accurate simulator, little endian
I am trying to read a binary file using fread(), see source code below. However, the data appearing in the memory browser is incorrect.
Each element in the binary file is a uint8, and the values of these elements are as follows:
[1 2 3 .. 10 5 5 5 ....]
(i.e. count from 1 to 10 followed by lots of 5).
However, what I actually get is this:
I have attached the input binary file at the end of this post. The source code and build settings are as follows:
Compiler settings: -mv6740 --abi=coffabi -g --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=omapl138 --display_error_number --diag_warning=225 --diag_wrap=off --printf_support=full -k --output_all_syms
Linker Settings: -mv6740 --abi=coffabi -g --define=omapl138 --display_error_number --diag_warning=225 --diag_wrap=off --printf_support=full -k --output_all_syms -z --stack_size=0x8000 -m"06_fileIo_heapStorage.map" --heap_size=0x8000 -i"C:/ti/ccsv5/tools/compiler/c6000_7.4.4/lib" -i"C:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --reread_libs --define=DSP_CORE=1 --warn_sections --display_error_number --diag_wrap=off --xml_link_info="06_fileIo_heapStorage_linkInfo.xml" --rom_model
Source code:
#include <iostream> #include <fstream> #include <vector> #include <stdio.h> using namespace std; typedef unsigned char uint8_t; typedef unsigned int uint32_t; static const uint32_t MAX_BUFFER_SIZE = 1000U; //function prototype uint8_t* readDataFromFile_CVersion(const char* filename); //main function int main(void) { const char filename[100] = "C:/Work/temp/m-001-1.bin"; uint8_t *pData = readDataFromFile_CVersion(filename); delete[] pData; return 0; } //function for reading binary file uint8_t* readDataFromFile_CVersion(const char* filename) { FILE *fp1; uint32_t fileSizeInBytes; size_t bytesRead; fp1 = fopen(filename, "rb"); if (fp1 == NULL) { printf("failed to open input file"); } //obtain the file size fseek(fp1, 0, SEEK_END); fileSizeInBytes = ftell(fp1); rewind(fp1); std::size_t numBytesToRead = (fileSizeInBytes > MAX_BUFFER_SIZE) ? MAX_BUFFER_SIZE : fileSizeInBytes; uint8_t *dataBuf = new uint8_t(numBytesToRead); bytesRead = fread(dataBuf, 1, numBytesToRead, fp1); if (bytesRead != numBytesToRead) { printf("Reading error"); } //terminate fclose(fp1); return dataBuf; }
(Please visit the site to view this file)
Changing SYSBIOS Default Timer
Hi,
I have an application where I need to use timer 0 to generate a very fast pulse. This is on the ompal137 on the dsp and arm side. I can accomplish this by telling the clock module to use timer 1 leaving timer 0 for the pulse generation. If I disable the clock module it defaults to timer 0 and I have not figured out how to tell sysbios which timer to use without using the clock module. The documentation is really scarce on this topic. Sadly the only timer exposed to the outside world is TM64P0_OUT12 so that side of the timer is exclusive for the ADC convert clock.
What I'm trying to do, since the OMAPL137 has two 64 bit timers from which SYSBIOS grabs one 32 bit unchain mode, is to control which timer SYSBIOS uses. I need to allocate halves of the 64 bit to different things. For example DSP uses timer 1 lower half and ARM timer 1 upper half.
On the ARM side I'm also running SYSBIOS and I'm not sure if both OS can use the same timerid for example timer 1. If not, is it possible to assign in sysbios one half of timer 1 to the DSP and the other half to the ARM?
OMAP-L138 LCDK Code Composer JTAG error
Hi,
I just bought a OMAP L138 and a XDS100v3 JTAG emulator for a school project, but when I set up the target in code composer I always get the following error when testing the connection. My LCDK is plugged in to the 5V cable and the XDS100 to the miniusb port.
An error occurred while hard opening the controller.
-----[An error has occurred and this utility has aborted]--------------------
This error is generated by TI's USCIF driver or utilities.
The value is '-180' (0xffffff4c).
The title is 'SC_ERR_CTL_NO_TRG_POWER'.
The explanation is:
The controller has detected a target power loss.
The user must turn-on or connect the power supply for the target.
[End: Texas Instruments XDS100v3 USB Debug Probe_0]
Any help will be appreciated.
Thanks
Mauricio
How can I use Ethernet to send something value??
In the enet_lwip.c example, I check the IP address of the LCDK in the TeraTerm.
And I check the mac address and IP address of the LCDK in the Wireshark.
But, I don't know why IP address and Mac address appear in the wireshark. Why??
I would like to proceed with the use of other Ethernet, let me know if you have any other examples or manuals. Please....
I want to send another value using Ethernet. What should I do??
I use the C6748 Development Kit(LCDK), TMS320C6748. And Compiler is CCS V5_5.
omapl138 logicpd
Hai,
I am Using OMAPL138 LOGICPD board as i am feeding input through line in same output without any change i am getting at output what may be the issue
is their any issue with CODEC part
Regarding OMAP-L138 and C6748 overshoot and undershoot values
Hi,
Under absolute maximum ratings, AC transient overshoot/undershoot values is mentioned as 'DVDD + 20% up to 20% of signal period'.
For example, if DVDD = 3.3V and signal period = 0.1us (10MHz), then transient overshoot specification would be 3.3V + 20% (=3.96V) for 0.02us.
How should I calculate undershoot transient specification? Is it that -0.2V swing is allowed below 0V for 0.02us?
Please correct me if I am wrong.
Awaiting for your reply . . .
Regards,
Archana Rao
C6748 RBL behavior: ECC uncorrectable error
Hello,
What does RBL behave if it reads NAND block 1 which is not a bad block and uncorrectable read ECC error is happen? It assumes it could read AIS magic word (0x41504954) correctly. It gives up booting or ignores and tries to boot up?
Regards,
Kazu
interfacing TI Processor with TI controller
Can we interface TMS320C6748 with any TI controller? How?
Is there any negative impact on DDR2 throughput when I set IOPWRDN and PWRDNEN on C6748?
Hi Champ,
Could you please let me know if there is any negative impact on DDR2 throughput when I set IOPWRDN bit in VTPIO_CTL and PWRDNEN bit in DRPYC1R on C6748 to allow the input receivers to save power?
Best regards,
j-breeze
RE: L138: end-of life
[quote user="Shankari G"]
I came across that the hardware board, "Zoom OMAP-L138 EVM" from the "Logic-PD" has released the EOL. This EOL is for the "Evaluation module" and not for the processor, "OMAPL138". May be you are asking about that??
[/quote]
Hello,
I was going to start a new thread, but this one seems relevant. We wanted to purchase more of the Zoom OMAP-L138 EVMs, but those appear to be EOL. Can you tell me of any way to get more of those, or the next suitable EVM/Development kit for the C674X processor?
Regards,
Robert
AM1705 problems when trying to use AIC3106 in Linux
Hello guys,
First of all, my board has the following hardware:
CPU: AM1705
SPI Flash : K0XMFI011 (Spansion) - 4MBytes - Connected to SPI0
Nand Flash: S34ML01G200TFI000 (Spansion) - 128MBytes - Connected to EMIFA
SDR SDRAM : AS4C16M16SA (Alliance Memory) - 32MBytes - Connected to EMIFB - Only one RAM chip
Ethernet : LAN8720a
Audio : TLV320AIC3106 controlled via I2C1
Power : TPS65023
Now my question:
So far I managed to have my board almost ready with the exception of the AIC3106.
Every time I want to output sound (by playing a file or by using the command speaker-test) the system resets and starts with the U-boot prompt.
I have tried several commands and checked the board-da830-evm.c file but I don't know what to modify.
Attached you can find my (Please visit the site to view this file) and my (Please visit the site to view this file).
Also when I try the following commands I get the following response, so I think that the chip is being detected.
aplay -l
=========
root@da850-omapl138-evm:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: EVM [DA830/OMAP-L137 EVM], device 0: AIC3X tlv320aic3x-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
aplay -
=========
root@da850-omapl138-evm:~# aplay -L
default:CARD=EVM
DA830/OMAP-L137 EVM,
Default Audio Device
null
Discard all samples (playback) or generate zero samples (capture)
root@da850-omapl138-evm:~
Even I can read the registers via I2C by using the following command line:
root@da850-omapl138-evm:~# i2cget -f -y 1 0x18 0x40
0x00
root@da850-omapl138-evm:~# i2cget -f -y 1 0x18 0x33
0x04
root@da850-omapl138-evm:~# i2cget -f -y 1 0x18 0x11
0xff
root@da850-omapl138-evm:~# i2cget -f -y 1 0x18 0x10
0x80
root@da850-omapl138-evm:~#
So it seems that it can access the chip via I2C.
root@da850-omapl138-evm:~# i2cdetect -F 1
Functionalities implemented by /dev/i2c-1:
I2C yes
SMBus Quick Command yes
SMBus Send Byte yes
SMBus Receive Byte yes
SMBus Write Byte yes
SMBus Read Byte yes
SMBus Write Word yes
SMBus Read Word yes
SMBus Process Call yes
SMBus Block Write yes
SMBus Block Read no
SMBus Block Process Call no
SMBus PEC yes
I2C Block Write yes
I2C Block Read yes
root@da850-omapl138-evm:~#
However I realized that the MCASP signals show no activity in these signals:
DA830_ACLKX1 = aic_bclk
DA830_AFSX1 = aic_wclk
DA830_AXR1_0 = aic_dout
DA830_AXR1_5 = aic_din
I rechecked the pinmux settings and they are OK. Attached you can find my (Please visit the site to view this file).
The only exception is the DA830_AHCLKX1 that is being driven by an external 24.576MHz oscillator which also drives the AIC3106.
What can be wrong?
I will really appreciate your help.
Best regards,
Patricio
Hi, I have a question regarding EMA_BA[1:0], both programming and logical addressing?
I am actually interfacing an external asynchronous UART using EMIF. I want to ask what actually happens on EMA_BA[1:0] pins, if I try to access it using EMIF. Or what is the actual program and logical address scheme? How will those EMA_BA[1:0] and EMA_A[13:0] will behave?
Thanks