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.

BIOS PSP 1.30.1 UART driver question.

Hi,

I'm using the UART driver from the PSP 1.30.1 for C6748.

I'd like to have an option to configure the timeout for every receive and send request I make in the application, working in the interrupt mode, not polling.

I worked with DM6435 before, and PSP 1.10.03 for it. There's a special structure for that timeout purpose:

typedef struct PSP_uartDataParam_t
{
char *addr; /**< Buffer Address */
Uint32 timeout; /**< Timeout Value */
} PSP_uartDataParam;

Now, in PSP 1.30.1 there's no such structure. I just pass the pointer to my buffer in the GIO_read/GIO_write.
Is there an option to configure the timeout for each I/O request for UART driver in interrupt mode in BIOS PSP 1.30.1?
Anatoly.
  • Hi Anatoly,

    If you refer the uartSample, while allocating and initializing the GIO object(creating IN,OUT handle), they use a (GIO_Attrs *attrs) parameter.

    typedef struct GIO_Attrs {

    Int nPackets; /* number of asynch I/O packets */

    Uns timeout; /* for blocking calls (SYS_FOREVER) */

    } GIO_Attrs;

    By default, the timeout is "SYS_FOREVER" for blocking calls. You can provide an appropriate 'timeout' value in here. For more information, please refer the DSP/BIOS 5.x  API reference guide placed in top level docs folder of the DSP/BIOS package. Hope this answers your question..

     

    Best Regards,

    Raghavendra

  • GIO_Attrs is used upon GIO_create API. I would not delete and create an I/O channel every time I want to send or receive data.

    I'd like to configure timeout for each buffer I send or receive. Is it possible in PSP 1.30.1 for uart driver?

    Anatoly.

  • Sorry Anatoly,

    To my knowledge, I do not think its possible to provide different 'timeout' for each IO requests in BIOS 5 or in PSP 1.30.01. GIO_create() would just give you an option to provide 'timeout' for all the I/O requests.

     

    Best regards,

    Raghavendra