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

[Xen-devel] Re: [ivtv-devel] Problems loading ivtv in Xen - DMA issues?


  • To: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
  • From: David Muench <davemuench@xxxxxxxxx>
  • Date: Fri, 15 Jul 2005 08:43:29 -0400
  • Cc: xen-devel List <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Fri, 15 Jul 2005 12:44:01 +0000
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=A0FxDlGbsrvdkIE3rXpOTPdF+UNZgd8OFfrYbUPvsy+ANRhTG7fp/q9Mh7PktoJrtnVoOvxrR55vFMXQr9a7U6otvBaOOPhG61eqyJOWd+6LBjgBW9UX9kWscbWLYItWrbLHBlyhxANgNsyK+qNKz3i37RgMKO28G3Ds3grfgqE=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

On 7/13/05, Keir Fraser <Keir.Fraser@xxxxxxxxxxxx> wrote:
> 
> I believe the code as checked in is strictly correct, but maybe we can
> relax things a little. What happens if you leave the direction tests in
> dma_map_single and dma_unmap_single, but remove them from
> dma_sync_single_for_cpu and dma_sync_single_for_device?

That works fine.

> If the above works, leave the direction tests in the new modified form;
> otherwise revert to the previous working state (ie. direction tests
> removed from all four functions). Either way, another thing that is
> interesting to try is the following:
> (1) At the start of dma_sync_single_for_cpu add:
>   if (direction == DMA_TO_DEVICE)
>      dma_sync_single_for_device(dev, dma_handle, size, direction);
> (2) At the start of dma_sync_single_for_device add:
>   if (direction == DMA_FROM_DEVICE)
>      dma_sync_single_for_cpu(dev, dma_handle, size, direction);
> 
> This will make the sync functions behave as they do in the ARM
> architecture, which also uses bounce buffers but has at least been
> looked over by the core kernel DMA guys.

That doesn't work however:

saa7115: decoder disable output
saa7115: decoder enable output
ivtv: DEC: REG_ENCSG1LEN wait failed
ivtv: DMA Registers State: xfer: 0x00000002, state: 0x00000001
dec_addr: 0x00000000 enc_addr: 0x46760060 control: 0x00000003
ivtv: DMA DEC Buffers:
 0x00000000:0x00000000:0x00000000
ivtv: DMA ENC Buffers:
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
ivtv: ENC: REG_DMAXFER wait failed
ivtv: DMA Registers State: xfer: 0x00000002, state: 0x00000001
dec_addr: 0x00000000 enc_addr: 0x46760060 control: 0x00000003
ivtv: DMA DEC Buffers:
 0x00000000:0x00000000:0x00000000
ivtv: DMA ENC Buffers:
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
ivtv: ENC: User stopped capture.
ivtv: ENC: REG_DMASTATUS2 wait failed
ivtv: DMA Registers State: xfer: 0x00000002, state: 0x00000001
dec_addr: 0x00000000 enc_addr: 0x46760060 control: 0x00000003
ivtv: DMA DEC Buffers:
 0x00000000:0x00000000:0x00000000
ivtv: DMA ENC Buffers:
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000
 0x00000000:0x00000000:0x00000000

I'm going to take that out and run with the conditionals in the map
functions only, and see if that holds up under longer testing.

Dave

-- 
David Muench - davemuench@xxxxxxxxx
Jabber ID: dave@xxxxxxxxxxxxxxxxxxxx

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.