Thread: ohci driver update
Brought to you by:
aeb,
bencollins
From: Sebastien R. <Seb...@sy...> - 2000-04-14 07:23:29
|
Hi, I am chasing the bug that causes the node count to stay at zero on some ohci chipset. I think I have found a possible culprit, but I can't be sure since I don't have this problem with my card and I don't have the troublesome hardware here. The problem I have found is that the linkEnable is set before the interrupt mask is set. Triggering a bus reset before enabling the interrupt might well be the reason the self-id packets are lost. Anyway I have updated the CVS with the fix, and also with some development code for direct DMA to user space (not ready yet, don't bother to use it). Please try the updated driver, and see if it fixes the problem (or introduce some new ones). -- Sebastien Rougeaux RSISE, The Australian National University |
From: Hiromasa Y. <yos...@li...> - 2000-04-16 04:50:54
|
Sebastien Rougeaux <Seb...@sy...> wrote: > I am chasing the bug that causes the node count to stay at zero on > some ohci chipset. I think I have found a possible culprit, but IntEvent.SelfIDComlete has never asserted. But NodeID register has correct number. I'm looking for CXD3222 data manual. I check header file, and found another bug. #define OHCI1394_postedWriteErr 0x00001000 #define OHCI1394_lockRespErr 0x00002000 =>#define OHCI1394_postedWriteErr 0x00000100 =>#define OHCI1394_lockRespErr 0x00000200 > Anyway I have updated the CVS with the fix, and also with > some development code for direct DMA to user space (not > ready yet, don't bother to use it). I had been puzzled about rvmalloc() at bttv.c. I think static void * rvmalloc(unsigned long size) should be static void * rvmalloc(signed long size). |
From: Sebastien R. <Seb...@sy...> - 2000-04-16 23:21:49
|
>>>>> "Hiromasa" == Hiromasa Yoshimoto <yos...@li...> writes: Hiromasa> IntEvent.SelfIDComlete has never asserted. But NodeID register Hiromasa> has correct number. I'm looking for CXD3222 data manual. OK, so the problem remains... Hiromasa> I check header file, and found another bug. #define OHCI1394_postedWriteErr 0x00000100 #define OHCI1394_lockRespErr 0x00000200 Thanks. It will be corrected in the next cvs version. Hiromasa> I had been puzzled about rvmalloc() at bttv.c. I think static Hiromasa> void * rvmalloc(unsigned long size) should be static void * Hiromasa> rvmalloc(signed long size). Why ? It doesn't make sense to allocate a negative amount of memory... -- Sebastien Rougeaux RSISE, The Australian National University |
From: hunter <hu...@ti...> - 2000-04-17 02:04:03
|
At 01:43 PM 4/16/00 +0900, Hiromasa Yoshimoto wrote: > I'm looking for CXD3222 data manual. The CXD3222 is a straight OHCI 1.0 link chip, so its Data Manual is the OHCI 1.0 specification. (There might be slight differences from the TI OHCI link chips, but those are within-spec implementation differences -- ie, nothing programmable.) Hunter |