Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / sam-t2 / sam / cpus / vonk / n2 / api / sam / src / getnetwork
CommitLineData
920dae64
AT
1#!/bin/sh
2
3tool=$0
4
5usage()
6{
7 echo ""
8 echo "usage: `/bin/basename $tool` -i <nic> <installdir>"
9 echo ""
10 echo ' -i <nic> : specify the nic used.'
11 echo ""
12 echo " Get network veracity scripts: clientdump.ver,client.ver and server.ver with the specified nic and put them in <installdir>."
13 echo " Before you use this, you should run "getstart" to generate start.ver which is included in the above files."
14 echo ""
15}
16
17while getopts hi: OPT; do
18 case $OPT in
19 i)
20 nic="$OPTARG"
21 ;;
22 h)
23 usage
24 exit 0
25 ;;
26 *)
27 usage
28 exit 2
29 ;;
30 esac
31done
32
33shift `/bin/expr $OPTIND - 1`
34
35if [ "$nic" = " " ]; then
36 echo "Error: I need one -i argument."
37 usage
38 exit 2
39fi
40
41installclientdump=$1/clientdump.ver
42installclient=$1/client.ver
43installserver=$1/server.ver
44
45for installfile in $installclientdump $installclient $installserver;
46do
47
48cat >$installfile <<EOF
49include "start.ver"
50
51timeout -1
52
53expect
54set switchmachine [lindex \$argv 3]
55set serverport [lindex \$argv 4]
56EOF
57
58if [ $installfile = $installclientdump ]; then
59if [ $nic = "niu" ]; then
60cat >>$installclientdump <<EOF
61set clientip0 [lindex \$argv 5]
62set clientip1 [lindex \$argv 6]
63end_expect
64
65EOF
66else
67cat >>$installclientdump <<EOF
68set clientip [lindex \$argv 5]
69end_expect
70
71EOF
72fi
73elif [ $installfile = $installclient ]; then
74cat >>$installclient <<EOF
75end_expect
76
77EOF
78else
79if [ $nic = "niu" ]; then
80cat >>$installserver <<EOF
81set serverip0 [lindex \$argv 5]
82set clientip0 [lindex \$argv 6]
83set serverip1 [lindex \$argv 7]
84set clientip1 [lindex \$argv 8]
85end_expect
86
87EOF
88else
89cat >>$installserver <<EOF
90set serverip [lindex \$argv 5]
91set clientip [lindex \$argv 6]
92end_expect
93
94EOF
95fi
96fi
97
98cat >>$installfile <<EOF
99#set prompt for guest console
100set_prompt GUEST '# '
101
102#set prompt for SAM
103set_prompt SAM 'stop: |sam>>> '
104
105#set error patterns
106error GUEST "\[Ee]rror|ERR|\[Pp]anic"
107
108EOF
109
110case $nic in
111 ce)
112 echo 'send_wait SAM "simce connect $switchmachine/$serverport"' >>$installfile
113 ;;
114 ge)
115 echo 'send_wait SAM "simge connect $switchmachine/$serverport"' >>$installfile
116 ;;
117 niu)
118 echo 'send_wait SAM "niu 0 connect $switchmachine/$serverport"' >>$installfile
119 echo 'send_wait SAM "niu 1 connect $switchmachine/$serverport"' >>$installfile
120 ;;
121 *)
122 usage
123 exit 2
124 ;;
125esac
126done
127
128#generate the remaining part for clientdump.ver
129cat >>$installclientdump <<EOF
130
131send SAM "run"
132wait SAM 'run: '
133
134#sleep for a while to wait GUEST.
135expect
136 sleep 5
137end_expect
138
139EOF
140
141if [ $nic = "niu" ]; then
142cat >>$installclientdump <<EOF
143#execute commands.
144send_wait GUEST "/ll/cwd/sam.client \$clientip0 nxge0"
145send_wait GUEST "/ll/cwd/sam.client \$clientip1 nxge1"
146EOF
147else
148cat >>$installclientdump <<EOF
149#execute commands.
150send_wait GUEST "/ll/cwd/sam.client \$clientip"
151EOF
152fi
153
154cat >>$installclientdump <<EOF
155send_wait SAM "stop"
156send_wait SAM "dump client.dump"
157send_fini SAM "quit"
158EOF
159
160#generate the remaining part for client.ver
161cat >>$installclient <<EOF
162
163#execute commands.
164send_wait SAM "stepi 900000000000"
165send_fini SAM "quit"
166EOF
167
168#generate the remaining part for server.ver
169cat >>$installserver <<EOF
170
171#execute commands.
172send SAM "run"
173wait SAM 'run: '
174
175#sleep for a while to wait GUEST.
176expect
177 sleep 5
178end_expect
179
180EOF
181
182if [ $nic = "niu" ]; then
183cat >>$installserver <<EOF
184send_wait GUEST "/ll/cwd/sam.server -s \$serverip0 -c \$clientip1 -i nxge0"
185send_wait GUEST "/ll/cwd/sam.server -s \$serverip1 -c \$clientip0 -i nxge1"
186EOF
187else
188cat >>$installserver <<EOF
189send_wait GUEST "/ll/cwd/sam.server -s \$serverip -c \$clientip"
190EOF
191fi
192
193cat >>$installserver <<EOF
194send_fini SAM "quit"
195EOF