我用IP TE4395为完全定制的板编写了SD主机控制器Linux驱动程序.
和我写的那个司机,
umount,下一个mount就会失败。mount -o remount /dev/mmcblk0p1正常工作..。# ls /mnt/
aaa.txt lost+found
# mount -o remount /dev/mmcblk0p1
EXT4-fs (mmcblk0p1): re-mounted. Opts: block_validity,delalloc,barrier,user_xattr,acl
# echo adfaf >/mnt/bbb.txt
# ls /mnt/
aaa.txt bbb.txt lost+found
# cat /mnt/bbb.txt
adfaf
# sync
# ls /mnt/
aaa.txt bbb.txt lost+found
# umount /mnt/
# mount /dev/mmcblk0p1 /mnt
mount: mounting /dev/mmcblk0p1 on /mnt failed: Invalid argument发布于 2016-09-02 06:32:00
我知道原因。司机有问题。我添加了一些调试代码,在驱动程序写寄存器时读取寄存器。而Data Port寄存器是特殊的,当访问寄存器时,控制器内的缓冲区指针将自动递增。调试代码在写入寄存器之前和之后读取,因此访问寄存器3次,但预期仅访问1次(写)。
https://stackoverflow.com/questions/39221747
复制相似问题