Here is the usb relaed dmesg, it's a bit long , Maybe i need to look into the schematics, see why the VBUS power is lost after driver initailzed, the power is on before booting up linux.
Thanks lei ehci_hcd: block sizes: qh 128 qtd 96 itd 192 sitd 96 PCI: enabling device 0000:00:0d.2 (0140 -> 0142) PCI: Enabling bus mastering for device 0000:00:0d.2 ehci_hcd 0000:00:0d.2: EHCI Host Controller drivers/usb/core/inode.c: creating file 'devices' drivers/usb/core/inode.c: creating file '001' ehci_hcd 0000:00:0d.2: new USB bus registered, assigned bus number 1 ehci_hcd 0000:00:0d.2: reset hcs_params 0x2192 dbg=0 cc=2 pcc=1 ports=2 ehci_hcd 0000:00:0d.2: reset portroute 1 0 ehci_hcd 0000:00:0d.2: reset hcc_params 0012 thresh 1 uframes 256/512/1024 PCI: Enabling Mem-Wr-Inval for device 0000:00:0d.2 ehci_hcd 0000:00:0d.2: MWI active ehci_hcd 0000:00:0d.2: ...powerdown ports... ehci_hcd 0000:00:0d.2: supports USB remote wakeup ehci_hcd 0000:00:0d.2: irq 28, io mem 0x4b002000 ehci_hcd 0000:00:0d.2: reset command 080002 (park)=0 ithresh=8 period=1024 Reset HALT ehci_hcd 0000:00:0d.2: init command 010009 (park)=0 ithresh=1 period=256 RUN ehci_hcd 0000:00:0d.2: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 usb usb1: default language 0x0409 usb usb1: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb1: Product: EHCI Host Controller usb usb1: Manufacturer: Linux 2.6.17.8 ehci_hcd usb usb1: SerialNumber: 0000:00:0d.2 usb usb1: uevent usb usb1: configuration #1 chosen from 1 choice usb usb1: adding 1-0:1.0 (config #1, interface 0) usb 1-0:1.0: uevent hub 1-0:1.0: usb_probe_interface hub 1-0:1.0: usb_probe_interface - got id hub 1-0:1.0: USB hub found hub 1-0:1.0: 2 ports detected hub 1-0:1.0: standalone hub hub 1-0:1.0: individual port power switching hub 1-0:1.0: individual port over-current protection hub 1-0:1.0: Single TT hub 1-0:1.0: TT requires at most 8 FS bit times (666 ns) hub 1-0:1.0: power on to power good time: 20ms hub 1-0:1.0: local power source is good hub 1-0:1.0: enabling power on all ports <5>ehci_irq: status=0x00000004 PCD deteted, i=2 command=10009 status=0 status=1803 hub 1-0:1.0: state 7 ports 2 chg 0000 evt 0000 drivers/usb/core/inode.c: creating file '001' ohci_hcd: 2005 April 22 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI) ohci_hcd: block sizes: ed 64 td 64 ehci_hcd 0000:00:0d.2: GetStatus port 1 status 001002 POWER sig=se0 CSC hub 1-0:1.0: port 1, status 0100, change 0001, 12 Mb/s PCI: enabling device 0000:00:0d.0 (0140 -> 0142) PCI: Enabling bus mastering for device 0000:00:0d.0 ohci_hcd 0000:00:0d.0: OHCI Host Controller drivers/usb/core/inode.c: creating file '002' ohci_hcd 0000:00:0d.0: new USB bus registered, assigned bus number 2 ohci_hcd 0000:00:0d.0: addr=0x4b000004 ohci_hcd 0000:00:0d.0: 0x0 ohci_hcd 0000:00:0d.0: created debug files ohci_hcd 0000:00:0d.0: irq 28, io mem 0x4b000000 ohci_hcd 0000:00:0d.0: resetting from state 'reset', control = 0x0 ohci_hcd 0000:00:0d.0: OHCI controller state ohci_hcd 0000:00:0d.0: OHCI 1.0, NO legacy support registers ohci_hcd 0000:00:0d.0: control 0x083 HCFS=operational CBSR=3 ohci_hcd 0000:00:0d.0: cmdstatus 0x00000 SOC=0 ohci_hcd 0000:00:0d.0: intrstatus 0x00000044 RHSC SF ohci_hcd 0000:00:0d.0: intrenable 0x8000001a MIE UE RD WDH ohci_hcd 0000:00:0d.0: hcca frame #01fe ohci_hcd 0000:00:0d.0: roothub.a ff000201 POTPGT=255 NPS NDP=1(1) ohci_hcd 0000:00:0d.0: roothub.b 00000000 PPCM=0000 DR=0000 ohci_hcd 0000:00:0d.0: roothub.status 00008000 DRWE ohci_hcd 0000:00:0d.0: roothub.portstatus [0] 0x00000100 PPS usb usb2: default language 0x0409 usb usb2: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb2: Product: OHCI Host Controller usb usb2: Manufacturer: Linux 2.6.17.8 ohci_hcd usb usb2: SerialNumber: 0000:00:0d.0 usb usb2: uevent usb usb2: configuration #1 chosen from 1 choice usb usb2: adding 2-0:1.0 (config #1, interface 0) usb 2-0:1.0: uevent hub 2-0:1.0: usb_probe_interface hub 2-0:1.0: usb_probe_interface - got id hub 2-0:1.0: USB hub found hub 2-0:1.0: 1 port detected hub 2-0:1.0: standalone hub hub 2-0:1.0: no power switching (usb 1.0) hub 2-0:1.0: global over-current protection hub 2-0:1.0: power on to power good time: 510ms hub 2-0:1.0: local power source is good hub 2-0:1.0: no over-current condition exists hub 1-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x100 hub 2-0:1.0: state 7 ports 1 chg 0000 evt 0000 drivers/usb/core/inode.c: creating file '001' PCI: enabling device 0000:00:0d.1 (0140 -> 0142) PCI: Enabling bus mastering for device 0000:00:0d.1 ohci_hcd 0000:00:0d.1: OHCI Host Controller drivers/usb/core/inode.c: creating file '003' ohci_hcd 0000:00:0d.1: new USB bus registered, assigned bus number 3 ohci_hcd 0000:00:0d.1: addr=0x4b001004 ohci_hcd 0000:00:0d.1: 0x0 ohci_hcd 0000:00:0d.1: created debug files ohci_hcd 0000:00:0d.1: irq 28, io mem 0x4b001000 ohci_hcd 0000:00:0d.1: resetting from state 'reset', control = 0x0 ohci_hcd 0000:00:0d.1: OHCI controller state ohci_hcd 0000:00:0d.1: OHCI 1.0, NO legacy support registers ohci_hcd 0000:00:0d.1: control 0x083 HCFS=operational CBSR=3 ohci_hcd 0000:00:0d.1: cmdstatus 0x00000 SOC=0 ohci_hcd 0000:00:0d.1: intrstatus 0x00000044 RHSC SF ohci_hcd 0000:00:0d.1: intrenable 0x8000001a MIE UE RD WDH ohci_hcd 0000:00:0d.1: hcca frame #01fe ohci_hcd 0000:00:0d.1: roothub.a ff000201 POTPGT=255 NPS NDP=1(1) ohci_hcd 0000:00:0d.1: roothub.b 00000000 PPCM=0000 DR=0000 ohci_hcd 0000:00:0d.1: roothub.status 00008000 DRWE ohci_hcd 0000:00:0d.1: roothub.portstatus [0] 0x00000100 PPS usb usb3: default language 0x0409 usb usb3: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb3: Product: OHCI Host Controller usb usb3: Manufacturer: Linux 2.6.17.8 ohci_hcd usb usb3: SerialNumber: 0000:00:0d.1 usb usb3: uevent usb usb3: configuration #1 chosen from 1 choice usb usb3: adding 3-0:1.0 (config #1, interface 0) usb 3-0:1.0: uevent hub 3-0:1.0: usb_probe_interface hub 3-0:1.0: usb_probe_interface - got id hub 3-0:1.0: USB hub found hub 3-0:1.0: 1 port detected hub 3-0:1.0: standalone hub hub 3-0:1.0: no power switching (usb 1.0) hub 3-0:1.0: global over-current protection hub 3-0:1.0: power on to power good time: 510ms hub 3-0:1.0: local power source is good hub 3-0:1.0: no over-current condition exists hub 3-0:1.0: state 7 ports 1 chg 0000 evt 0000 drivers/usb/core/inode.c: creating file '001' Initializing USB Mass Storage driver... usbcore: registered new driver usb-storage USB Mass Storage support registered. ----- Original Message ----- From: "Alan Stern" <[EMAIL PROTECTED]> To: "Lei Sun" <[EMAIL PROTECTED]> Cc: <Linux-usb-users@lists.sourceforge.net> Sent: Wednesday, March 14, 2007 4:49 PM Subject: Re: [Linux-usb-users] problem with EHCI controller > On Wed, 14 Mar 2007, Lei Sun wrote: > >> > On Wed, 14 Mar 2007, Lei Sun wrote: >> > >> >> Thanks for your reply! Appreciate it ! >> >> >> >> the debugging code in ehci_hub_status_data() shows that the port >> >> status >> >> always return "0x1000" with or without flah devices plugged in. >> > >> > That disagrees with what you said earlier: >> > >> >>>> 3. Read port status register (2 ports total), port#1 return 0, >> >>>> port#2 >> >>>> returned 1002, by looking at the code bellow: >> > >> > You said the port status was 0x1002, not 0x1000. >> >> status was 0x1002, that was print it out in ehci_irq() funtion last time, >> ( i didn't put debugging message in ehci_hub_status_data() by that time). >> now ehci_irq() function print out "0x1803" instead, >> and 0x1000 is print out in ehci_hub_status_data() function. I even >> disagree >> with what I saw, because it doesn't seems to be consistent. >> >> We did had some hardware issue, the chip was stressed by higher voltage. >> But since i am still able to read/write PCI register, i am assuming it >> still >> function correctly. > > Can you post another dmesg log with CONFIG_USB_DEBUG turned on, showing > what happens when you plug the device in? > >> > When the device is plugged in, the port status should have the 0x0001 >> > bit >> > set (PORT_CONNECT). You may have to wait a few milliseconds for it to >> > debounce. And when you first plug in the device, the 0x0002 bit should >> > also be set (PORT_CSC). >> >> What about the PORT_RESUME bit? is it suppose to be set when device >> plugged >> in ? > > It is not supposed to be set. > >> >> i was mistaken by saying "port was powering down" , it is he USB power >> >> i >> >> was >> >> talking about, we have a LED indicating the USB power , it was turned >> >> off >> >> right after usb was initialized. Is that suppose to be like this? >> > >> > What do you mean by "USB power"? Do you mean power to the EHCI >> > controller? Do you mean VBUS power on the USB port? Do you mean >> > something else? >> >> VBUS power > > Either VBUS power should always be on (if the controller doesn't do power > switching) or it should be on whenever PORT_POWER (0x1000) is enabled. > Since that bit was enabled, VBUS power should have been on. > > Alan Stern > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Linux-usb-users@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-users