linx3.0.101下面DS1307 RTC驱动调试过程

snvs_rtcsnvs_rtc.0: setting system clock to 1970-01-01 06:51:46 UTC (24706)

Freescale SNVSReal Time Clock (RTC_DRV_SNVS),这个选项去掉。

drivers/rtc/hctosys.c:unable to open rtc device (rtc0)

root@imx6solo /$find . -name rtc

./sys/class/rtc

把RTC_DRV_SNVS加回来:

snvs_rtcsnvs_rtc.0: setting system clock to 1970-01-02 03:14:40 UTC (98080)

这样就有/dev/rtc了。

DS1307是i2c_rtc_driver的框架:

static int __initds1307_init(void)

{

       return i2c_add_driver(&ds1307_driver);

}

而snvs是platform_rtc_driver的架构:

static int __initsnvs_rtc_init(void)

{

       returnplatform_driver_register(&snvs_rtc_driver);

}

linux下访问i2c设备:int fd= = open("/dev/i2c-0",O_RDWR);

i2c-core: driver [isl29023] using legacyresume method

Init RTC-DS1307device success!

i2c /dev entries driver

DS1307作为RTC设备,只向i2cbus注册的话,busybox就无法操作它,这就很不方便。最好是同时也向platform进行注册。

root@imx6solo /$find . -name rtc

./sys/class/rtc

root@imx6solo /$ls /sys/class/rtc/         //空目录

root@imx6solo /$

增加SVNS内部RTC后:

root@imx6solo ~$ls /sys/class/rtc/rtc0/

date           max_user_freq  since_epoch   uevent        

device         name           subsystem      wakealarm     

hctosys        power          time         

看来应该是i2c_device_probe()要在open设备时才会来调用,跟platform设备不同。不过,改为platform_driver_register方式注册也不行!

我怀疑应该是注册rtc设备不成功吧,下面这一句:

       ds1307->rtc =rtc_device_register(client->name, &client->dev,

                            &ds13xx_rtc_ops,THIS_MODULE);

一进这个func,我就增加了打印输出:printk("ds1307_probeis called!\n");

但居然没有打印,说明这个probe没有被调用。

从i2c的打印来看:

i2c-core: driver [isl29023] using legacysuspend method

i2c-core: driver [isl29023] using legacyresume method

Init RTC-DS1307device success!

i2c /dev entries driver

Linux videocapture interface: v2.00

mag3110 2-000e:check mag3110 chip ID

mag3110 2-000e:read chip ID 0xfffffffb is not equal to 0xc4!

mag3110: probe of2-000e failed with error -22

i2c-core: driver [mag3110] using legacysuspend method

i2c-core: driver [mag3110] using legacy resumemethod

i2c-core: driver [mma8450] using legacysuspend method

i2c-core: driver [mma8450] using legacy resumemethod

add mma8450 i2c driver。没有add rtc-ds1307i2c driver?是否说明register不成功?但是ret=i2c_add_driver(&ds1307_driver);这个返回值是0,应该是成功的。

在board-mx6q_sabresd.c中,

static struct i2c_board_info mxc_i2c1_board_info[] __initdata = {中增加

       {

I2C_BOARD_INFO("rtc-ds1307", 0x68),  // 11010000-->0110,1000=0x68(7bit i2c slave addr)  },

imx6solo居然有四条i2c-bus,ds1307挂在第二条i2c-1上面。

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
根据提供的引用内容,您可以按照以下步骤来安装驱动: 1. 首先,确定您的网卡型号是RTL8111/8168B。您可以通过查看设备管理器或者网卡的物理标签来确认。 2. 找到该网卡型号的官方网站,下载最新的网卡驱动。请注意选择适合您操作系统版本和位数的驱动程序。例如,64位系统选择x86_64驱动,32位系统选择i386或i686驱动。 3. 如果您使用的是CentOS 7版本,并且处于UEFI模式下,您可以按照以下步骤进行安装: - 在启动时选择“Install CentOS Linux 7”,然后按下“e”键。 - 选择添加“linux dd”,然后按下“Ctrl+x”启动。 - 在弹出的虚拟光驱中插入驱动ISO,并按照提示选择并加载驱动。 - 完成驱动加载后,继续进行操作系统安装的后续步骤。 4. 如果您使用的是Legacy模式,可以按照以下步骤进行安装: - 在启动时选择“Install CentOS Linux 7”,然后按下“Tab”键添加“linuxdd”。 - 在弹出的虚拟光驱中插入驱动ISO,并按照提示选择并加载驱动。 - 完成驱动加载后,继续进行操作系统安装的后续步骤。 请注意,以上步骤仅适用于特定的情况和操作系统版本。如果您的情况不同,请参考相关文档或咨询技术支持以获取更准确的指导。 #### 引用[.reference_title] - *1* *3* [Linux下安装网卡驱动程序详解](https://blog.csdn.net/BridgeHong/article/details/78749300)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [linux驱动安装](https://blog.csdn.net/manongxianfeng/article/details/113244308)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

草根大哥

进军大神程序员路上,谢谢支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值