编写驱动测试程序的问题?(问题解决,谢谢各位大侠)

发布于 2022-09-18 17:59:58 字数 682 浏览 14 评论 0

驱动中的相关代码如下:
static struct rtc_class_ops ds1302_rtc_ops = {
        .read_time        = ds1302_rtc_read_time,
        .set_time        = ds1302_rtc_set_time,
        .ioctl                = ds1302_rtc_ioctl,
};

static int ds1302_rtc_read_time(struct device *dev, struct rtc_time *tm)
{
   ....
}

驱动加载,注册成功。我需要测试驱动是否能用。
但是,ds1302_rtc_read_time()的参数是struct device *dev,不是一般的设备节点参数。请问测试程序应该如何编写。谢谢!

[ 本帖最后由 zhj1011 于 2009-5-6 10:47 编辑 ]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

陌上青苔 2022-09-25 17:59:58

你是打算写应用程序做测试吧?应用程序中是用不到内核里面的数据结构的,还有一个问题,就是驱动里面read的第一个参数一般是struct file *filp,你的看起来比较怪。。。

公布 2022-09-25 17:59:58

最好是从应用层来测试,如果你这个驱动最终要提供给应用层调用的话

青瓷清茶倾城歌 2022-09-25 17:59:58

原帖由 garyv 于 2009-5-4 11:13 发表
你是打算写应用程序做测试吧?应用程序中是用不到内核里面的数据结构的,还有一个问题,就是驱动里面read的第一个参数一般是struct file *filp,你的看起来比较怪。。。

是的,写应用程序做测试的。
呵呵 我刚接触驱动,很多东西不懂,让楼上见笑了。
我又看了看代码,rtc下的驱动,是不是通过rtc-dev.c中的操作结构中的函数来操作的???
static const struct file_operations rtc_dev_fops = {
        .owner                = THIS_MODULE,
        .llseek                = no_llseek,
        .read                = rtc_dev_read,
        .poll                = rtc_dev_poll,
        .unlocked_ioctl        = rtc_dev_ioctl,
        .open                = rtc_dev_open,
        .release        = rtc_dev_release,
        .fasync                = rtc_dev_fasync,
};
是不是就相当于使用open,read等函数接口,直接操作???

野鹿林 2022-09-25 17:59:58

建议你先把LDD3认真看一遍

知足的幸福 2022-09-25 17:59:58

原帖由 zhj1011 于 2009-5-4 11:23 发表

是的,写应用程序做测试的。
呵呵 我刚接触驱动,很多东西不懂,让楼上见笑了。
我又看了看代码,rtc下的驱动,是不是通过rtc-dev.c中的操作结构中的函数来操作的???
static const struct file_opera ...

对,可以通过常用的open,read等系统调用测试。不过首先你得有设备节点阿。通过会在/dev目录下有个设备文件的

雨后咖啡店 2022-09-25 17:59:58

驱动测试不好测啊,比如网卡设置100M全双工,和半双工。
你调用驱动函数设置,他告诉你设置成功,可如何测试是否真的使硬件生效了呢?
这个问题一直都是嵌入式测试的难点

我们的影子 2022-09-25 17:59:58

原帖由 emmoblin 于 2009-5-4 22:44 发表
驱动测试不好测啊,比如网卡设置100M全双工,和半双工。
你调用驱动函数设置,他告诉你设置成功,可如何测试是否真的使硬件生效了呢?
这个问题一直都是嵌入式测试的难点

这种情况下,也许可以找个硬件工程师直接从硬件那边测一下吧? 不过如果是人家做的板子的话,那是比较麻烦

小情绪 2022-09-25 17:59:58

LZ提到的测试,还只是功能方面,相对来说还好测。
像稳定性,性能,覆盖率等,就难测了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文