From owner-freebsd-arm@FreeBSD.ORG Wed Jul 8 09:14:27 2009 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5A491106566C; Wed, 8 Jul 2009 09:14:27 +0000 (UTC) (envelope-from raj@semihalf.com) Received: from smtp.semihalf.com (smtp.semihalf.com [213.17.239.109]) by mx1.freebsd.org (Postfix) with ESMTP id 0F3F28FC0A; Wed, 8 Jul 2009 09:14:26 +0000 (UTC) (envelope-from raj@semihalf.com) Received: from [10.0.0.34] (cardhu.semihalf.com [213.17.239.108]) by smtp.semihalf.com (Postfix) with ESMTPSA id 5B4E9C3AAA; Wed, 8 Jul 2009 10:57:15 +0200 (CEST) Message-Id: <37C51279-42D8-49DE-8249-0DA386EBB062@semihalf.com> From: Rafal Jaworowski To: Hans Petter Selasky In-Reply-To: <200907071846.42086.hselasky@c2i.net> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v935.3) Date: Wed, 8 Jul 2009 10:58:17 +0200 References: <200906231035.43096.kosmo@semihalf.com> <200907051236.22783.hselasky@c2i.net> <200907071550.28781.kosmo@semihalf.com> <200907071846.42086.hselasky@c2i.net> X-Mailer: Apple Mail (2.935.3) Cc: thompsa@freebsd.org, freebsd-arm@freebsd.org, =?ISO-8859-2?Q?Piotr_Zi=EAcik?= , freebsd-usb@freebsd.org Subject: Re: CPU Cache and busdma usage in USB X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 08 Jul 2009 09:14:27 -0000 On 2009-07-07, at 18:46, Hans Petter Selasky wrote: >> I had Checked USB behaviour on PowerPC without hardware cache >> coherency. >> The problem also exists here and patch helps. > > In my source code view the busdma sync function is empty for power- > pc. Your > patch should have no effect at all for sync operations? This was about the PPC4xx PowerPC port, not committed to the tree yet. Unlike most PowerPC this system has a de-coherent DMA and therefore its busdma sync is non empty, but needs to enforce coherency by software. The point is this is another platform on which USB stack (usb_pc_cpu_* functions) shows similar issues as reported for ARM and MIPS. Rafal