This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

USB mouse and I2c NACK detected

Hi,

I am working on DM6446.

I want to use usb mouse and usb keyboard to the board.

 

Right now the board is in usb host control mode and i can access files in a pendrive(mass storage) attached to it.

 

But when i conect a USB mouse to the board i get a i2c error.

DaVinci I2C WARNING: i2c: NACK detected

 

also the output of cat /proc/driver/musb_hdrc is

root@10.42.43.10:~# cat /proc/driver/musb_hdrc
Status: MHDRC, Mode=HOST (Power=71, DevCtl=5d)  PDR interupt Mask=1f71e1f        PDR Interrypt Source=0
Options: [pio] [host] [debug=1] [eps=9]
DaVinci: ctrl=00 stat=1 phy=1f0
        rndis=00000 auto=0000 intsrc=00000000 intmsk=01f71e1f
End-0:  txcsr 0000 interval 08 max 0000 type 40; dev 2 hub 0 port 0
        (queue empty)
End-1:  txcsr 2000 interval 00 max 0200 typusb 1-1: USB disconnect, address 2
e 61; dev 2 hub 0 port 0
        (queue empty)

End-1:  rxcsr 0200 interval 00 max 0200 type 62; dev 2 hub 0 port 0
        (queue empty)
End-2:  txcsr 0000 interval 00 max 0000 type 00; dev 0 hub 0 port 0
        (queue empty)

End-2:  rxcsr 0000 interval 00 max 0000 type 00; dev 0 hub 0 port 0
        (queue empty)
End-3:  txcsr 0000 interval 00 max 0000 type 00; dev 0 hub 0 port 0
        (queue empty)

End-3:  rxcsr 0000 interval 00 max 0000 type 00; dev 0 hub 0 port 0
        (queue empty)
End-4:  txcsr 0000 interval 00 max 0000 type 00; dev 0 hub 0 port 0
        (queue empty)

End-4:  rxcsr 0000 interval 00 max 0000 type 00; dev 0 hub 0 port 0
        (queue empty)

 

I also see the same error when in the booting sequence but i am unable to detect which device is causing the error.

 

here is the booting sequence.

RAM Configuration:
Bank #0: 80000000 256 MB
SPANSION ***Flash: 16 MB
In:    serial
Out:   serial
Err:   serial
PLL2_PLLM is 19,PLL2_DIV2 is 1ARM Clock :- 229MHz
DDR Clock :- 135MHz
uboot version for davinci 256m with no mac addr and no 430 ,by wcl0715
Hit any key to stop autoboot:  0
TFTP from server 10.42.43.1; our IP address is 10.42.43.10
Filename 'uImage'.
Load address: 0x80700000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         ##################################################
done
Bytes transferred = 1585724 (18323c hex)
## Booting image at 80700000 ...
   Image Name:   Linux-2.6.10_mvl401
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    1585660 Bytes =  1.5 MB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
OK

Starting Davinci linux kernel...

Uncompressing Linux.......................................................................................................... done, booting thee
                                                                                                                                                Linux version 2.6.10_mvl401 (che1
CPU: ARM926EJ-Sid(wb) [41069265] revision 5 (ARMv5TEJ)
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
CPU0: D cache: 8192 bytes, associativity 4, 32 byte lines, 64 sets
Machine: DaVinci EVM
Memory policy: ECC disabled, Data cache writeback
DM6443
Built 1 zonelists
Kernel command line: video=davincifb:vid0=720x480x16,2500K:vid1=720x480x16,2500K:osd0=720x480x16,2025K davinci_enc_mngr.ch0_output=COMPOSITE davinci_enc_mngr.ch0_mode=NTSC consM
PID hash table entries: 512 (order: 9, 8192 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 120MB = 120MB total
Memory: 118272KB available (2739K code, 555K data, 184K init)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
spawn_desched_task(00000000)
desched cpu_callback 3/00000000
ksoftirqd started up.
desched cpu_callback 2/00000000
desched thread 0 started up.
NET: Registered protocol family 16
DaVinci: 71 gpio irqs
Registering platform device 'serial8250.0'. Parent at platform
Registering platform device 'musb_hdrc'. Parent at platform
Registering platform device 'mmc.0'. Parent at platform
DaVinci I2C DEBUG: 00:14:32 Mar  8 2011
Registering platform device 'i2c'. Parent at platform
ch0 default output "COMPOSITE", mode "NTSC"
MUX: initialized LOEEN
MUX: initialized LFLDEN
VPBE Encoder Initialized
LogicPD encoder initialized
SCSI subsystem initialized
usbcore: registered new driver usbfs
usbcore: registered new driver hub
musb_hdrc: version 2.2a/db-0.4.8 [pio] [host] [debug=1]
musb_hdrc: ConfigData=0x06 (UTMI-8, dyn FIFOs, SoftConn)
musb_hdrc: MHDRC RTL version 1.300
musb_hdrc: USB Host mode controller at c8002000 using PIO, IRQ 12
musb_hdrc musb_hdrc: new USB bus registered, assigned bus number 1
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
MUX: initialized MCBSP0
JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc.
yaffs Mar  7 2011 23:59:14 Installing.
Registering platform device 'davincifb.0'. Parent at platform
davincifb davincifb.0: dm_osd0_fb: 720x480x16@0,0 with framebuffer size 2025KB
davincifb davincifb.0: dm_vid0_fb: 720x480x16@0,0 with framebuffer size 2500KB
davincifb davincifb.0: dm_osd1_fb: 720x480x4@0,0 with framebuffer size 675KB
davincifb davincifb.0: dm_vid1_fb: 720x480x16@0,0 with framebuffer size 2500KB
watchdog: TI DaVinci Watchdog Timer: timer margin 64 sec
Registering platform device 'davinci_resizer.2'. Parent at platform
Registering platform device 'davinci_previewer.2'. Parent at platform
Serial: 8250/16550 driver $Revision: 1.90 $ 2 ports, IRQ sharing disabled
Registering platform device 'serial8250'. Parent at platform
ttyS0 at MMIO 0x1c20000 (irq = 40) is a 16550A
io scheduler noop registered
io scheduler anticipatory registered
RAMDISK driver initialized: 1 RAM disks of 32768K size 1024 blocksize
loop: loaded (max 8 devices)
Registering platform device 'ti_davinci_emac'. Parent at platform
TI DaVinci EMAC: MAC address is deadbeaf
TI DaVinci EMAC Linux version updated 5.0
TI DaVinci EMAC: Installed 1 instances.
netconsole: not configured, aborting
i2c /dev entries driver
Linux video capture interface: v1.00
Registering platform device 'vpfe.1'. Parent at platform
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
vpfe vpfe.1: DaVinci v4l2 capture driver V1.0 loaded
Registering platform device 'DavinciDisplay.1'. Parent at platform
Trying to register davinci display video device.
layer=c77d2c00,layer->video_dev=c77d2d64
Trying to register davinci display video device.
layer=c77d2a00,layer->video_dev=c77d2b64
davinci_init:DaVinci V4L2 Display Driver V1.0 loaded

 Davici AEW Driver cannot be loaded
 VIDEO PORT is not enabledData Flow path from CCDC is disabled

 Davinci AF driver cannot be loaded
 VIDEO PORT is not enabled
 CCDC needs to be configured<6>Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
MUX: initialized HDIREN
MUX: initialized ATAEN
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
Palm Chip BK3710 IDE Register Fail
elevator: using anticipatory as default io scheduler
Initializing USB Mass Storage driver...
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usbcore: registered new driver hiddev
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.0:USB HID core driver
mice: PS/2 mouse device common for all mice
mmc mmc.0: Supporting 4-bit mode
mmc mmc.0: Using DMA mode
Registering platform device 'davinci-audio.0'. Parent at platform
mmcblk0: mmc0:bb13 SD02G 1931264KiB
 mmcblk0: p1
NET: Registered protocol family 2
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 8192 bind 16384)
NET: Registered protocol family 1
NET: Registered protocol family 10
IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
DaVinci I2C WARNING: i2c: NACK detected
IP-Config: Complete:
      device=eth0, addr=10.42.43.10, mask=255.255.255.0, gw=255.255.255.255,
     host=10.42.43.10, domain=, nis-domain=(none),
     bootserver=10.42.43.1, rootserver=10.42.43.1, rootpath=
Looking up port of RPC 100003/2 on 10.42.43.1
Looking up port of RPC 100005/1 on 10.42.43.1
VFS: Mounted root (nfs filesystem).
Freeing init memory: 184K
INIT: version 2.85 booting
Mounting a tmpfs over /dev...done.
Creating initial device nodes...done.
Activating swap...done.
Remounting root filesystem...done.
Calculating module dependencies
Loading modules:
Checking all file systems: fsck
fsck 1.35 (28-Feb-2004)
Mounting local filesystems: mount nothing was mounted
Cleaning: /tmp /var/lock /var/run done.
Setting up networking (ifupdown) ..
Cleaning: /etc/network/run/ifstate done.
Starting network interfaces: done.
Starting hotplug subsystem:
   pci    
   pci      [success]
   usb    
kobject_register failed for usbcore (-17)
   usb      [success]
   isapnp 
   isapnp   [success]
   ide    
   ide      [success]
   input  
   input    [success]
   scsi   
   scsi     [success]
done.
Starting portmap daemon: portmap.
done.
Setting pseudo-terminal access permissions...done.
Updating /etc/motd...done.
INIT: Entering runlevel: 3
Starting NFS common utilities: statd lockd.
Starting internet superserver: inetd.
Starting MontaVista target tools daemon: mvltdmvltd version 2.1 MontaVista Software,Inc.
mvltd[1039]: can't send broadcast message: Network is unreachable
mvltd[1039]: can't send broadcast message: Network is unreachable
mvltd[1040]: started on port 34577
.
MontaVista(R) Linux(R) Professional Edition 4.0.1 (0600980)

10.42.43.10 login:

 

Can any one tell me how to get away with the I2C NACK error. Which device is causing the NACK to occur ?

 

Thanks in advance.