4 -P) OPT_PLOT_DISABLE=1; shift;;
5 -p) OPT_PLOT_ONLY=1; shift;;
6 -X|--no-x11-plot) OPT_NO_X11=1; shift;;
13 PATH=$PWD/../_compiled/bin/:$PATH
17 export CANPING_MS=1 # Generate plots in milliseconds
21 CAN_IRQ=`sed -ne '/can/ s/:.*//p' /proc/interrupts`
22 if [ -n "$CAN_IRQ" ]; then
23 IRQ_PID=`pidof IRQ-${CAN_IRQ/ /}` || true
24 if [ -n "$IRQ_PID" ]; then
25 schedtool -F -p $PRIO $IRQ_PID
33 modprobe -r lincan kvaser_pci vcan || true
38 modprobe -C /dev/null lincan hw=pcican-q io=1 baudrate=1000,1000,1000,1000 processlocal=0
45 prepare_lincan_virtual() {
47 modprobe -C /dev/null lincan hw=virtual io=0 baudrate=0
54 socketcan_set_bitrate() {
56 if [ -f /sys/class/net/$canX/can_bittiming/bitrate ]; then
57 echo 1000000 > /sys/class/net/$canX/can_bittiming/bitrate
59 ip link set $canX type can bitrate 1000000
62 prepare_socketcan_hw() {
65 socketcan_set_bitrate can0
66 ip link set up dev can0
67 socketcan_set_bitrate can1
68 ip link set up dev can1
69 socketcan_set_bitrate can2
70 ip link set up dev can2
71 socketcan_set_bitrate can3
72 ip link set up dev can3
78 prepare_socketcan_virtual() {
81 ip link add dev vcan0 type vcan || true
82 ip link set up dev vcan0
85 DRIVER=socketcan-virtual
89 tests=${TESTS:-socketcan_hw lincan_hw}
91 echo 300 > /proc/sys/net/core/netdev_budget
92 boost_irq_prio 50 || true
94 echo "----------------------"
96 echo 300 > /proc/sys/net/core/netdev_budget
101 local cmdline=$(cat /proc/cmdline|sed -e 's/BOOT_IMAGE=[^ ]*//' \
102 -e 's/root=[^ ]*//' \
105 -e 's/rootfstype=[^ ]*//' \
106 -e 's/elevator=[^ ]*//' \
108 -e 's/ *$//'|tr -s ' ' '_')
110 [ -n "$cmdline" ] && v="$v:$cmdline"
111 [ -n "$KVERS" ] && v=$KVERS
116 # for i in "${!PLOT_CMD[@]}"; do
117 local testname=`basename $0 .sh`
119 cmd=`p` # Get plot commands
120 cmd=$(echo "$cmd" | sed -e "/set title/ s/[\"']\(.*\)[\"']/\"\1\\\\n($(kvers), CPU\\\\\\\\@${clk}MHz)\"/")
121 if [ -z "$OPT_NO_X11" ]; then
122 echo "set terminal x11 enhanced; ${cmd}" | gnuplot -persist
125 echo 'set terminal postscript color eps enhanced size 6cm,4cm lw 1 "Times-Roman" 10;' \
127 "${cmd}" | gnuplot > ${testname}$I.eps
128 echo "set terminal postscript color eps enhanced;" \
129 "${cmd}" | gnuplot | epstopdf --filter > ${testname}$I.pdf
131 convert -density 30 -gamma 0.5 -quality 90 -type Palette -depth 8 ${testname}$I.pdf thumb/${testname}$I.png
132 convert -density 150 -gamma 0.7 -quality 90 -type Palette -depth 8 ${testname}$I.pdf ${testname}$I.png
136 create_dirs_and_links() {
141 local d=results/by-kern/$kver/$clck/$test
143 mkdir -p results/by-kern/$kver/$test # 1
144 mkdir -p results/by-test/$test/$kver # 2
145 mkdir -p results/by-test/$test/$clck # 3
146 mkdir -p results/by-clck/$clck/$kver # 4
147 mkdir -p results/by-clck/$clck/$test # 5
148 ln -sfT ../../../${d#results/} results/by-kern/$kver/$test/$clck # 1
149 ln -sfT ../../../${d#results/} results/by-test/$test/$kver/$clck # 2
150 ln -sfT ../../../${d#results/} results/by-test/$test/$clck/$kver # 3
151 ln -sfT ../../../${d#results/} results/by-clck/$clck/$kver/$test # 4
152 ln -sfT ../../../${d#results/} results/by-clck/$clck/$test/$kver # 5
157 echo "####################"
158 if [ ! -n "$OPT_PLOT_ONLY" ]; then
159 mhz=`sed -ne '/^cpu MHz/ s/.*:\([^.]\+\).*/\1/p' /proc/cpuinfo|head -n 1`
160 if [ -r /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq ]; then
161 local max=$((`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq`/1000))
162 local min=$((`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq`/1000))
166 mhz=$(cd results/by-clck; echo *)
169 echo "===================="
170 dir=$(create_dirs_and_links `basename $0 .sh` `kvers` $clk)
174 if [ ! -n "$OPT_PLOT_ONLY" ]; then
175 cpufreq-set -f ${clk}MHz
177 cpufreq-set -f ${mhz}MHz
179 unset OPT_PLOT_DISABLE
181 if [ ! -n "$OPT_PLOT_DISABLE" ]; then