industrialNETworXnetx

| 12.11.2007 | 11:15 | 5 replies

Ethernet: Second interface

We are running in a Fatal Error during System Startup if we are introducing the second interface of EDD (this is a project of HP). Maybe there is an issue using the wrong instances (The basic ping and tcp/ip demo runs on this board, so it should be a sw issue).

Could someone have a look to the following definitions? The second interface is controlled by the symbol USE_EDD2.

Thanks.

Defines.h
=========

#define TSK_STACK_SIZE_EDD 512 // Memory ass. Ethernet Task
#define TSK_STACK_SIZE_EDD_IRQ 1024 // Memory ass. Ethernet IRQ Task

#define INT_PRIO_EDD1 11
#define INT_PRIO_EDD2 10

#define TSK_PRIO_EDD1_IRQ TSK_PRIO_10
#define TSK_PRIO_EDD2_IRQ TSK_PRIO_11

#define TSK_PRIO_EDD1 TSK_PRIO_46
#define TSK_PRIO_EDD2 TSK_PRIO_47

#define TSK_TOK_EDD1_IRQ TSK_TOK_10
#define TSK_TOK_EDD2_IRQ TSK_TOK_11

#define TSK_TOK_EDD1 TSK_TOK_46
#define TSK_TOK_EDD2 TSK_TOK_47

System_Startup.c
================

STATIC CONST FAR RX_INTERRUPT_SET_T atrXInt[] =
{
{
{"SYSTIMER",RX_PERIPHERAL_TYPE_INTERRUPT,0}, // System Timer interrupt
SRT_NETX_VIC_IRQ_STAT_timer0, // Use external Timer0 Interrupt
INT_PRIO_SYSTIMER, // Priority, defined in defines.h
RX_INTERRUPT_MODE_SYSTEM, // Allow interrupt to be a thread
RX_INTERRUPT_EOI_AUTO, // EOI self by RX
RX_INTERRUPT_TRIGGER_RISING_EDGE, // Edge triggered
RX_INTERRUPT_PRIORITY_STANDARD, // Normal Priority
RX_INTERRUPT_REENTRANCY_DISABLED, // Interrupt itself is not reentrant
}

// Edd interupts

#ifdef USE_EDD1
,
{{"COM0",RX_PERIPHERAL_TYPE_INTERRUPT,0}, /* Communication Channel, Instance 0 */
SRT_NETX_VIC_IRQ_STAT_com0, /* Use external communication channel 0 Interrupt */
INT_PRIO_EDD1, /* Priority */
RX_INTERRUPT_MODE_TASK, /* Allow interrupt to be a thread */
RX_INTERRUPT_EOI_AUTO, /* EOI self by RX */
RX_INTERRUPT_TRIGGER_RISING_EDGE, /* Edge triggered */
RX_INTERRUPT_PRIORITY_STANDARD, /* Normal Priority */
RX_INTERRUPT_REENTRANCY_DISABLED, /* Interrupt itself is not reentrant */
TSK_PRIO_EDD1_IRQ, /* Task Mode Priority */
TSK_TOK_EDD1_IRQ, /* Task Token */
TSK_STACK_SIZE_EDD_IRQ /* Task Stack Size */
}
#endif
#ifdef USE_EDD2
,
{{"COM1",RX_PERIPHERAL_TYPE_INTERRUPT,1}, /* Communication Channel, Instance 0 */
SRT_NETX_VIC_IRQ_STAT_com1, /* Use external communication channel 0 Interrupt */
INT_PRIO_EDD2, /* Priority */
RX_INTERRUPT_MODE_TASK, /* Allow interrupt to be a thread */
RX_INTERRUPT_EOI_AUTO, /* EOI self by RX */
RX_INTERRUPT_TRIGGER_RISING_EDGE, /* Edge triggered */
RX_INTERRUPT_PRIORITY_STANDARD, /* Normal Priority */
RX_INTERRUPT_REENTRANCY_DISABLED, /* Interrupt itself is not reentrant */
TSK_PRIO_EDD2_IRQ, /* Task Mode Priority */
TSK_TOK_EDD2_IRQ, /* Task Token */
TSK_STACK_SIZE_EDD_IRQ /* Task Stack Size */
}
#endif
};

// Edd instances

#ifdef USE_EDD1
STATIC CONST FAR RX_EDD_MAC_ADDR_T tMyMac0={0x00,0x6e,0x65,0x74,0x78,0xCE};
CONST FAR RX_EDD_PARAMETERS_T atrXEdd0Param[]=
{
{RX_EDD_PARAM_MAC_ADDR, &tMyMac0, 0}, /* eParamType, pvParam, ulInstance */
{RX_EDD_PARAM_XPEC_NAME, "XPEC", 0},
{RX_EDD_PARAM_XMAC_RPU_NAME, "XMACRPU", 0},
{RX_EDD_PARAM_XMAC_TPU_NAME, "XMACTPU", 0},
{RX_EDD_PARAM_INTERRUPT_NAME, "COM0", 0},
{RX_EDD_PARAM_PHY_NAME, "PHY", 0},
{RX_EDD_PARAM_END_OF_LIST}
};
#endif
#ifdef USE_EDD2
STATIC CONST FAR RX_EDD_MAC_ADDR_T tMyMac1={0x00,0x6e,0x65,0x74,0x78,0xCF};
CONST FAR RX_EDD_PARAMETERS_T atrXEdd1Param[]=
{
{RX_EDD_PARAM_MAC_ADDR, &tMyMac1, 1}, /* eParamType, pvParam, ulInstance */
{RX_EDD_PARAM_XPEC_NAME, "XPEC", 1},
{RX_EDD_PARAM_XMAC_RPU_NAME, "XMACRPU", 1},
{RX_EDD_PARAM_XMAC_TPU_NAME, "XMACTPU", 1},
{RX_EDD_PARAM_INTERRUPT_NAME, "COM1", 1},
{RX_EDD_PARAM_PHY_NAME, "PHY", 1},
{RX_EDD_PARAM_END_OF_LIST}
};
#endif

STATIC CONST FAR RX_EDD_SET_T atrXEdd[] = {
#ifdef USE_EDD1
{{"EDD1",RX_PERIPHERAL_TYPE_EDD,0}, /* Ethernet Device Driver */
0, /* Number of Edd Unit to use */
"SD2 EDD1", /* NIC name */
RX_EDD_MODE_DEFAULT, /* edd mode */
FALSE, /* resource control enabled? */
(RX_EDD_PARAMETERS_T FAR*) atrXEdd0Param, /* pointer to parameter array */
&trXEddHalNetX /* pointer to hal operations */
}
#ifdef USE_EDD2
,
#endif
#endif
#ifdef USE_EDD2
{{"EDD2",RX_PERIPHERAL_TYPE_EDD,1}, /* Ethernet Device Driver */
1, /* Number of Edd Unit to use */
"SD2 EDD2", /* NIC name */
RX_EDD_MODE_DEFAULT, /* edd mode */
FALSE, /* resource control enabled? */
(RX_EDD_PARAMETERS_T FAR*) atrXEdd1Param, /* pointer to parameter array */
&trXEddHalNetX /* pointer to hal operations */
}
#endif
};

STATIC CONST FAR RX_DRIVER_PERIPHERAL_CONFIG_T atrXDrvCfgPost[] =
{
{DrvPioInit, RX_PERIPHERAL_TYPE_PIO,atrXPio,MAX_CNT(atrXPio)},
{DrvHifPioInit, RX_PERIPHERAL_TYPE_HIFPIO,atrXHifPio,MAX_CNT(atrXHifPio)},
// {DrvXcInit, RX_PERIPHERAL_TYPE_XC, NULL, 0},
{DrvUrtInit, RX_PERIPHERAL_TYPE_UART, NULL, 0},
{DrvPhyInit, RX_PERIPHERAL_TYPE_PHY,atrXPhy, MAX_CNT(atrXPhy)},
{DrvXcInit,RX_PERIPHERAL_TYPE_XC,atrXXc,MAX_CNT(atrXXc)},
{DrvFifInit, RX_PERIPHERAL_TYPE_FIFOCHANNEL, atrXFif, MAX_CNT(atrXFif)},
{(DrvInitF)DrvEddInit, RX_PERIPHERAL_TYPE_EDD, atrXEdd, MAX_CNT(atrXEdd)}
};

Andreas Jacob

Andreas Jacob

Hilscher Gesellschaft fuer Systemautomation mbH

| 12.11.2007 | 13:10

Hi,

enclosed are some config.c file settings:

/*
************************************************************
*   Local Defines - Memory size configuration
************************************************************
*/

#define RX_STATIC_MEMORY_SIZE 3000000 /* Static Memory Pool for Dynamic Memory Allocation */
/* TCP sockets needs 18 * 2216 bytes = 39888 bytes! */
/* and so on.. */
#define TSK_STACK_SIZE_TCP_TASK 1024 /* _VD_ TcpTask Stack Size in multiples of UINTs */

/*
************************************************************
* Definition of the FIFO Instances
************************************************************
*/
const FAR RX_FIFOCHANNEL_SET_T atrXFif[] = {
{
{ "FIFO_CHN0", RX_PERIPHERAL_TYPE_FIFOCHANNEL, 0 },
RX_FIFOUNIT_CHANNEL0, 64, 64, 64, 64, 64, 64, 64, 64
},
{
{ "FIFO_CHN1", RX_PERIPHERAL_TYPE_FIFOCHANNEL, 0 },
RX_FIFOUNIT_CHANNEL1, 64, 64, 64, 64, 64, 64, 64, 64
},
{
{ "FIFO_CHN2", RX_PERIPHERAL_TYPE_FIFOCHANNEL, 0 },
RX_FIFOUNIT_CHANNEL2, 64, 64, 64, 64, 64, 64, 64, 64
},
{
{ "FIFO_CHN3", RX_PERIPHERAL_TYPE_FIFOCHANNEL, 0 },
RX_FIFOUNIT_CHANNEL3, 64, 64, 64, 64, 64, 64, 64, 64
}
};

/*
************************************************************
* Definition of the Interrupt-Instances
************************************************************
*/

STATIC CONST FAR RX_INTERRUPT_SET_T atrXInt[] = {
{{"SYSTIMER",RX_PERIPHERAL_TYPE_INTERRUPT,0}, /* System Timer interrupt */
SRT_NETX_VIC_IRQ_STAT_timer0, /* Use external Timer0 Interrupt */
29, /* Priority 29 */
RX_INTERRUPT_MODE_SYSTEM, /* Allow interrupt to be a thread */
RX_INTERRUPT_EOI_AUTO, /* EOI self by RX */
RX_INTERRUPT_TRIGGER_RISING_EDGE, /* Edge triggered */
RX_INTERRUPT_PRIORITY_STANDARD, /* Normal Priority */
RX_INTERRUPT_REENTRANCY_ENABLED, /* Interrupt itself is reentrant */
},
{{"VERBOSE",RX_PERIPHERAL_TYPE_INTERRUPT,0}, /* Diagnostic UART */
SRT_NETX_VIC_IRQ_STAT_uart0, /* Use Serial Port 0 Interrupt */
17, /* Priority 17 */
RX_INTERRUPT_MODE_NESTED, /* Allow interrupt to be nested */
RX_INTERRUPT_EOI_AUTO, /* EOI automatically by RX */
RX_INTERRUPT_TRIGGER_RISING_EDGE, /* Edge triggered */
RX_INTERRUPT_PRIORITY_STANDARD, /* Normal Priority */
RX_INTERRUPT_REENTRANCY_DISABLED, /* Interrupt itself is not reentrant */
},
{{"COM0",RX_PERIPHERAL_TYPE_INTERRUPT,0}, /* Communication Channel, Instance 0 */
SRT_NETX_VIC_IRQ_STAT_com0, /* Use external communication channel 0 Interrupt */
28, /* Priority 28 */
RX_INTERRUPT_MODE_TASK, /* Allow interrupt to be a thread */
RX_INTERRUPT_EOI_AUTO, /* EOI self by RX */
RX_INTERRUPT_TRIGGER_RISING_EDGE, /* Edge triggered */
RX_INTERRUPT_PRIORITY_STANDARD, /* Normal Priority */
RX_INTERRUPT_REENTRANCY_DISABLED, /* Interrupt itself is not reentrant */
TSK_PRIO_7, /* Task Mode Priority */
TSK_TOK_7, /* Task Token */
1024 /* Task Stack Size */
},
{{"COM1",RX_PERIPHERAL_TYPE_INTERRUPT,0}, /* Communication Channel, Instance 0 */
SRT_NETX_VIC_IRQ_STAT_com1, /* Use external communication channel 1 Interrupt */
27, /* Priority 27 */
RX_INTERRUPT_MODE_TASK, /* Allow interrupt to be a thread */
// RX_INTERRUPT_MODE_INTERRUPT, /* Allow interrupt to be a thread */
RX_INTERRUPT_EOI_AUTO, /* EOI self by RX */
RX_INTERRUPT_TRIGGER_RISING_EDGE, /* Edge triggered */
RX_INTERRUPT_PRIORITY_STANDARD, /* Normal Priority */
RX_INTERRUPT_REENTRANCY_DISABLED, /* Interrupt itself is not reentrant */
TSK_PRIO_8, /* Task Mode Priority */
TSK_TOK_8, /* Task Token */
1024 /* Task Stack Size */
}
};

/*
************************************************************
* Definition of the XC-Instances
************************************************************
*/

STATIC CONST FAR RX_XC_SET_T atrXXc[] = {
{{"XPEC",RX_PERIPHERAL_TYPE_XC,0},
RX_XC_TYPE_XPEC,
0,
XC_CODE_ETH_STD_XPEC0
},
{{"XMACRPU",RX_PERIPHERAL_TYPE_XC,0},
RX_XC_TYPE_XMACRPU,
0,
XC_CODE_ETH_STD_RPU0
},
{{"XMACTPU",RX_PERIPHERAL_TYPE_XC,0},
RX_XC_TYPE_XMACTPU,
0,
XC_CODE_ETH_STD_TPU0
}
#ifdef _TCPIP_INSTANCE_1_
,
{{"XPEC",RX_PERIPHERAL_TYPE_XC,1},
RX_XC_TYPE_XPEC,
1,
XC_CODE_ETH_STD_XPEC1
},
{{"XMACRPU",RX_PERIPHERAL_TYPE_XC,1},
RX_XC_TYPE_XMACRPU,
1,
XC_CODE_ETH_STD_RPU1
},
{{"XMACTPU",RX_PERIPHERAL_TYPE_XC,1},
RX_XC_TYPE_XMACTPU,
1,
XC_CODE_ETH_STD_TPU1
},
#endif
};

/*
************************************************************
* Definition of the PHY-Instances
************************************************************
*/

STATIC CONST FAR RX_PHY_SET_T atrXPhy[] = {

{{"PHY",RX_PERIPHERAL_TYPE_PHY,0},
0, /* PHY's Port number MDIO */
0, /* OUI for Identification */
0, /* Manufacturer Code */
0, /* Device Revision */
0, /* Number of Registers to Write to */
{{0x0000,0x3b00}}, /* Register/Value pair to configure PHY */
FALSE, /* after DrvPhyInit phy on netx is in power down */
}
#ifdef _TCPIP_INSTANCE_1_
,
{{"PHY", RX_PERIPHERAL_TYPE_PHY, 1},
1, /* PHY's Port number MDIO */
0, /* OUI for Identification */
0, /* Manufacturer Code */
0, /* Device Revision */
0, /* Number of Registers to Write to */
{{0x0000,0x3b00}}, /* Register/Value pair to configure PHY */
FALSE, /* after DrvPhyInit phy on netx is in power down */
}
#endif
};

/*
************************************************************
* Definition of the EDD Instances
* VD: See also define RX_EDD_MAX in module rX_Cusomize.h
************************************************************
*/

STATIC CONST FAR RX_EDD_MAC_ADDR_T tMyMac0={0x00,0x05,0x2b,0x50,0x00,0x10};
CONST FAR RX_EDD_PARAMETERS_T atrXEdd0Param[]=
{
{RX_EDD_PARAM_MAC_ADDR, &tMyMac0, 0}, /* eParamType, pvParam, ulInstance */
{RX_EDD_PARAM_XPEC_NAME, "XPEC", 0},
{RX_EDD_PARAM_XMAC_RPU_NAME, "XMACRPU", 0},
{RX_EDD_PARAM_XMAC_TPU_NAME, "XMACTPU", 0},
{RX_EDD_PARAM_INTERRUPT_NAME, "COM0", 0},
{RX_EDD_PARAM_PHY_NAME, "PHY", 0},
{RX_EDD_PARAM_END_OF_LIST}
};

#ifdef _TCPIP_INSTANCE_1_
STATIC CONST FAR RX_EDD_MAC_ADDR_T tMyMac1={0x00,0x05,0x2b,0x50,0x00,0x11};
CONST FAR RX_EDD_PARAMETERS_T atrXEdd1Param[]=
{
{RX_EDD_PARAM_MAC_ADDR, &tMyMac1, 0}, /* eParamType, pvParam, ulInstance */
{RX_EDD_PARAM_XPEC_NAME, "XPEC", 1},
{RX_EDD_PARAM_XMAC_RPU_NAME, "XMACRPU", 1},
{RX_EDD_PARAM_XMAC_TPU_NAME, "XMACTPU", 1},
{RX_EDD_PARAM_INTERRUPT_NAME, "COM1", 0},
{RX_EDD_PARAM_PHY_NAME, "PHY", 1},
{RX_EDD_PARAM_END_OF_LIST}
};
#endif

CONST FAR RX_EDD_SET_T atrXEdd[] = {
{{"ETHERNET",RX_PERIPHERAL_TYPE_EDD,0}, /* Ethernet Device Driver */
0, /* Number of Edd Unit to use */
"Got a nice driver", /* NIC name */
RX_EDD_MODE_DEFAULT, /* edd mode */
FALSE, /* resource control enabled? */
(RX_EDD_PARAMETERS_T FAR*) atrXEdd0Param, /* pointer to parameter array */
&trXEddHalNetX /* pointer to hal operations */
}
#ifdef _TCPIP_INSTANCE_1_
,
{{"ETHERNET",RX_PERIPHERAL_TYPE_EDD,1}, /* Ethernet Device Driver */
1, /* Number of Edd Unit to use */
"Got a nice driver", /* NIC name */
RX_EDD_MODE_DEFAULT, /* edd mode */
FALSE, /* resource control enabled? */
(RX_EDD_PARAMETERS_T FAR*) atrXEdd1Param, /* pointer to parameter array */
&trXEddHalNetX /* pointer to hal operations */
}
#endif
};

/*
**********************************************
* Configuration of the Application Task-List
**********************************************
*/

/* Static Task Parameter List */
STATIC CONST FAR TLR_TIMER_STARTUPPARAMETER_T tTcpipTimerTaskParam =
{
TLR_TASK_TIMER, /* ulTaskIdentifier (TLR_TASK_PARAMETERHEADER) */
1, /* ulParamVersion (TLR_TASK_PARAMETERHEADER) */
32, /* application timer resouces */
2, /* interrupt timer resources */
2 /* retry packet resources */
};

STATIC CONST FAR TCPIP_TCP_TASK_STARTUPPARAMETER_T tTcpipTcpTaskParam =
{
TLR_TASK_TCPUDP, /* ulTaskIdentifier (TLR_TASK_PARAMETERHEADER)*/
TCPIP_STARTUPPARAMETER_VERSION, /* ulParamVersion (TLR_TASK_PARAMETERHEADER)*/

TCPIP_SRT_QUE_ELEM_CNT_AP_DEFAULT, /* ulQueElemCntAp */

TCPIP_SRT_POOL_ELEM_CNT_DEFAULT, /* ulPoolElemCnt */

TCPIP_SRT_FLAG_DBM, /* ulStartFlags: Start flags (see */
/* TCPIP_SRT_FLAG_xx in header */
/* TcpipTcpTask_Functionlist.h) */

TCPIP_SRT_TCP_CYCLE_EVENT_DEFAULT, /* ulTcpCycleEvent */

TCPIP_SRT_QUE_FREE_ELEM_CNT_DEFAULT, /* ulQueFreeElemCnt */

TCPIP_SRT_SOCKET_MAX_CNT_DEFAULT, /* ulSocketMaxCnt */

TCPIP_SRT_ARP_CACHE_SIZE_DEFAULT, /* ulArpCacheSize */

"ETHERNET", /* pszEddName: EDD name (see */
/* atrXEdd[]) */

TCPIP_SRT_EDD_QUE_POOL_ELEM_CNT_DEFAULT, /* ulEddQuePoolElemCnt */

TCPIP_SRT_EDD_OUT_BUF_MAX_CNT_DEFAULT /* ulEddOutBufMaxCnt */
};

#ifdef _TCPIP_INSTANCE_1_
STATIC CONST FAR TCPIP_TCP_TASK_STARTUPPARAMETER_T tTcpipTcpTaskParam1 =
{
TLR_TASK_TCPUDP, /* ulTaskIdentifier (TLR_TASK_PARAMETERHEADER)*/
TCPIP_STARTUPPARAMETER_VERSION, /* ulParamVersion (TLR_TASK_PARAMETERHEADER)*/

TCPIP_SRT_QUE_ELEM_CNT_AP_DEFAULT, /* ulQueElemCntAp */

TCPIP_SRT_POOL_ELEM_CNT_DEFAULT, /* ulPoolElemCnt */

TCPIP_SRT_FLAG_DBM, /* ulStartFlags: Start flags (see */
/* TCPIP_SRT_FLAG_xx in header */
/* TcpipTcpTask_Functionlist.h) */

TCPIP_SRT_TCP_CYCLE_EVENT_DEFAULT, /* ulTcpCycleEvent */

TCPIP_SRT_QUE_FREE_ELEM_CNT_DEFAULT, /* ulQueFreeElemCnt */

TCPIP_SRT_SOCKET_MAX_CNT_DEFAULT, /* ulSocketMaxCnt */

TCPIP_SRT_ARP_CACHE_SIZE_DEFAULT, /* ulArpCacheSize */

"ETHERNET", /* pszEddName: EDD name (see */
/* atrXEdd[]) */

TCPIP_SRT_EDD_QUE_POOL_ELEM_CNT_DEFAULT, /* ulEddQuePoolElemCnt */

TCPIP_SRT_EDD_OUT_BUF_MAX_CNT_DEFAULT /* ulEddOutBufMaxCnt */
};
#endif

STATIC CONST FAR TCPIP_AP_TASK_STARTUPPARAMETER_T tTcpipApTaskParam =
{
TLR_TASK_TCPIP_AP, /* ulTaskIdentifier (TLR_TASK_PARAMETERHEADER) */
1, /* ulParamVersion (TLR_TASK_PARAMETERHEADER) */
0
};
#ifdef _TCPIP_INSTANCE_1_
STATIC CONST FAR TCPIP_AP_TASK1_STARTUPPARAMETER_T tTcpipApTaskParam1 =
{
TLR_TASK_TCPIP_AP, /* ulTaskIdentifier (TLR_TASK_PARAMETERHEADER) */
1, /* ulParamVersion (TLR_TASK_PARAMETERHEADER) */
0
};
#endif

/* Static Task List */
STATIC CONST FAR RX_STATIC_TASK_T FAR atrXStaticTasks[] = {
{"TIMER", /* _VD_ Set Identification */
TSK_PRIO_19, TSK_TOK_1, /* Set Priority,and Token ID: TSK_PRIO_19 = Lower than TCP_UDP */
0, /* Set Instance to 0 */
NULL , /* Pointer to Stack */
TSK_STACK_SIZE_TIMER_TASK, /* Size of Task Stack */
0, /* Threshold to maximum possible value */
RX_TASK_AUTO_START, /* Start task automatically */
(void(FAR*)(void FAR*))TaskEnter_TlrTimer, /* Task function to schedule */
NULL, /* Function called when Task will be deleted */
(UINT32)&tTcpipTimerTaskParam, /* Startup Parameter */
{0,0,0,0,0,0,0,0} /* Reserved Region */
},
{"TCP_UDP", /* _VD_ Set Identification */
TSK_PRIO_10, TSK_TOK_2, /* Set Priority,and Token ID: TSK_PRIO_10 = Highest */
0, /* Set Instance to 0 */
NULL , /* Pointer to Stack */
TSK_STACK_SIZE_TCP_TASK, /* Size of Task Stack */
0, /* Threshold to maximum possible value */
RX_TASK_AUTO_START, /* Start task automatically */
(void(FAR*)(void FAR*))TaskEnter_TcpipTcpTask, /* Task function to schedule */
NULL, /* Function called when Task will be deleted */
(UINT32)&tTcpipTcpTaskParam, /* Startup Parameter */
{0,0,0,0,0,0,0,0} /* Reserved Region */
},
#ifdef _TCPIP_INSTANCE_1_
{"TCP_UDP", /* _VD_ Set Identification */
TSK_PRIO_11, TSK_TOK_3, /* Set Priority,and Token ID: TSK_PRIO_10 = Highest */
1, /* Set Instance to 0 */
NULL , /* Pointer to Stack */
TSK_STACK_SIZE_TCP_TASK, /* Size of Task Stack */
0, /* Threshold to maximum possible value */
RX_TASK_AUTO_START, /* Start task automatically */
(void(FAR*)(void FAR*))TaskEnter_TcpipTcpTask, /* Task function to schedule */
NULL, /* Function called when Task will be deleted */
(UINT32)&tTcpipTcpTaskParam1, /* Startup Parameter */
{0,0,0,0,0,0,0,0} /* Reserved Region */
},
#endif
{"AP_TASK", /* _VD_ Set Identification */
TSK_PRIO_20, TSK_TOK_4, /* Set Priority,and Token ID: TSK_PRIO_20 = Lowest */
0, /* Set Instance to 0 */
NULL, /* Pointer to Stack */
TSK_STACK_SIZE_AP_TASK, /* Size of Task Stack */
0, /* Threshold to maximum possible value */
RX_TASK_AUTO_START, /* Start task automatically */
(void(FAR*)(void FAR*))TaskEnter_TcpipApTask, /* Task function to schedule */
NULL, /* Function called when Task will be deleted */
(UINT32)&tTcpipApTaskParam, /* Startup Parameter */
{0,0,0,0,0,0,0,0} /* Reserved Region */
}
#ifdef _TCPIP_INSTANCE_1_
,
{"AP_TASK", /* _VD_ Set Identification */
TSK_PRIO_21, TSK_TOK_5, /* Set Priority,and Token ID: TSK_PRIO_20 = Lowest */
1, /* Set Instance to 0 */
NULL, /* Pointer to Stack */
TSK_STACK_SIZE_AP_TASK, /* Size of Task Stack */
0, /* Threshold to maximum possible value */
RX_TASK_AUTO_START, /* Start task automatically */
(void(FAR*)(void FAR*))TaskEnter_TcpipApTask1, /* Task function to schedule */
NULL, /* Function called when Task will be deleted */
(UINT32)&tTcpipApTaskParam1, /* Startup Parameter */
{0,0,0,0,0,0,0,0} /* Reserved Region */
}
#endif
};

/*
***************************************************************************
* Peripheral Driver Configuration loaded after the Kernel has been started
***************************************************************************
*/
STATIC CONST FAR RX_DRIVER_PERIPHERAL_CONFIG_T atrXDrvCfgPost[] = {
{DrvPhyInit, RX_PERIPHERAL_TYPE_PHY,atrXPhy, MAX_CNT(atrXPhy)}, /* atrXPhy must be before atrXEdd! */
{DrvXcInit,RX_PERIPHERAL_TYPE_XC,atrXXc,MAX_CNT(atrXXc)}, /* atrXXc must be before atrXEdd! */
{DrvFifInit, RX_PERIPHERAL_TYPE_FIFOCHANNEL, atrXFif, MAX_CNT(atrXFif)}, /* atrXFif must be before atrXEdd! */
{DrvEddInit, RX_PERIPHERAL_TYPE_EDD, atrXEdd, MAX_CNT(atrXEdd)}
};

Please note, this is only an example.

| 12.11.2007 | 13:19

OK, at least there a some hints to check something.
Let's see ;-)
Thanks

| 12.11.2007 | 14:37

It's working now. As expected and shown in your snippet the problem was in defining the instances and their ids. I do have problems to understand the concept behind (looks a little bit redundant) but OK.

Martin

Andreas Jacob

Andreas Jacob

Hilscher Gesellschaft fuer Systemautomation mbH

| 12.11.2007 | 14:39

Hi,

the most important message is, that it is now running on your side :D

| 12.11.2007 | 15:42

I agree (99% ;-)

Login