TI中文支持网
TI专业的中文技术问题搜集分享网站

GPMC读写问题

am335x通过gpmc总线与RAM连接,通信没有问题。但系统的读写函数

ssize_t (*read) (struct file *, char __user *, size_t, loff_t *);
ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *);

使用时,参数太少。比如我要写地址:0x10地址开始的1K数据,无法将地址和读写数据个数同事传到底层驱动。

有没有好的方法解决这个问题

Steven Liu1:

通过size_t这个参数应该就可以知道读写的数据有多大了

http://www.cnblogs.com/Blue-Moon/archive/2012/09/25/2702028.html

leo chen:

可以通过通信协议来保证

在协议中表示数据的个数

lifeng chen2:

你最后问题解决了吗?我现在也想解决这个问题

 

rabbit:

回复 lifeng chen2:

可以在传入的参数上自定义

lifeng chen2:

回复 rabbit:

能说的在详细一点或者添一下代码,谢谢

lifeng chen2:

回复 rabbit:

write和read的输入参数是固定的,需要写一个新的函数,然后新的函数包括地址这个参数,然后write和read去调用这个地址的传递参数?

rabbit:

回复 lifeng chen2:

传入的参数是固定的,但是大小是32位的,你可以将这32位分开利用,就可以传入需要的其他信息。也可以封装函数,总之方法挺多的,看自己的习惯。

赞(0)
未经允许不得转载:TI中文支持网 » GPMC读写问题
分享到: 更多 (0)