Re: half a loop
Brought to you by:
aeb,
bencollins
From: Stefan R. <st...@s5...> - 2011-12-19 22:17:38
|
On Dec 19 Carl Karsten wrote: > [ 0.173409] pci 0000:02:05.0: proprietary Ricoh MMC controller disabled (via firewire function) Oh? Well, I guess that's OK; in any case it does not explain why the other controller behaves in about the same way. > [ 1.432108] firewire_ohci 0000:02:05.0: PCI INT A -> Link[LNK1] -> GSI 5 (level, low) -> IRQ 5 > [ 1.488075] firewire_ohci: Added fw-ohci device 0000:02:05.0, OHCI v1.10, 4 IR + 4 IT contexts, quirks 0x1 > [ 1.488178] firewire_ohci: AR evt_bus_reset, generation 1 > [ 1.488256] firewire_ohci: 2 selfIDs, generation 1, local node ID ffc0 > [ 1.488321] firewire_ohci: selfID 0: 807f8882, phy 0 [p..] S400 gc=63 +0W Lci > [ 1.488385] firewire_ohci: selfID 0: 813fc4d4, phy 1 [c--] beta gc=63 -3W > [ 1.491355] firewire_ohci 0000:04:00.0: PCI INT A -> Link[LK1E] -> GSI 16 (level, low) -> IRQ 16 > [ 1.491435] firewire_ohci 0000:04:00.0: setting latency timer to 64 > [ 1.545090] firewire_ohci: Added fw-ohci device 0000:04:00.0, OHCI v1.10, 8 IR + 8 IT contexts, quirks 0x10 > [ 1.545174] firewire_ohci: isochronous cycle inconsistent > [ 1.545257] firewire_ohci: AR evt_bus_reset, generation 1 > [ 1.545325] firewire_ohci: AR evt_bus_reset, generation 2 > [ 1.545392] firewire_ohci: 2 selfIDs, generation 1, local node ID ffc1 > [ 1.545456] firewire_ohci: selfID 0: 807f8880, phy 0 [p..] S400 gc=63 +0W Lc > [ 1.545521] firewire_ohci: selfID 0: 817fccd6, phy 1 [c--] beta gc=63 -3W Lci > [ 1.545592] firewire_ohci: 2 selfIDs, generation 2, local node ID ffc0 > [ 1.545656] firewire_ohci: selfID 0: 807f8880, phy 0 [p..] S400 gc=63 +0W Lc > [ 1.545720] firewire_ohci: selfID 0: 817fccd6, phy 1 [c--] beta gc=63 -3W Lci OK, gap count (abbreviated as gc in the selfID dump) starts out with the correct and safe power reset value of 63 on both PHYs. [...] > [ 615.240117] firewire_ohci: AT spd 0 tl 2b, ffc1 -> ffc0, pending/cancelled, QR req, fffff0000400 > [ 615.240161] firewire_ohci: AR spd 0 tl 2c, ffc0 -> ffc1, ack_complete, QR resp = 31333934 > [ 615.240172] firewire_ohci: AT spd 0 tl 2c, ffc1 -> ffc0, pending/cancelled, QR req, fffff0000404 > [ 615.240206] firewire_ohci: AR spd 0 tl 2d, ffc0 -> ffc1, ack_complete, QR resp = f000a222 > [ 615.240216] firewire_ohci: AT spd 0 tl 2d, ffc1 -> ffc0, pending/cancelled, QR req, fffff0000408 > [ 615.240249] firewire_ohci: AR spd 0 tl 2e, ffc0 -> ffc1, ack_complete, QR resp = 00241b00 > [ 615.240259] firewire_ohci: AT spd 0 tl 2e, ffc1 -> ffc0, pending/cancelled, QR req, fffff000040c > [ 615.240291] firewire_ohci: AR spd 0 tl 2f, ffc0 -> ffc1, ack_complete, QR resp = 964cac00 > [ 615.240301] firewire_ohci: AT spd 0 tl 2f, ffc1 -> ffc0, pending/cancelled, QR req, fffff0000410 > [ 615.240334] firewire_ohci: AT spd 2 tl 30, ffc1 -> ffc0, evt_missing_ack, QR req, fffff0000414 > [ 615.240350] firewire_core: giving up on config rom for node id ffc0 One other difference between the first five quadlets at fffff0000400 ... fffff0000410 on one hand and the subsequent ones at fffff0000414 and above is that the former are backed by OHCI-1394 controller registers while the latter are backed by OHCI-1394 physical DMA. IOW the controller needs to read the latter from system RAM whereas it has the former stored internally. (It pulls the former from RAM too though if the remote node asked for them by means of a block read transaction instead of a quadlet read transaction.) So, a failure to respond to addresses fffff0000414 could also be caused by the physical DMA not being set up correctly. But the fact that it works /sometimes/ after another bus reset indicates that this is not a DMA problem. Carl, if you have a compiled kernel, you could comment out the line device->max_speed = device->node->max_speed; in drivers/firewire/core-device.c and rebuild + reinstall firewire-core. Then firewire-core will keep all requests to any device down at S100. If it works then, we know that your bus is not capable to support 400 Mbit/s properly but can limp along with 100 Mbit/s. -- Stefan Richter -=====-==-== ==-- =--== http://arcgraph.de/sr/ |