Hi,

I tried to look through archives - and I did not see the exact problem
that I am experiencing in there (although there might be some very
similar ones):

Also, this is my first post to the linux-usb groups and I tried to read
all the FAQs and hopefully I have all the information required to at
least give me some suggestions as to where to look next

OK, the details:

        CPU: MPC8548E (with PCI1 & PCI Express support).
        USB Chip (per subject line): 
                - NEC 720101
                - Port 1 connected to external USB connector
                - Ports 2-5 are not connected to anything & are 
                        'logically disconnected" in hub driver.

                EHCI Driver

        Kernel: linux-2.6.23.8 (with one quirk found for this chip - 
                 to select 48MHZ clock (it hung otherwise)).
        
I have no problems with loading the important modules (usbcore.ko &
ehci-hcd.ko (as well as the storage modules: usb-storage/libusual.ko))

for examples <from the syslog>:
        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: 5 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
        ----custom code here to disable other ports (no over-current)---
        hub 1-0:1.0: logical disconnect on port 2
        hub 1-0:1.0: logical disconnect on port 3
        hub 1-0:1.0: logical disconnect on port 4
        hub 1-0:1.0: logical disconnect on port 5
        hub 1-0:1.0: state 7 ports 5 chg 003c evt 0000

        bound device '1-0:1.0' to driver 'hub'
        usb: Bound Device 1-0:1.0 to Driver hub
        drivers/usb/core/inode.c: creating file '001'
        bound device 'usb1' to driver 'usb'
        usb: Bound Device usb1 to Driver usb
        bound device '0001:12:0b.2' to driver 'ehci_hcd'
        pci: Bound Device 0001:12:0b.2 to Driver ehci_hcd

        ehci_hcd 0001:12:0b.2: GetStatus port 1 status 001000 POWER
sig=se0
        ehci_hcd 0001:12:0b.2: GetStatus port 2 status 000000 sig=se0
        hub 1-0:1.0: port 2, status 0000, change 0000, 12 Mb/s
        ehci_hcd 0001:12:0b.2: GetStatus port 3 status 000000 sig=se0
        hub 1-0:1.0: port 3, status 0000, change 0000, 12 Mb/s
        ehci_hcd 0001:12:0b.2: GetStatus port 4 status 000000 sig=se0
        hub 1-0:1.0: port 4, status 0000, change 0000, 12 Mb/s
        ehci_hcd 0001:12:0b.2: GetStatus port 5 status 000000 sig=se0
        hub 1-0:1.0: port 5, status 0000, change 0000, 12 Mb/s
        hub 1-0:1.0: state 7 ports 5 chg 0000 evt 0000

Also something you should be interested in:

> cat /sys/class/usb_host/usb_host1/registers>

        bus pci, device 0001:12:0b.2 (driver 10 Dec 2004)
        EHCI Host Controller
        EHCI 1.00, hcd state 1
        ownership 00000001
        SMI sts/enable 0xc0080000
        structural params 0x00002395
        capability params 0x0000e806
        status 2008 Recl FLR
        command 010009 (park)=0 ithresh=1 period=256 RUN
        intrenable 37 IAA FATAL PCD ERR INT
        uframe 28aa
        port 1 status 001000 POWER sig=se0
        port 2 status 000000 sig=se0
        port 3 status 000000 sig=se0
        port 4 status 000000 sig=se0
        port 5 status 000000 sig=se0
        irq normal 0 err 0 reclaim 0 (lost 0)
        complete 0 unlink 0

[EMAIL PROTECTED] /sys/class/usb_host/usb_host1 $ cd device [EMAIL PROTECTED]
/sys/class/usb_host/usb_host1/device $ hexdump config

          0000000 3310 e000 1600 1002 0420 030c 0880 0000
          0000010 00df fff7 0000 0000 0000 0000 0000 0000
          0000020 0000 0000 0000 0000 0000 0000 3310 e000
          0000030 0000 0000 4000 0000 0000 0000 3403 1022
          0000040 0100 027e 0000 0000 0000 0000 0000 0000
          0000050 0000 0000 0000 0000 0000 0000 0000 0000
          0000060 2020 3f00 0000 0000 0000 0000 0000 0000
          0000070 0000 0000 0000 0000 0000 0000 0000 0000
          *
          00000e0 0533 b06c 2000 0000 0100 0000 0000 08c0
          00000f0 0000 0000 0000 0000 0000 0000 0000 0000
          0000100

Here is lsusb -v output (before- HC dies after putting in thumb drive):

        Bus 001 Device 001: ID 0000:0000
        Device Descriptor:
          bLength                18
          bDescriptorType         1
          bcdUSB               2.00
          bDeviceClass            9 Hub
          bDeviceSubClass         0 Unused
          bDeviceProtocol         1 Single TT
          bMaxPacketSize0        64
          idVendor           0x0000
          idProduct          0x0000
          bcdDevice            2.06
          iManufacturer           3 Linux 2.6.23-btu-2-0 ehci_hcd
          iProduct                2 EHCI Host Controller
          iSerial                 1 0001:12:0b.2
          bNumConfigurations      1
          Configuration Descriptor:
            bLength                 9
            bDescriptorType         2
            wTotalLength         6400
            bNumInterfaces          1
            bConfigurationValue     1
            iConfiguration          0
            bmAttributes         0xe0
              Self Powered
              Remote Wakeup
            MaxPower                0mA
            Interface Descriptor:
              bLength                 9
              bDescriptorType         4
              bInterfaceNumber        0
              bAlternateSetting       0
              bNumEndpoints           1
        bInterfaceClass         9 Hub
              bInterfaceSubClass      0 Unused
        bInterfaceProtocol      0
              iInterface              0
        Endpoint Descriptor:
                bLength                 7
          bDescriptorType         5
                bEndpointAddress     0x81  EP 1 IN
          bmAttributes            3
                  Transfer Type            Interrupt
            Synch Type               None
                  Usage Type               Data
          wMaxPacketSize     0x0004  1x 4 bytes
                bInterval              12
        Hub Descriptor:
          bLength               9
          bDescriptorType      41
          nNbrPorts             5
          wHubCharacteristic 0x0009
            Per-port power switching
            Per-port overcurrent protection
            TT think time 8 FS bits
          bPwrOn2PwrGood       10 * 2 milli seconds
          bHubContrCurrent      0 milli Ampere
          DeviceRemovable    0x00
          PortPwrCtrlMask    0x00
         Hub Port Status:
           Port 1: 0000.0100 power
           Port 2: 0000.0000
           Port 3: 0000.0000
           Port 4: 0000.0000
           Port 5: 0000.0000

 The problem comes with I put a thumb drive into this connector
connected to port1 (although when kozio diagnostics run - it works just
fine). Here are 
the messages in the log:

        ehci_hcd 0001:12:0b.2: irq status 0004 PCD
        hub 1-0:1.0: state 7 ports 5 chg 0000 evt 0002
        ehci_hcd 0001:12:0b.2: GetStatus port 1 status 001803 POWER
sig=j CSC               CONNECT
        hub 1-0:1.0: port 1, status 0501, change 0001, 480 Mb/s
        ehci_hcd 0001:12:0b.2: GetStatus port 1 status 001801 POWER
sig=j           CONNECT
        ehci_hcd 0001:12:0b.2: GetStatus port 1 status 001801 POWER
sig=j           CONNECT
        ehci_hcd 0001:12:0b.2: GetStatus port 1 status 001801 POWER
sig=j           CONNECT
        ehci_hcd 0001:12:0b.2: GetStatus port 1 status 001801 POWER
sig=j           CONNECT
        ehci_hcd 0001:12:0b.2: GetStatus port 1 status 001801 POWER
sig=j           CONNECT
        hub 1-0:1.0: debounce: port 1: total 100ms stable 100ms status
0x501
        ehci_hcd 0001:12:0b.2: port 1 reset
        ehci_hcd 0001:12:0b.2: port 1 high speed
        ehci_hcd 0001:12:0b.2: GetStatus port 1 status 001005 POWER
sig=se0 PE              CONNECT
        usb 1-1: new high speed USB device using ehci_hcd and address 2
        ehci_hcd 0001:12:0b.2: submit_async 1 urb efea84c0 ep0out len
64, qtd                 eff9e060 [qh 00000000]
        ehci_hcd 0001:12:0b.2: irq status 0010 FATAL
        ehci_hcd 0001:12:0b.2: fatal command 010028 (park)=0 ithresh=1
Async           period=256 HALT
        ehci_hcd 0001:12:0b.2: fatal status a018 Async Recl FATAL FLR
        ehci_hcd 0001:12:0b.2: irq status 0010 FATAL
        ehci_hcd 0001:12:0b.2: fatal command 010028 (park)=0 ithresh=1
Async           period=256 HALT
        ehci_hcd 0001:12:0b.2: fatal status a018 Async Recl FATAL FLR
        ehci_hcd 0001:12:0b.2: irq status 0010 FATAL
        ehci_hcd 0001:12:0b.2: fatal command 010028 (park)=0 ithresh=1
Async           period=256 HALT
        ...
        ehci_hcd 0001:12:0b.2: fatal status a018 Async Recl FATAL FLR
        ehci_hcd 0001:12:0b.2: irq status 0010 FATAL
        ehci_hcd 0001:12:0b.2: fatal command 010028 (park)=0 ithresh=1
Async           period=256 HALT
        ehci_hcd 0001:12:0b.2: ehci_urb_done 1 urb efea84c0     
                ep0in status -108 len 0/64

        ehci_hcd 0001:12:0b.2: HC died; cleaning up
        hub 1-0:1.0: cannot reset port 1 (err = -19)
        hub 1-0:1.0: cannot disable port 1 (err = -19)

Further - using usbmon - here are the traces when it fails:

        efcc2bc0 1018079532 C Ii:1:001:1 0:2048 1 D
        efcc2bc0 1018079544 S Ii:1:001:1 -115:2048 4 <
        efcc2240 1018079814 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
        efcc2240 1018079825 C Ci:1:001:0 0 4 = 01050100
        efcc2240 1018079828 S Co:1:001:0 s 23 01 0010 0001 0000 0
        efcc2240 1018079830 C Co:1:001:0 0 0
        efcc2240 1018079835 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
        efcc2240 1018079841 C Ci:1:001:0 0 4 = 01050000
        efcc2240 1018108453 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
        efcc2240 1018108465 C Ci:1:001:0 0 4 = 01050000
        efcc2240 1018140455 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
        efcc2240 1018140466 C Ci:1:001:0 0 4 = 01050000
        efcc2240 1018172453 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
        efcc2240 1018172464 C Ci:1:001:0 0 4 = 01050000
        efcc2240 1018204453 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
        efcc2240 1018204464 C Ci:1:001:0 0 4 = 01050000
        efcc2240 1018204477 S Co:1:001:0 s 23 03 0004 0001 0000 0
        efcc2240 1018204481 C Co:1:001:0 0 0
        efcc2240 1018260453 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
        efcc2240 1018260631 C Ci:1:001:0 0 4 = 03051000
        efcc2240 1018316453 S Co:1:001:0 s 23 01 0014 0001 0000 0
        efcc2240 1018316456 C Co:1:001:0 0 0
        efcc2240 1018322112 S Ci:1:000:0 s 80 06 0100 0000 0040 64 <
        efcc2240 1018325899 C Ci:1:000:0 -108 0
        efcc2240 1018332291 S Ci:1:000:0 s 80 06 0100 0000 0040 64 <
        efcc2240 0 E Ci:0:000:0 -108 0
        efcc2240 1018332294 S Ci:1:000:0 s 80 06 0100 0000 0040 64 <
        efcc2240 0 E Ci:0:000:0 -108 0
        efcc2bc0 1018369160 C Ii:1:001:1 -2:2048 0
        
I have tried running OHCI - and it tells me the following
(and never recovers):

> insmod ./host/ohci-hcd.ko

        usb_hcd_pci_probe() resources <f7fff000> len <1000>
        ohci_hcd 0001:12:0b.0: OHCI Host Controller
        ohci_hcd 0001:12:0b.0: new USB bus registered, assigned bus
number 1
        ohci_hcd 0001:12:0b.0: irq 52, io mem 0xf7fff000
        ohci_hcd 0001:12:0b.0: OHCI Unrecoverable Error, scheduling NEC
chip    restart
        usb usb1: Product: OHCI Host Controller
        usb usb1: Manufacturer: Linux 2.6.23-btu-2-0 ohci_hcd
        usb usb1: SerialNumber: 0001:12:0b.0
        usb usb1: configuration #1 chosen from 1 choice
        hub 1-0:1.0: USB hub found
        hub 1-0:1.0: 3 ports detected
        ohci_hcd 0001:12:0b.0: OHCI Unrecoverable Error, scheduling NEC
chip            restart
        hub 1-0:1.0: activate --> -108
        ohci_hcd 0001:12:0b.0: HC died; cleaning up
        usb_hcd_pci_probe() resources <f7ffe000> len <1000>
        ohci_hcd 0001:12:0b.1: OHCI Host Controller
        ohci_hcd 0001:12:0b.1: new USB bus registered, assigned bus
number 2
        ohci_hcd 0001:12:0b.1: irq 52, io mem 0xf7ffe000
        ohci_hcd 0001:12:0b.0: OHCI Unrecoverable Error, scheduling NEC
chip            restart
        ohci_hcd 0001:12:0b.1: OHCI Unrecoverable Error, scheduling NEC
chip            restart
        usb usb2: Product: OHCI Host Controller
        usb usb2: Manufacturer: Linux 2.6.23-btu-2-0 ohci_hcd
        usb usb2: SerialNumber: 0001:12:0b.1
        usb usb2: configuration #1 chosen from 1 choice
        hub 2-0:1.0: USB hub found
        hub 2-0:1.0: 2 ports detected
        ohci_hcd 0001:12:0b.0: OHCI Unrecoverable Error, scheduling NEC
chip    restart
        ohci_hcd 0001:12:0b.1: OHCI Unrecoverable Error, scheduling NEC
chip            restart

cat /var/log/messages>

        Jan 14 23:11:53 master user.info kernel: ohci_hcd 0001:12:0b.0: 
                OHCI Host Controller
        Jan 14 23:11:53 master user.debug kernel: CLASS: registering
class           device: ID = 'usb_host1'
        Jan 14 23:11:53 master user.debug kernel:
drivers/usb/core/inode.c:               creating file 'devices'
        Jan 14 23:11:53 master user.debug kernel:
drivers/usb/core/inode.c:               creating file '001'
        Jan 14 23:11:53 master user.info kernel: ohci_hcd 0001:12:0b.0:
new             USB bus registered, assigned bus number 1
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:
enabled NEC chipset lost interrupt quirk
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:
created debug files
        Jan 14 23:11:53 master user.info kernel: ohci_hcd 0001:12:0b.0:
irq 52,                 io mem 0xf7fff000
        
        Jan 14 23:11:53 master user.err kernel: ohci_hcd 0001:12:0b.0:
OHCI 
                Unrecoverable Error, scheduling NEC chip restart
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:
OHCI            controller state
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:
OHCI            1.0, NO legacy support registers
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:

                control 0x083 HCFS=operational CBSR=3
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:

                cmdstatus 0x00000 SOC=0

        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:
intrstatus 0x00000010 UE
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:
intrenable 0x8000004a MIE RHSC RD WDH

        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:
hcca frame #0000
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:
roothub.a 0f000203 POTPGT=15 NPS NDP=3(3)
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:
roothub.b 00000000 PPCM=0000 DR=0000
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:
roothub.status 00008000 DRWE
        Jan 14 23:11:53 master user.debug kernel: ohci_hcd 0001:12:0b.0:



        <continually goes on trying to reset> 


ANY/ALL Ideas welcome! Directly and/or to the list...:-)



Tom Morrison
Principal S/W Engineer
Empirix, Inc (www.empirix.com)
[EMAIL PROTECTED]
(781) 266 - 3567
 


Tom Morrison
Principal S/W Engineer
Empirix, Inc (www.empirix.com)
[EMAIL PROTECTED]
(781) 266 - 3567
 
 

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

Reply via email to