test-iommu.sh 509 B

123456789101112131415161718192021222324
  1. #! /bin/bash
  2. function pci {
  3. PCILIB_PATH=".."
  4. LD_LIBRARY_PATH="$PCILIB_PATH/pcilib" $PCILIB_PATH/pcitool/pci $*
  5. }
  6. i=1
  7. while [ 1 ]; do
  8. pci --start-dma dma1r
  9. for name in /sys/class/fpga/fpga0/kbuf*; do
  10. bus_addr=0x`cat $name | grep "bus addr" | cut -d ':' -f 2 | sed -e 's/\s\+//g'`
  11. if [ $((bus_addr % 4096)) -ne 0 ]; then
  12. echo "Failed at iteration $i, $name"
  13. echo "----------------------"
  14. cat $name
  15. exit
  16. fi
  17. done
  18. pci --stop-dma dma1r
  19. i=$((i + 1))
  20. done