Quantcast
Channel: Processors forum - Recent Threads
Viewing all 17527 articles
Browse latest View live

AM6548: warning with sdk 6.0.0.7 building the dts files in the linux directory

$
0
0

Part Number: AM6548

Hi

I was getting the below warning when i build the dts files 

arch/arm64/boot/dts/ti/k3-am654-base-board.dtb: Warning (power_domains_property): /interconnect@100000/interconnect@28380000/rti@40610000:power-domains: property size (8) too small for cell size 2

i think i know why below is what i changed and the warning was gone.

edited the below file adn changed line 440

 

ti-processor-sdk-linux-am65xx-evm-06.00.00.07/board-support/linux-4.19.38+gitAUTOINC+4dae378bbe-g4dae378bbe/arch/arm64/boot/dts/ti/ k3-am65-mcu.dtsi

 

from

            power-domains = <&k3_pds 135>;

to

            power-domains = <&k3_pds 135 TI_SCI_PD_EXCLUSIVE >;

then no more warning. I hope that is the correct thing to do. if yes i suggested we provide a patch to the dts files.

Thanks

regards

Mohsen


DRA716: Does DRA7x support secure boot ?

$
0
0

Part Number: DRA716

Does DRA7x support secure boot ? And any reference document ,TKS!!!

TDA2HG: TDA2XX linux VSDK0305 IPU2 GPIO interrupt

$
0
0

Part Number: TDA2HG

Hi, master

   complete code:

//gpio2_6
#define gpio_pin    6   //14//6 //14// //gpio2-6
uint32_t gpio_base_address = SOC_GPIO2_BASE;
uint32_t interrupt_num     = 52;//30//26;//51//52//29;//6;

#define IRQ_XBAR_CPU_ID         CSL_XBAR_IRQ_CPU_ID_IPU1
#define IRQ_XBAR_INST_NO        CSL_XBAR_INST_IPU2_IRQ_52//CSL_XBAR_INST_IPU1_IRQ_33
#define IRQ_XBAR_INDEX          CSL_XBAR_GPIO2_IRQ_1//CSL_XBAR_DSP1_IRQ_MMU0


//isr thread
void gpioIsr(void *arg)
{
    Vps_printf("I");
    //GPIOPinIntDisable(gpio_base_address, GPIO_INT_LINE_1, gpio_pin);  //cam4 934 intb //GPIO2_6_PD cam4 int
#if 1
    uint32_t gpio_pin_value;//,cam4_pin_value = 6;

    /*Disable interrupt*/
    GPIOPinIntDisable(gpio_base_address, GPIO_INT_LINE_1, gpio_pin);  //cam4 934 intb //GPIO2_6_PD cam4 int
    /*Read pin*/
    gpio_pin_value = GPIOPinRead(gpio_base_address, gpio_pin);
    GPIOPinIntClear(gpio_base_address, GPIO_INT_LINE_1, gpio_pin);
    printf( "I\n");
     /*Enable interrupt interrupt*/
    GPIOPinIntEnable(gpio_base_address, GPIO_INT_LINE_1, gpio_pin);
#endif   
}


int cam_intb_init(void)
{
    //m4pid0
    /*Configure interrupt controller*/

    BspOsal_irqXbarConnect(CSL_XBAR_INST_IPU2_IRQ_52,CSL_XBAR_GPIO2_IRQ_1);
    BspOsal_registerIntr(interrupt_num,gpioIsr,(void *) 0);
    GPIOPinIntDisable(gpio_base_address, GPIO_INT_LINE_1, gpio_pin);
#if 1   
  
    /*Enable GPIO*/
    GPIOModuleEnable(gpio_base_address);
    /*Configure and enable debouncing feature*/
    GPIODebounceTimeConfig(gpio_base_address, 0xFF);
    Vps_printf("GPIODebounceTimeConfig\n");
    GPIODebounceFuncControl(gpio_base_address, gpio_pin,
                            GPIO_DEBOUNCE_FUNC_ENABLE);
    Vps_printf("GPIODebounceFuncContro\n");
    GPIOIntTypeSet(gpio_base_address, gpio_pin,GPIO_INT_TYPE_FALL_EDGE);    
    Vps_printf("GPIOIntTypeSet\n");
    /* Set pin direction as input*/
    GPIODirModeSet(gpio_base_address, gpio_pin, GPIO_DIR_INPUT);
    Vps_printf("GPIODirModeSet\n");
    /*Clear interrupt*/
    GPIOPinIntDisable(gpio_base_address, GPIO_INT_LINE_1, gpio_pin);
    Vps_printf("GPIOPinIntDisable\n");
    GPIOPinIntClear(gpio_base_address, GPIO_INT_LINE_1, gpio_pin);
    Vps_printf("GPIOPinIntClear\n");

    /*Enable interrupt*/
    GPIOPinIntEnable(gpio_base_address, GPIO_INT_LINE_1, gpio_pin);
    Vps_printf("GPIOPinIntEnable\n");
#endif

    return 0;

}

   I am not sure if the interrupt_num = 52 and gpio_pin = 6 of gpio2_6 are correct.

I'm not sure GPIO2_6 is configured correctly as follows

BspOsal_irqXbarConnect (CSL_XBAR_INST_IPU2_IRQ_52, CSL_XBAR_GPIO2_IRQ_1);

TDA2EG-17: TDA2EG-17 How to Force IPu HDMI Output

$
0
0

Part Number: TDA2EG-17

ti-processor-sdk-linux-automotive-dra7xx-evm-03_04_00_03 linux, I can force the output of hdmi, but  processor_sdk_vision_03_05_00  M4 IPU control DSS  I don't know how to force the output of HDMI   processor_sdk_vision_03_05_00 , 

in  M4 IPU control DSS RTOS driver  use oscilloscope energy to reach HDMI clock when there is a HDMI receiver, but when there is no HDMI receiver, we can't use oscilloscope to measure HDMI clock.

PROCESSOR-SDK-AM335X: Spectre vulnerability

$
0
0

Part Number: PROCESSOR-SDK-AM335X

Hi to ti developers,

i have a BeagleBoneBlack board with cpu AM335x that has Arm Cortex-A8 core. i need to know that is this model CPU vulnerable against spectre-v1 attack and if yes what is the mitigation for this attack.

thanks

CCS/OMAP-L138: Mitydsp-L138-FX-225-RC board

$
0
0

Part Number: OMAP-L138

Tool/software: Code Composer Studio

Hello,

I'm working on one project, I have 1.Mitydsp-L138-FX-225-RC board 2.TMS320-XDS100v3 emulator 3. code composer studio(CCS) 4. Teraterm.

i connected the whole setup Mitydsp to emulator and USB to pc and I wrote hello program which got Debug and runs successfully.

But, I do not receive any data on the Teraterm. where I'm doing the mistake?

I'm very new to this hardware and I don't understand how it works.

Thanks

TDA2SG: [Linux] using EDMA from user space

$
0
0

Part Number: TDA2SG

Dear Champs,

My customer is using Processor SDK Vision (Linux) v3.2 on TDA2x. Their user space program would like to use EDMA to speed up buffer copy. I checked E2E, found a related post below.

The post mentioned there is only kernel space driver for EDMA. User space driver is not available. However, the post is for AM57x, I'm wondering if the SDK for TDA2x(DRA7x) has the same limitation. Could you help confirm?

If there is really no EDMA user space driver available, could you suggest some alternative ways to utilize EDMA from user space?

Thanks!

TMS320C6657: SYSBIOS - Statck overflow exception

$
0
0

Part Number: TMS320C6657

Hello,

we are having stack overflow problem when running our application. Our env contain bios_6_46_04_53, mcsdk_2_01_02_06 and CCS7.
Our application is running on the two C66x cores of the C6657.

1) we are running the same code on both cores, the code is located in the DDR3 memory.
2) the tasks stacks are "allocated" from pre allocated regular memory - not heap mem. I.e we have two sections for global buffers. one for each core. and the "memory allocating" is done from these buffers.
these sections are mapaed to the DDR3 memory as well (in the CFG file). We can not put the tasks stacks memory in L2 memory becuase we need the L2 memory for other purposes.
3) the .stack section is mapped to the L2 memory.
4) Typical sizes of our tasks stacks are from 16KB to 150KB.
5) In our application, the tasks are doing context switches every 1-2 milli seconds.
6) The stack overflow exception is accured In core 0 when Core 1 starts to run and probably "allocating" memory from its global buffer (see point 2).
In core 0 there is a call to Task_sleep that causes tasks context switching. The exact code line that raises the stack overflow exception is in Task.c file line 418, snip of code is attached.

---------------------------------------------------------------------------------


    if (!Task_SupportProxy_checkStack(newTask->stack, newTask->stackSize)) {
        Error_raise(NULL, Task_E_stackOverflow, newTask, 0);
    }

-----------------------------------------------------------------------------------

What can be the reason for the exception ?

Thank you
Eyal


TMS320DM6437Q: Connection to CMOS sensor and RGB LCD

$
0
0

Part Number: TMS320DM6437Q

Hi,

i want to create a system below:

CMOS Sensor(OV2710,DVP INTERFACE)=>>> TMS320DM6437Q=>>>LCD(RGB)

the DVP infterface is the general digital video port, include: PCLK/VD/HD/DIGITAL[9:0], is the VPFE support this DVP interface? addtionally,OV2710 need a system clock input XVCLK(24M Hz),  i didn't see it in VPFE, where pin can provide the clock to sensor?

PROCESSOR-SDK-AM335X: examining program flow prediction

$
0
0

Part Number: PROCESSOR-SDK-AM335X

I am examining ARM-Cortex A8 flow prediction abilities, in order to done this i implemented below code and execute it on ti AM335X soc.

char SecretDispatcher[256 * 512];
int counter = 0;

//evicting SecretDispatcher from cache
...

while(counter < (512 * 9 + 1))
{
    //evict counter from cache
    ...

    if(counter < (512 * 9))
    {
        asm volatile ("LDR %0, [%1]\n\t"
        : "=r" (value)
        : "r" (SecretDispatcher + counter)
      );
    }
}

//measuring access time to SecretDispatcher[9*512], i expect that this memory cell exist in cache but it dosen't

in above code, i will execute if statement with true condition 8-time for training branch predictor of CPU, and in 9th i expect that cpu access to SecretDispatcher[9 * 512] speculatively however the condition is not true. this is just simple spectre-v1 PoC attack and i implemented this attack successfully on intel X86 processor with same logic and i expect that this work also in Cortex-A8 as arm clarified that this processor is vulnerable against this attack.

there is anything that i missing?? there is anything that i should do to enable program flow prediction on ARM-Cortex A8??

TDA3XEVM: Vision SDK Build System Error

$
0
0

Part Number: TDA3XEVM

Hi,

I am using Vision SDK 3.04 and it has been working until recently. The same code base is built fine on one Windows PC but not another. I am not sure why and hopefully you can give me a clue or have faced similar issues as such before. The error was below when I tried to:

>> gmake clean

gmake -C C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/links_fw/src/rtos linkfw_libs_clean
gmake[2]: Entering directory `C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/links_fw/src/rtos'
gmake -C C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/links_fw/src/rtos/links_common/algorithm CORE=ipu1_0 clean ; gmake -C C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/links_fw/src/rtos/links_common/algorithm CORE=ipu1_1 clean ; gmake -C C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/links_fw/src/rtos/links_common/algorithm CORE=c66xdsp_1 clean ; gmake -C C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/links_fw/src/rtos/links_common/algorithm CORE=arp32_1 clean ;
gmake[3]: Entering directory `C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/links_fw/src/rtos/links_common/algorithm'
C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/ti_components/os_tools/windows/xdctools_3_32_01_22_core/bin/rm -rf C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/binaries/apps/tda3xx_rvp_bios_radar/obj/links_common_algorithm/tda3xx-rvp/arp32_1/debug/* C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/binaries/apps/tda3xx_rvp_bios_radar/obj/links_common_algorithm/tda3xx-rvp/arp32_1/debug/.deps/* C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/binaries/apps/tda3xx_rvp_bios_radar/lib/tda3xx-rvp/arp32_1/debug/*
gmake[3]: *** No rule to make target `;'. Stop.
gmake[3]: Leaving directory `C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/links_fw/src/rtos/links_common/algorithm'
gmake[2]: *** [links_common_algorithm_clean] Error 2
gmake[2]: Leaving directory `C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/links_fw/src/rtos'
gmake[1]: *** [clean] Error 2
gmake[1]: Leaving directory `C:/TI/PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/links_fw/src/rtos'
gmake: *** [links_fw_libs_clean] Error 2

And then if I do:

>> gmake -s -j depend

MAKEFILE.MK:274: warning: overriding commands for target `header'
MAKEFILE.MK:274: warning: ignoring old commands for target `header'
MAKEFILE.MK:279: warning: overriding commands for target `footer'
MAKEFILE.MK:279: warning: ignoring old commands for target `footer'
MAKEFILE.MK:285: warning: overriding commands for target `all'
MAKEFILE.MK:285: warning: ignoring old commands for target `all'
gmake[3]: *** No rule to make target `;'. Stop.
gmake[3]: *** Waiting for unfinished jobs....
gmake[2]: *** [depend] Error 2
gmake[1]: *** [links_fw_depend] Error 2
gmake: *** [depend] Error 2

Again

Thanks,

--Khai

BEAGLEBK: I2C Driver and Bus Recovery

$
0
0

Part Number: BEAGLEBK

Hello,

I am working on optimising a system which employs a Beaglebone Black and a number of slaves connected via I2C. 

I was having some problems with slaves rarely (once every 24 hours or so) holding onto the I2C lines, causing the entire board to crash. I believe this can be overcome by a better linux I2C driver, which properly implements the I2C standard's recovery protocol (toggling CLK a number of times to get the slave to release the line). 

To fix this this I have upgraded from the board's initial Debian 8/Linux 3.16 system to Debian 10/Linux 4.19, (provided here) hoping that the later version would have a better implementation of the I2C driver. I have been running this for a few hours now, and have yet to see a crash.

However, ideally I want to ensure that the recovery function is implemented correctly, so I've spent a lot of time reading manuals/forums (so far to no avail) to figure out where this particular driver is located. In the related thread on this forum (here), and in a number of other places, people were pointed to /i2c/busses/i2c-omap.c, however I cannot find this file anywhere (on either the standard Debian 8 OS, or Debian 10). 

Would somebody be able to tell me A) Where I can find the main I2C driver? (I previously found some guidance, but not the answer, here) and B) Whether Linux 4.19 should have an effective I2C recovery implementation (better than that in Linux 3.16). I suspect that it does based on updates such as this

Thank you

Compiler/DM388: Capture YUV data from FPGA using McFW

$
0
0

Part Number: DM388

Tool/software: TI C/C++ Compiler

Hi supporter, 

I just start with DM388. When I capture the RAW data from the camera it works, but when I change the input for DM388 as YUV using FPGA it does not work. I know I need to change the driver for DM388 but I looking for a while but I don't have any idea. May I ask how to config the McFW for capture YUV data and which file I have to change?

Regards,

Thanh

TDA2SX: Does TDA2S support 2 Mega surrounded view cameras ?

$
0
0

Part Number: TDA2SX

Because we are familiar with TDA2S plaftform and we developed mature product, TDA2S is cheaper than TDA2P, as we know TDA2P supports few CMOS sensors.

if we give up integrated ISP, does TDA2S support 2 Mega surrounded view cameras ?

Linux/AM5728: cmem

$
0
0

Part Number: AM5728

Tool/software: Linux

CPU  : DRA752-GP ES2.0
Model: TI AM572x EVM Rev A3
DRAM:  1 GiB

Processor SDK version : 04.03
[    0.000000] Linux version 4.9.65-rt23-06391-gcb3fba3 (cy@ubuntu) (gcc version 6.2.1 20161016)

I can get the following info by the shell command that is "cat /proc/iomem".My question is : why the physical address range of CMEM is inside the physical address range of System RAM?

80000000-9fffffff : System RAM                                                  

       80008000-80dfffff : Kernel code                                               

       81000000-810ade57 : Kernel data                                               

a0000000-abffffff : CMEM                                                        

ac000000-bfbfffff : System RAM     


66AK2G12: Failed DDR3L compliance test

$
0
0

Part Number: 66AK2G12

Hello,

My customer failed DDR3L compliance test on their custom board.
They have several errors in write DQS waveform, for example,

1. Undershoot/Overshoot is too much compared with the specification
2. Vix cross point does not meet the specification 
3. VSEH/VSEL does not meet the specification

Because those violations are for write DQS, i suggested the customer to use Dynamic ODT to optimize the waveform. As a result, they overcame 2 and 3, but 1 is still sticky.

Their current DDR3L register configuration (captured from their DDR3L calc spread sheet) looked like below. As you see, Dynamic ODT has been enabled.

 

And the following is current error status for overshoot/undershoot on write DQS.

Overshoot:

Undershoot:

Please note overshoot and undershoot spec comes from the following document:

So, my question here is, do you have any other suggestions to reduce the write DQS swing to meet the spec ?

Best Regards,
NK

 

AM5728: DDR configuration tool

D3-3P-TDA3X-SK: How do I generate DCC tool tuning table

$
0
0

Part Number: D3-3P-TDA3X-SK

Hi,

I have some question about DCC tuning.

1. I found xxx_3D_lookup_table.txt in the vsdk(vision_sdk\apps\src\rtos\iss\src\sensor\ar0140\dcc_xml\).

  How do I generate them? From DCC?

2. How do I generate files as below.

  WDR_lut_12to12_x_pow_0.7_dec.txt

  WDR_lut_x_pow_XX.txt

  WDR_lut_x_pow_XX_dec.txt

Thanks.

RTOS/TDA2HG: The display is mirrored

$
0
0

Part Number: TDA2HG

Tool/software: TI-RTOS

I  am  using PROCESSOR_SDK_VISION_03_06_00_00_setuplinux to develop  the TDA2HG with a custom sensor.

Now I can display the captured image, but the image is mirrored

How should I modify it to make the picture display properly?

regards,

chengbo

[TDA4M] EVM machine vision board IMX264 support at PSDKRA/PSDKLA v0.9 ?

$
0
0

Hello

I will use machine vision board & IMX264 sensor.

But in PSDKRA/PSDKLA V0.9 IMX264 sensor is not supported as i see.

IMX390 is only supported at V0.9.

When PSDKRA/PSDKLA is supprot IMX264 & machine vision board?

Is it supported at V1.0?

Thanks & regards.

Viewing all 17527 articles
Browse latest View live