blob: 8d09b43f9dc1edcf8febe32a0dd22a8c906311ed [file] [log] [blame]
Holger Hans Peter Freyther97f66e22010-07-28 03:32:52 +08001#include <unistd.h>
2#include <stdio.h>
3#include <pti/NexusWare.h>
4
5void InitHW(void)
6{
7 int status,i;
8
9 /* configure the board clock */
10 status = PTI_SetHSCMStandalone(0,PTI_CLK_TRUNK + 1, PTI_CLK_NONE,
11 PTI_NETREF_2048K);
12 if (status < 0)
13 fprintf(stderr, "Error: PTI_SetClocking() = %d\n", status);
14
15 sleep(1);
16
17 /* open the port devices */
18 for (i=1; i<=8; i++)
19 {
20 status = PTI_SetT1Framing(i, PTI_FRAME_E1CRC, PTI_ENCODE_HDB3);
21 if (status < 0)
22 fprintf(stderr, "Error: PTI_SetFraming(%d) = %d\n", i, status);
23 }
24
25 /* configure PTMC */
26 status = PTI_SetPTMCNetref(0, PTI_PTMC_NETREF_DISABLE);
27 if (status < 0)
28 fprintf(stderr, "Error: PTI_SetPTMCNetref() = %d\n", status);
29 status = PTI_SetPTMCClockMode(0, PTI_PTMC_CLOCKMODE_H100);
30 if (status < 0)
31 fprintf(stderr, "Error: PTI_SetPTMCClockMode() = %d\n", status);
32 status = PTI_SetEnetPortState(PTI_ENET_PORT_ID_PTMC+0,
33 PTI_ENET_PORT_STATE_ENABLE_ALL);
34 if (status < 0)
35 fprintf(stderr, "Error: PTI_SetEnetPortState() = %d\n", status);
36 status = PTI_AddEnetRoute(PTI_ENET_PORT_ID_PTMC+0, PTI_ENET_PORT_ID_FRONT+0, 1);
37 status |= PTI_AddEnetRoute(PTI_ENET_PORT_ID_PTMC+0, PTI_ENET_PORT_ID_REAR+0, 1);
38 status |= PTI_AddEnetRoute(PTI_ENET_PORT_ID_PTMC+0, PTI_ENET_PORT_ID_LOCAL+0, 1);
39 if (status < 0)
40 fprintf(stderr, "Error: PTI_AddEnetRoute() = %d\n", status);
41
42 status = PTI_ConnectHSCM(PTI_HSCM_TRUNK+1,30,PTI_HSCM_DATACHAN,0,1,1);
43 if (status < 0)
44 fprintf(stderr, "Error: PTI_ConnectHSCM() = %d\n", status);
45
46 status = PTI_ConnectHSCM(PTI_HSCM_TRUNK+1, 0, PTI_HSCM_PTMC, 0, 30, 0);
47 status |= PTI_ConnectHSCM(PTI_HSCM_PTMC, 128, PTI_HSCM_TRUNK+1, 0, 30, 0);
48 if (status < 0)
49 fprintf(stderr, "Error: PTI_ConnectHSCM() = %d\n", status);
50
51
52}
53