debug.sh 983 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #! /bin/bash
  2. SCRIPT_PATH="`dirname \"$0\"`"
  3. SCRIPT_PATH="`( cd \"$TESTS_PATH\" && pwd )`"
  4. PCILIB_PATH=${SCRIPT_PATH%/tests/*}
  5. function pci {
  6. LD_LIBRARY_PATH="$PCILIB_PATH" $PCILIB_PATH/pci $*
  7. }
  8. function strip_bad_values {
  9. LD_LIBRARY_PATH="$PCILIB_PATH" $PCILIB_PATH/apps/heb_strip_bad_values $*
  10. }
  11. function request_data {
  12. $PCILIB_PATH/tests/heb/debug/request_data.sh $*
  13. }
  14. while [ 1 ]; do
  15. from=`pci --list-dma-engines | grep C2S | sed -s 's/\s\+/ /g' | cut -d ' ' -f 6`
  16. to=`pci --list-dma-engines | grep C2S | sed -s 's/\s\+/ /g' | cut -d ' ' -f 8`
  17. if [ $from -gt $to ]; then
  18. buffers="`seq $from 255` `seq 0 $to`"
  19. else
  20. buffers=`seq $from $to`
  21. fi
  22. echo $buffers
  23. rm data.out
  24. for i in $buffers; do
  25. pci --read-dma-buffer dma1r:$i -o data.out
  26. done
  27. error=`strip_bad_values data.out | head -n 1 | cut -f 1 -d ':'`
  28. if [ $error != "0x1140" ]; then
  29. echo "Problems found"
  30. exit
  31. else
  32. echo "Fine"
  33. request_data
  34. fi
  35. done