Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755977AbYLJQuT (ORCPT ); Wed, 10 Dec 2008 11:50:19 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1756181AbYLJQtx (ORCPT ); Wed, 10 Dec 2008 11:49:53 -0500 Received: from ns2.suse.de ([195.135.220.15]:58875 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756061AbYLJQtv (ORCPT ); Wed, 10 Dec 2008 11:49:51 -0500 Date: Wed, 10 Dec 2008 17:49:48 +0100 Message-ID: From: Takashi Iwai To: Andres Salomon Cc: Jeremy Katz , jordan@cosmicpenguin.net, Pavel Machek , Ingo Molnar , Thomas Gleixner , Jordan Crouse , linux-kernel@vger.kernel.org, dsaxena@laptop.org Subject: Re: [PATCH] ALSA: cs5535audio: only build OLPC support if MGEODE_LX is defined In-Reply-To: <20081114161035.786f89ba@ephemeral> References: <1226547898.13077.83.camel@aglarond.local> <20081113153714.GA1520@ucw.cz> <20081113111428.59aa36cb@ephemeral> <20081113163802.GA1734@ucw.cz> <20081113120147.2ecde3c8@ephemeral> <20081113190339.GE17851@elte.hu> <20081113213852.16561ed2@ephemeral> <20081114075248.GB8397@atrey.karlin.mff.cuni.cz> <491DB6B9.7030209@cosmicpenguin.net> <1226688350.13086.61.camel@aglarond.local> <20081114161035.786f89ba@ephemeral> User-Agent: Wanderlust/2.12.0 (Your Wildest Dreams) SEMI/1.14.6 (Maruoka) FLIM/1.14.7 (=?ISO-8859-4?Q?Sanj=F2?=) APEL/10.6 Emacs/22.3 (x86_64-suse-linux-gnu) MULE/5.0 (SAKAKI) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 4676 Lines: 102 At Fri, 14 Nov 2008 16:10:35 -0500, Andres Salomon wrote: > > On Fri, 14 Nov 2008 13:45:50 -0500 > Jeremy Katz wrote: > > > On Fri, 2008-11-14 at 10:34 -0700, Jordan Crouse wrote: > > > Pavel Machek wrote: > > > >>>> i've zapped this patch meanwhile: > > > >>>> > > > >>>> 1355c96: x86/olpc: make CONFIG_OLPC dependent on > > > >>>> CONFIG_MGEODE_LX > > > >>>> > > > >>>> because it cripples the ability to run distribution kernels on > > > >>>> the OLPC. > > > >>> OK, I reverted also all relevant changes for cs5535audio driver > > > >>> now. The patches are saved in topic/cs5535audio branch, though. > > > >>> > > > >>> Let's fix OLPC-geode coupling first. > > > >> Hm, I'd really rather prefer this to be upstream. The patch I > > > >> sent adds no regressions, allows the driver to happily coexist > > > >> with existing stuff, and *does* add support if you configure > > > >> OLPC with MGEODE_LX (generic kernels don't get the additional > > > >> benefits, but those configured specifically for OLPC do). > > > > > > > > Yes, but the patch is also not a good way of going forward, so it > > > > should not be in mainline. > > > > > > For the moment, this is a reasonable intermediate solution. I > > > think the way forward will involve a great deal more work. > > > > It's the work that should have been done from the beginning. And once > > code is upstream, the motivation to make things "correct" drops > > Wow. You have it so backwards, it's not even funny. > > When stuff is upstream, there is pressure from lots of people to make > things "correct". When stuff isn't upstream, there's very little pressure; > that's how the ALSA stuff has managed to sit outside of the upstream > kernel for ages. It's a tiny bit of code, easy to port to new kernels, > and therefore can happily be forgotten about in an out-of-tree kernel. > > You say "it's work that should have been done from the beginning", and > yet this is the first time that I've heard anyone request it. If > the geode code had remained out of mainline, I wouldn't have heard the > request at all. > > I *really* don't want this to turn into OFW/promfs mess; attempts at > mainline inclusion fail, relevant parties who we contact ignore us > regarding the "correct" way forward, and therefore things sit outside > of mainline for ages with no progress whatsoever. > > > [...] > > > Also, while we are at it, we should be more specific and rename the > > > hooks from geode_ to cs5536_, since there will soon be a system in > > > the wild with a MIPS processor and a CS5536. > > > > > > But needless to say, this will be a goodly amount of work and churn > > > that will need some heavy testing in the OLPC kernel. In the > > > meantime, Andres' fix will make the upstream kernel happier. > > > > It is work, but I'm not sure it's huge amounts. And by doing it > > *upstream first*, you benefit from the feedback and testing of the > > wider community. Development of things in a silo is what tends to > > lead to these sorts of threads :/ > > > > It is huge amounts, because it's API work. If we were just twiddling > hardware bits, that would be easy. However, we're trying to come up > with an interface that works not only with existing upstream drivers, but > also the remaining out-of-mainline drivers that we maintain. I also > expressed interest in perhaps using the generic GPIO API for geode, > but that's something that requires a good deal of thinking about. I > don't want to rush through it just to get the ALSA driver upstream. > > The DCON driver has not gone upstream exactly because the GPIO API > does not work well for it right now (and out of tree, we were banging > on GPIO pins directly). Obviously, any changes to the API should also > take the DCON into account; I'd rather fix this all the *right* way > than to just write a quick patch that munges the API to make you happy, > and then have to have even more code churn later to completely redo > the API. Well, the GPIO API fix is still not in clear sight, I took back cs5535audio patches again to sound tree with the build workaround like Andres posted (but with a proper fix of ifdef) for 2.6.29. OLPC-dependent part won't be compiled in unless you have CONFIG_MGEODE_LX=y, but it's still better than now. This is really a workaround, and I hope the GPIO stuff will be fixed in arch/x86 in a better way... thanks, Takashi -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/