From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ozlabs.org (ozlabs.org [203.10.76.45]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "mx.ozlabs.org", Issuer "CA Cert Signing Authority" (verified OK)) by bilbo.ozlabs.org (Postfix) with ESMTPS id 8B2DEB707C for ; Wed, 8 Jul 2009 01:24:59 +1000 (EST) Received: from mail.marel.is (mail.marel.is [213.167.134.96]) by ozlabs.org (Postfix) with ESMTP id CC5F7DDD0B for ; Wed, 8 Jul 2009 01:24:58 +1000 (EST) Message-ID: <4A5368C7.9020202@marel.com> Date: Tue, 7 Jul 2009 15:24:55 +0000 From: =?ISO-8859-1?Q?K=E1ri_Dav=ED=F0sson?= MIME-Version: 1.0 To: Kumar Gala Subject: Re: dma_ops->map_page == NULL References: <4A523984.2080904@marel.com> <200907071015.24097.markn@au1.ibm.com> <1246964905.6066.41.camel@pasglop> In-Reply-To: Content-Type: text/plain; charset="ISO-8859-1"; format=flowed Cc: Mark Nelson , "linuxppc-dev@ozlabs.org" , Kumar Gala List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Yes the device pointer was invalid. I was passing the of_device pointer instead of the address of of_device->dev. But I am sure this was working (passing of_device pointer) with earlier kernels. Thanks for the help. rg kd Kumar Gala wrote: > On Jul 7, 2009, at 6:08 AM, Benjamin Herrenschmidt wrote: > >> On Tue, 2009-07-07 at 10:15 +1000, Mark Nelson wrote: >>> When the 32 and 64bit DMA code was merged in .28 , map_/ >>> unmap_page() was >>> added in favour of map_/unmap_single() (which was later removed in . >>> 29) >>> so you'll have to replace your calls to dma_map_single() with >>> dma_map_page(). Just pass it the page and offset rather than the >>> address. >> Wait a minute ... dma_map_single() should still work, it will just >> call >> dma_map_page() underneath. All dma_ops should have a ->map page >> callback. >> >> Do you have any dma_ops set for your device at all ? I wonder how we >> set the dma_ops for platform devices nowadays ... We use to have this >> fallback to direct ops when the dma_ops are NULL but that is gone and >> I see no suitable replacement to set them on platform devices for >> embedded archs ... oops... >> >> Kumar, Becky, what's the situation there ? >> >> Cheers, >> Ben. > > Is it possible the dev pointer is not valid? I can't remember if that > was a .29 or .30 change that requires us to start passing a valid dev > pointer to get the proper dma_ops. > > - k