#!/bin/sh #An qspi flash connect to CycloneV dev board by spi bus, so the method #is to read/write qspi flash to verify whether the qspi bus driver worked #or not. MTD_CHAR_DEVICE1="/dev/mtd0" MTD_BLOCK_DEVICE1="/dev/mtdblock0" MTD_CHAR_DEVICE2="/dev/mtd1" MTD_BLOCK_DEVICE2="/dev/mtdblock1" if [ ! -e $MTD_CHAR_DEVICE1 ]; then echo "FAIL: qspi flash device $MTD_CHAR_DEVICE1 does not exist" exit 1 else echo "PASS: qspi flash device $MTD_CHAR_DEVICE1 exists" fi if [ ! -e $MTD_BLOCK_DEVICE1 ]; then echo "FAIL: qspi flash device $MTD_BLOCK_DEVICE 1does not exist" exit 1 else echo "PASS: qspi flash device $MTD_BLOCK_DEVICE1 exists" fi if [ ! -e $MTD_CHAR_DEVICE2 ]; then echo "FAIL: qspi flash device $MTD_CHAR_DEVICE2 does not exist" exit 1 else echo "PASS: qspi flash device $MTD_CHAR_DEVICE2 exists" fi if [ ! -e $MTD_BLOCK_DEVICE2 ]; then echo "FAIL: qspi flash device $MTD_BLOCK_DEVICE2 does not exist" exit 1 else echo "PASS: qspi flash device $MTD_BLOCK_DEVICE2 exists" fi FLASH_ERASE=`which flash_erase` if [ "x$FLASH_ERASE" != "x" ]; then echo "PASS: flash_erase found" else echo "FAIL: flash_erase not found" exit 1 fi $FLASH_ERASE -j $MTD_CHAR_DEVICE1 0 0 if [ $? -ne 0 ]; then echo "FAIL: format qspi flash device $MTD_BLOCK_DEVICE1 fail" exit 1 else mkdir -p /mnt/spi1 mount -t jffs2 $MTD_BLOCK_DEVICE1 /mnt/spi1 if [ $? -ne 0 ]; then echo "FAIL: mount qspi flash device $MTD_BLOCK_DEVICE1 fail" exit 1 else cp /bin/busybox /mnt/spi1 ls /mnt/spi1 |grep busybox if [ $? -ne 0 ]; then echo "FAIL: read or write qspi flash device $MTD_BLOCK_DEVICE1 fail" exit 1 else umount $MTD_BLOCK_DEVICE1 echo "PASS: read or write qspi flash device $MTD_BLOCK_DEVICE1 success" fi fi fi $FLASH_ERASE -j $MTD_CHAR_DEVICE2 0 0 if [ $? -ne 0 ]; then echo "FAIL: format qspi flash device $MTD_BLOCK_DEVICE2 fail" exit 1 else mkdir -p /mnt/spi2 mount -t jffs2 $MTD_BLOCK_DEVICE2 /mnt/spi1 if [ $? -ne 0 ]; then echo "FAIL: mount qspi flash device $MTD_BLOCK_DEVICE2 fail" exit 1 else cp /bin/busybox /mnt/spi2 ls /mnt/spi2 |grep busybox if [ $? -ne 0 ]; then echo "FAIL: read or write qspi flash device $MTD_BLOCK_DEVICE2 fail" exit 1 else umount $MTD_BLOCK_DEVICE2 echo "PASS: read or write qspi flash device $MTD_BLOCK_DEVICE2 success" fi fi fi echo "PASS: qspi bus test passed" exit 0