RE: Problems with newer kernels on omap3 board

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Try below patch, which is posted at http://marc.info/?l=linux-omap&m=123147818901920&w=2


====================================================
diff --git a/drivers/usb/musb/musbhsdma.c b/drivers/usb/musb/musbhsdma.c
index 75b15ce..8e44355 100644
--- a/drivers/usb/musb/musbhsdma.c
+++ b/drivers/usb/musb/musbhsdma.c
@@ -136,7 +136,7 @@ static void configure_channel(struct dma_channel *channel,
 		csr |= MUSB_HSDMA_BURSTMODE_INCR4;
 
 	csr |= (musb_channel->epnum << MUSB_HSDMA_ENDPOINT_SHIFT)
-		| MUSB_HSDMA_MODE1
+		| (mode ? MUSB_HSDMA_MODE1 : 0)
 		| MUSB_HSDMA_ENABLE
 		| MUSB_HSDMA_IRQENABLE
 		| (musb_channel->transmit
-- 
1.5.6
========================================================

Regards,
ajay

> -----Original Message-----
> From: linux-usb-owner@xxxxxxxxxxxxxxx [mailto:linux-usb-owner@xxxxxxxxxxxxxxx] On Behalf Of Robert
> Sent: Thursday, January 08, 2009 6:48 PM
> To: linux-usb@xxxxxxxxxxxxxxx
> Subject: Problems with newer kernels on omap3 board
> 
> Hello,
> 
> I do have problems with all my usb devices on my omap3-based boad
> (Beagle Board). For example I cannot move a file from a sub stick to the local
> filesystem.
> uname -a: Linux beagleboard 2.6.28-omap1 #2 Thu Jan 8 13:19:46 CET 2009 armv7l
> unknown
> 
> strace output:
> #########################
> strace mv /media/sda1/log.txt /home/root/
> execve("/bin/mv", ["mv", "/media/sda1/log.txt", "/home/root/"], [/* 10 vars */])
>   = 0
> brk(0)                                  = 0x9f000
> uname({sys="Linux", node="beagleboard", ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
>  = 0x4001c000
> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
> open("/var/run/ld.so.cache", O_RDONLY)  = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=5760, ...}) = 0
> mmap2(NULL, 5760, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4001d000
> close(3)                                = 0
> open("/lib/libm.so.6", O_RDONLY)        = 3
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\3101\0\000"..., 512)
>  = 512
> fstat64(3, {st_mode=S_IFREG|0755, st_size=431928, ...}) = 0
> mmap2(NULL, 463008, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
>  = 0x40025000
> mprotect(0x4008e000, 28672, PROT_NONE)  = 0
> mmap2(0x40095000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|
>  MAP_DENYWRITE, 3, 0x68) = 0x4009
> 5000
> close(3)                                = 0
> open("/lib/libc.so.6", O_RDONLY)        = 3
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\334K\1\000"..., 512)
>  = 512
> fstat64(3, {st_mode=S_IFREG|0755, st_size=1111556, ...}) = 0
> mmap2(NULL, 1147328, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
>  = 0x40097000
> mprotect(0x401a3000, 28672, PROT_NONE)  = 0
> mmap2(0x401aa000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|
>  MAP_DENYWRITE, 3, 0x10b) = 0x40
> 1aa000
> mmap2(0x401ad000, 8640, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|
>  MAP_ANONYMOUS, -1, 0) = 0x401ad0
> 00
> close(3)                                = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
>  = 0x4001f000
> syscall_983045(0x4001f4a0, 0x4001f4a0, 0x684, 0x4001fb78, 0x40024058,
>  0x40024000, 0, 0xf0005, 0x58,
> 0x1, 0xffff5cc0, 0xbe9bcb44, 0, 0xbe9bc7e0, 0x400113b4, 0x40002018,
>  0x20000010, 0x4001f4a0, 0xc498,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) = 0
> mprotect(0x401aa000, 8192, PROT_READ)   = 0
> mprotect(0x40095000, 4096, PROT_READ)   = 0
> mprotect(0x40023000, 4096, PROT_READ)   = 0
> munmap(0x4001d000, 5760)                = 0
> getpid()                                = 1742
> getuid32()                              = 0
> stat64("/home/root/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
> brk(0)                                  = 0x9f000
> brk(0xc0000)                            = 0xc0000
> stat64("/home/root/log.txt", 0xbe9bcc38) = -1 ENOENT (No such file or
>  directory)
> rename("/media/sda1/log.txt", "/home/root/log.txt") = -1 EXDEV (Invalid
>  cross-device link)
> stat64("/media/sda1/log.txt", {st_mode=S_IFREG|0755, st_size=7388, ...}) = 0
> lstat64("/media/sda1/log.txt", {st_mode=S_IFREG|0755, st_size=7388, ...}) = 0
> lstat64("/home/root/log.txt", 0xbe9bcac8) = -1 ENOENT (No such file or
>  directory)
> open("/media/sda1/log.txt", O_RDONLY|O_LARGEFILE) = 3
> open("/home/root/log.txt", O_WRONLY|O_CREAT|O_EXCL|O_LARGEFILE, 0100755) = 4
> read(3, "================================"..., 4096) = 4096
> write(4, "================================"..., 4096) = 4096
> read(3, "idth [ms]\"\n[40]: 0x3001, GRAB_RE"..., 4096) = 3292
> write(4, "idth [ms]\"\n[40]: 0x3001, GRAB_RE"..., 3292) = 3292
> read(3, "", 4096)                       = 0
> close(4)                                = 0
> close(3)                                = 0
> fstatfs64(651376, 3197881000, {???})    = 0
> chown32("/home/root/log.txt", 0, 0)     = 0
> chmod("/home/root/log.txt", 0100755)    = 0
> lstat64("/media/sda1/log.txt", {st_mode=S_IFREG|0755, st_size=7388, ...}) = 0
> unlink("/media/sda1/log.txt"usb 1-1.4:
> 
> <----Here it hangs for a minute---->
> 
> reset high speed USB device using musb_hdrc and address 4
> hub 1-1:1.0: cannot reset port 4 (err = -71)
> usb 1-1.4: device descriptor read/64, error -110
> hub 1-1:1.0: cannot reset port 4 (err = -71)
> usb 1-1.4: device descriptor read/64, error -110
> usb 1-1.4: reset high speed USB device using musb_hdrc and address 4
> usb 1-1.4: device descriptor read/64, error -110
> hub 1-1:1.0: cannot reset port 4 (err = -71)
> usb 1-1.4: device descriptor read/64, error -110
> usb 1-1.4: reset high speed USB device using musb_hdrc and address 4
> usb 1-1.4: device not accepting address 4, error -110
> usb 1-1.4: reset high speed USB device using musb_hdrc and address 4
> usb 1-1.4: device not accepting address 4, error -110
> usb 1-1.4: USB disconnect, address 4
> sd 0:0:0:0: Device offlined - not ready after error recovery
> sd 0:0:0:0: [sda] Result: hostbyte=0x01 driverbyte=0x00
> end_request: I/O error, dev sda, sector 546
> Buffer I/O error on device sda1, logical block 514
> lost page write due to I/O error on sda1
> )           = -1 EIO (Input/output error)
> write(2, "mv: cannot Buffer I/O error on device sda1, logical block 514
> lost page write due to I/O error on sda1
> remove \'/media/sda1/l"..., 60mv: cannot remove '/media/sda1/log.txt':
>  Input/output error) = 60
> io_submit(0x1, 0x1, 0xfbad2088 <unfinished ... exit status 1>
> Process 1742 detached
> root@beagleboard:~# usb 1-1.4: new high speed USB device using musb_hdrc
>  and address 5
> usb 1-1.4: device descriptor read/64, error -110
> musb_h_ep0_irq 1091: no URB for end 0
> hub 1-1:1.0: cannot reset port 4 (err = -32)
> usb 1-1.4: device descriptor read/64, error -110
> usb 1-1.4: new high speed USB device using musb_hdrc and address 6
> musb_h_ep0_irq 1091: no URB for end 0
> hub 1-1:1.0: cannot reset port 4 (err = -32)
> usb 1-1.4: device descriptor read/64, error -110
> musb_h_ep0_irq 1091: no URB for end 0
> hub 1-1:1.0: cannot reset port 4 (err = -32)
> usb 1-1.4: device descriptor read/64, error -110
> usb 1-1.4: new high speed USB device using musb_hdrc and address 7
> usb 1-1.4: device not accepting address 7, error -110
> usb 1-1.4: new high speed USB device using musb_hdrc and address 8
> usb 1-1.4: device not accepting address 8, error -110
> hub 1-1:1.0: unable to enumerate USB device on port 4
> #########################
> 
> 
> Any ideas how to debug this? Any other idea?
> 
> Robert
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-usb" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux