4 -p) OPT_PLOT_ONLY=1; shift;;
5 -X|--no-x11-plot) OPT_NO_X11=1; shift;;
12 PATH=$PWD/../_compiled/bin/:$PATH
19 CAN_IRQ=`sed -ne '/can/ s/:.*//p' /proc/interrupts`
20 if [ -n "$CAN_IRQ" ]; then
21 IRQ_PID=`pidof IRQ-${CAN_IRQ/ /}` || true
22 if [ -n "$IRQ_PID" ]; then
23 schedtool -F -p $PRIO $IRQ_PID
31 modprobe -r lincan kvaser_pci vcan
36 modprobe -C /dev/null lincan hw=pcican-q io=1 baudrate=1000,1000,1000,1000 processlocal=0
43 prepare_lincan_virtual() {
45 modprobe -C /dev/null lincan hw=virtual io=0 baudrate=0
52 prepare_socketcan_hw() {
55 echo 1000000 > /sys/class/net/can0/can_bittiming/bitrate
56 ip link set up dev can0
57 echo 1000000 > /sys/class/net/can1/can_bittiming/bitrate
58 ip link set up dev can1
59 echo 1000000 > /sys/class/net/can2/can_bittiming/bitrate
60 ip link set up dev can2
61 echo 1000000 > /sys/class/net/can3/can_bittiming/bitrate
62 ip link set up dev can3
68 prepare_socketcan_virtual() {
71 ip link add dev vcan0 type vcan
72 ip link set up dev vcan0
75 DRIVER=socketcan-virtual
79 tests=${TESTS:-socketcan_hw lincan_hw}
81 boost_irq_prio 50 || true
83 echo "----------------------"
89 local cmdline=$(cat /proc/cmdline|sed -e 's/BOOT_IMAGE=[^ ]*//' \
93 -e 's/rootfstype=[^ ]*//' \
94 -e 's/elevator=[^ ]*//' \
96 -e 's/ *$//'|tr -s ' ' '_')
98 [ -n "$cmdline" ] && v="$v:$cmdline"
103 for i in "${!PLOT_CMD[@]}"; do
104 cmd="${PLOT_CMD[$i]}";
105 cmd=$(echo "$cmd" | sed -e "/set title/ s/[\"']\(.*\)[\"']/'\1 ($(kvers), CPU\\\\@${clk}Mhz)'/")
106 if [ -z "$OPT_NO_X11" ]; then
107 echo "set terminal x11 enhanced; ${cmd}" | gnuplot -persist
110 echo "set terminal postscript color eps enhanced;
111 ${cmd}" | gnuplot | epstopdf --filter > `basename $0 .sh`$I.pdf
113 convert -geometry 1000x100 -gamma 0.3 `basename $0 .sh`$I.pdf thumb/`basename $0 .sh`$I.png
114 convert -density 200 -gamma 0.7 -geometry 1000x500 `basename $0 .sh`$I.pdf `basename $0 .sh`$I.png
118 create_dirs_and_links() {
123 local d=results/by-test/$test/$kver/$clck
125 mkdir -p results/by-test/$test/$clck # 1
126 mkdir -p results/by-kern/$kver/$clck # 2
127 mkdir -p results/by-kern/$kver/$test # 3
128 mkdir -p results/by-clck/$clck/$kver # 4
129 mkdir -p results/by-clck/$clck/$test # 5
130 ln -sfT ../../../${d#results/} results/by-test/$test/$clck/$kver # 1
131 ln -sfT ../../../${d#results/} results/by-kern/$kver/$clck/$test # 2
132 ln -sfT ../../../${d#results/} results/by-kern/$kver/$test/$clck # 3
133 ln -sfT ../../../${d#results/} results/by-clck/$clck/$kver/$test # 4
134 ln -sfT ../../../${d#results/} results/by-clck/$clck/$test/$kver # 5
139 echo "####################"
140 mhz=`sed -ne '/^cpu MHz/ s/.*:\([^.]+\).*/\1/p' /proc/cpuinfo|head -n 1`
141 if [ -r /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq ]; then
142 local max=$((`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq`/1000))
143 local min=$((`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq`/1000))
147 echo "===================="
148 dir=$(create_dirs_and_links `basename $0 .sh` `kvers` $clk)
152 if [ ! -n "$OPT_PLOT_ONLY" ]; then
153 cpufreq-set -f ${clk}MHz
155 cpufreq-set -f 2400MHz