From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bjorn Helgaas Subject: Re: 2.6.26-rc1 regression: ISA DMA broken (bisected) Date: Tue, 13 May 2008 17:18:39 -0600 Message-ID: <200805131718.40138.bjorn.helgaas@hp.com> References: <4823AAF2.7070102@keyaccess.nl> <20080513180107.1a3893f1@core> <4829D0E5.8050905@keyaccess.nl> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from g4t0014.houston.hp.com (g4t0014.houston.hp.com [15.201.24.17]) by alsa0.perex.cz (Postfix) with ESMTP id 4B8B324440 for ; Wed, 14 May 2008 01:18:40 +0200 (CEST) In-Reply-To: <4829D0E5.8050905@keyaccess.nl> Content-Disposition: inline List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: alsa-devel-bounces@alsa-project.org Errors-To: alsa-devel-bounces@alsa-project.org To: Rene Herman Cc: ALSA devel , Takashi Iwai , Linux Kernel , Glauber Costa , Thomas Gleixner , Ingo Molnar , Pete Clements , Alan Cox List-Id: alsa-devel@alsa-project.org On Tuesday 13 May 2008 11:33:25 am Rene Herman wrote: > On 13-05-08 19:01, Alan Cox wrote: > > On Tue, 13 May 2008 10:59:32 -0600, Bjorn Helgaas wrote: > >> On Friday 09 May 2008 12:06:55 am Takashi Iwai wrote: > >>> Thanks for catching it. Yeah, the patch looks buggy. We had an > >>> implicit assumption that dev = NULL for ISA devices that require 24bit > >>> DMA. > >> Naive question #1: Why don't we have a struct device for these > >> ISA devices? PNP builds a struct device with DMA_24BIT_MASK > >> for ISAPNP devices. > > > > Because nobody has done the needed work to get all the old ISA drivers > > converted. I guess isa_device would actually be a platform_device > > wrapper ? > > No, isa_device is its own thing, on its own isa_bus (*). It has a struct > device * readily available though... > > (*) drivers/base/isa.c, and explanatory changelog at: > > http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=a5117ba7da37deb09df5eb802dace229b3fb1e9f Thanks for the nice changelog. isa_register_driver() currently doesn't set a DMA mask. Should it? I only see about 35 dma_alloc_coherent() calls that pass NULL. I guess even those would be a fair amount of work to change, and I suppose there would be more that I missed. Bjorn