当前位置:  技术问答>linux和unix

linux2.6.21下的I2C驱动问题

    来源: 互联网  发布时间:2017-03-11

    本文导语:  请各位大侠不吝赐教!   使用linux2.6.21内核,打了arm9的补丁,芯片使用ATRM9200,实时时钟芯片使用ds1307,现在想使用arm9的i2c总线驱动ds1307,在内核中选择了i2c驱动支持。并在rtc下选择了ds1307。现在可以肯定的是我的...

请各位大侠不吝赐教!
  使用linux2.6.21内核,打了arm9的补丁,芯片使用ATRM9200,实时时钟芯片使用ds1307,现在想使用arm9的i2c总线驱动ds1307,在内核中选择了i2c驱动支持。并在rtc下选择了ds1307。现在可以肯定的是我的硬件电路肯定没有问题,因为我有一个原来的2.4内核的驱动,读写ds1307一点问题没有。我现在升级到2.6内核之后打印信息如下
U-Boot 1.1.1 (Aug  3 2005 - 14:31:02)

U-Boot code: 21F00000 -> 21F15C30  BSS: -> 21F19F84
RAM Configuration:
Bank #0: 20000000 32 MB
Flash: 16 MB
In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  2  1  0 
## Starting application at 0x21000000 ...
Uncompressing Linux.............................................................................. done, booting the kernel.
Linux version 2.6.21.3 (root@seawolf) (gcc version 3.4.1) #110 Mon Mar 22 16:39:30 CST 2010
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177
Machine: Atmel AT91RM9200-DK
Warning: bad configuration page, trying to continue
Memory policy: ECC disabled, Data cache writeback
Clocks: CPU 179 MHz, master 59 MHz, main 18.432 MHz
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
Built 1 zonelists.  Total pages: 8128
Kernel command line: mem=32M console=ttyS0,115200 initrd=0x211A0000,6000000 root=/dev/ram0 rw
AT91: 128 gpio irqs in 4 banks
PID hash table entries: 128 (order: 7, 512 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 32MB = 32MB total
Memory: 24096KB available (2192K code, 188K data, 100K init)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
init i2c at91 TWI
AT91: Power Management
Generic PHY: Registered new driver
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP reno registered
checking if image is initramfs...it isn't (no cpio magic); looks like an initrd
Freeing initrd memory: 5859K
NetWinder Floating Point Emulator V0.97 (double precision)
JFFS2 version 2.2. (NAND) (C) 2001-2006 Red Hat, Inc.
JFFS2: default compression mode: priority
io scheduler noop registered
io scheduler anticipatory registered (default)
Epson S1D13XXX FB Driver
s1d13xxxfb: chip not found: 20
Non-volatile memory driver v1.2
AT91 Watchdog Timer enabled (5 seconds, nowayout)
atmel_usart.0: ttyS0 at MMIO 0xfefff200 (irq = 1) is a ATMEL_SERIAL
atmel_usart.1: ttyS1 at MMIO 0xfffc0000 (irq = 6) is a ATMEL_SERIAL
atmel_usart.2: ttyS2 at MMIO 0xfffc4000 (irq = 7) is a ATMEL_SERIAL
atmel_usart.3: ttyS3 at MMIO 0xfffc8000 (irq = 8) is a ATMEL_SERIAL
atmel_usart.4: ttyS4 at MMIO 0xfffcc000 (irq = 9) is a ATMEL_SERIAL
RAMDISK driver initialized: 16 RAM disks of 15360K size 1024 blocksize
at91 id is 2250256 
eth0: Link down.
eth0: AT91 ethernet at 0xfefbc000 int=24 10-HalfDuplex (00:01:03:05:18:22)
eth0: Altima AC101L PHY
INTEL-MTD probing 16bit FLASH
Intel Flash Jffs2 Device: Found 1 x16 devices at 0x0 in 16-bit bank
 Intel/Sharp Extended Query Table at 0x0031
Using buffer write method
cfi_cmdset_0001: Erase suspend on write enabled
Using builtin partition table
Creating 5 MTD partitions on "Intel Flash Jffs2 Device":
0x00000000-0x00020000 : "reserved for bootloader"
mtd: Giving out device 0 to reserved for bootloader
0x00020000-0x001a0000 : "reserved for kernel"
mtd: Giving out device 1 to reserved for kernel
0x001a0000-0x006a0000 : "reserved for ramdisk"
mtd: Giving out device 2 to reserved for ramdisk
0x006a0000-0x00f00000 : "jffs2"
mtd: Giving out device 3 to jffs2
0x00f00000-0x01000000 : "res1"
mtd: Giving out device 4 to res1
at91_cf: irqs det #64, io #0
udc: at91_udc version 3 May 2006
mice: PS/2 mouse device common for all mice
i2c /dev entries driver
cdiv is 148 ckdiv is 1 
clock rate is 100000 
adap id is 0 
found normal entry for adapter 0, addr 0x68
come to smbus transfer 
master_xfer[0] W, addr=0x68, len=0
at91_xfer: processing 1 messages:
 #0: writing 0 byte to 0x68
my transfer compelte 
master_xfer[0] W, addr=0x68, len=1
master_xfer[1] R, addr=0x68, len=8
at91_xfer: processing 2 messages:
 #0: writing 1 byte to 0x68
i2c_adapter i2c-0: Client creation failed at 0x68 (-5)
at91_i2c at91_i2c: AT91 i2c bus driver.
AT91 i2c bus driver 
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
ieee80211: 802.11 data/management/control stack, git-1.1.13
ieee80211: Copyright (C) 2004-2005 Intel Corporation 
drivers/rtc/hctosys.c: unable to open rtc device
可以看到i2c_adapter i2c-0: Client creation failed at 0x68 (-5)的错误,驱动在这里返回了,查看了一下代码,是因为在i2c-at91.c中等待txrdy标志位时超时。
 我使用示波器测量了一下ds1307的scl管教,没发现有时钟信号,哪位大侠能告诉小弟一下啊。下面为rtc-ds1307.c的代码

|
菜鸟答:
i2c-at91.c中等待txrdy标志位时超时。
你都知道原因了,就去看看为什么超时啊。

|
drivers/rtc/hctosys.c: unable to open rtc device
关键是这一句,rtc设备没工作

    
 
 

您可能感兴趣的文章:

  • 从linux2.6.22 到linux2.6.33 s3c2410 驱动的移植,哭了!!!
  • 求一个Linux2.6内核的U盘设备完整驱动!!!!
  • linux2.6.29 usb摄像头驱动的名字是什么
  • 谁做过基于at91rm9200 linux2.4核的 SPI驱动?
  • 求助:如何移植DM9000网卡驱动到linux2.6内核?
  • linux2.6.8下移植SPI驱动都需要修改哪些文件
  • linux2.6 i2c驱动的几个问题
  • linux2.6.12内核 驱动 浮点 请帮忙!! 谢谢!!
  • 请教高手:如何把USB驱动程序从Linux2.4内核移植到2.6
  • 请教linux2.6.36的键盘驱动在什么地方?
  • s3c6410 linux2.6.21内核 USB驱动 OHCI寄存器
  • Linux2.6.36,Fec驱动(模型)问题请教
  • linux2.6驱动的Makefile中如何链接静态库
  • 求教:linux2.6 启动时驱动加载顺序是如何的?
  • linux2.6.24移植UDA1341音频驱动
  • 移植Linux2.6到S3C2410,关于vivi添加Nand Flash驱动的问题?
  • 请教一个在linux2.4下驱动S3C44B0上的网络和液晶显示屏驱动问题
  • linux2.6.8内核装intel wifi link 5100无线网卡驱动的问题?
  • (由于帖子长,分三个写)写了一个使用PC机并口控制十字路口交通灯的内核级设备驱动程序模块,但不知道在Linux2.6内核下如何写Makefile?
  • 从linux2.4到linux2.6升级出现的问题?
  • linux2.6内核移植问题
  • 关于Linux2.4源代码的问题
  • rh9内核升级到linux2.6.10问题
  • linux2.6内核升级问题。
  • 移植Linux2.6.36到mx27问题
  • 一个郁闷的问题(linux2.6.34)
  • 红旗linux2.0与win2000advance server的问题?
  • 求教linux2.6.31内核中ide与ata的问题
  • Linux2.6.25电源管理问题请教
  • Linux2.6.36移植问题
  • s3c2410 linux2.6移植问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux2.6内核 如何自动加载当前所需要的模块
  • Video4Linux2
  • 在什么地方可以下载到完整的LINUX2.4原代码呢??绝对送分!!
  • 编译linux2.6内核启动报错:
  • 哪位朋友有linux2.6.9的内核?
  • 请问:linux2.4能不能升级到2.6呀
  • 在pxa255建立linux2.4的系统,需要哪些补丁啊?
  • linux2.6(4)的内核
  • linux2.6驱动的Makefile中如何链接静态库 iis7站长之家
  • linux2.6.30内核要裁减到130K?
  • 我装的是红旗LINUX2.4,声卡和网卡同用一个中断IRQ5,怎么解决?
  • 有人用“蓝点linux2.0”的吗?
  • 在红旗桌面Linux2.0中KDE环境下如何访问Windows分区中的文件???
  • linux2内核谈忻?
  • 新安的linux2。6。4 内核 启动不了了
  • 求:linux2.4进程调度内核原代码的完全注解!!!
  • 谁能给我一个linux2.4升级到2.6内核的成功文章呢
  • ubuntu和win7下编译linux2.6内核
  • 请问linux2.4以前内核源代码在什么地方下载?
  • linux2.4到2.6,信号的概念有哪些变化?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3