- Execute Motion algorithm in both user and kernel space
- Provide a interface to trigger the motion execution
- Provide a interface to retrieve testing result, including
- mean, max, min
- comprehensive test log
- i.MX6Q Sabresd with Linux v4.4
- Cyclone 5 SoC Development Kit with Linux v4.4
- gcc/g++ >= 4.9
- make
- python
ARCH=arm CROSS_COMPILE=${YOUR_CROSS_COMPILE} \
KDIR=${YOUR_KDIR_PATH} TARGET=kmod make
ARCH=x86 KDIR=${YOUR_KDIR_PATH} TARGET=kmod make
An binary file build/kmod/drivers/mctest.ko
would be generated.
-
insmod mctest.ko
-
enable mctest kernel trace log, and clean the buffer.
echo 1 > /sys/kernel/debug/tracing/events/mctest/enable echo 0 > /sys/kernel/debug/tracing/trace
-
setup number of iteration mctest will execute, and trigger it
echo 1000 > /sys/devices/virtual/misc/motion-ctrl/experiment/trigger
-
retrieve the statistic results
cat /sys/devices/virtual/misc/motion-ctrl/experiment/result
-
retrieve the logs
cat /sys/kernel/debug/tracing/trace
-
End the test:
rmmod mctest
- gcc/g++ >= 4.9
- make
```
ARCH=arm CROSS_COMPILE=${YOUR_CROSS_COMPILE} \
TARGET=user make
```
```
ARCH=x86 TARGET=user make
```
An binary file build/user/drivers/mctest
would be generated.
-
./mctest &
-
setup number of iteration mctest will execute, and trigger it
echo 1000 > /tmp/motion/trigger
-
retrieve the statistic results
cat /tmp/motion/result/statistic_result
-
retrieve the logs
cat /tmp/motion/result/raw_result
-
stop mctest killall mctest
Warning :
- only one instance of user mode mctest can be executing simultaneously