From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754704AbbLKOrU (ORCPT ); Fri, 11 Dec 2015 09:47:20 -0500 Received: from mout.kundenserver.de ([212.227.126.134]:59878 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753683AbbLKOrT (ORCPT ); Fri, 11 Dec 2015 09:47:19 -0500 From: Arnd Bergmann To: Jason Cooper Cc: Josh Triplett , Detlef Vollmann , linux-arm-kernel@lists.infradead.org, Andrew Lunn , Russell King , Benjamin Cama , linux-kernel@vger.kernel.org, Gregory CLEMENT , "Evgeniy A. Dushistov" , Sebastian Hesselbarth Subject: Re: [PATCH 0/5] ARM: orion5x/dove/mv78xx0 multiplatform Date: Fri, 11 Dec 2015 15:46:53 +0100 Message-ID: <3272371.tle8Qz0NMz@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) In-Reply-To: <20151211133601.GB18249@io.lakedaemon.net> References: <1448466557-435335-1-git-send-email-arnd@arndb.de> <14967875.ttNXUbSTvS@wuerfel> <20151211133601.GB18249@io.lakedaemon.net> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:NaCWM89lQzwxZqm5fen922GSXtgxTVAxF6sXRiYGC6JwIaZhUpK 9BJcUepypOCPjZCkEYXzhqpAjsTM59YlnINxY+dOPYCthmn9Sy073p+J4nGqI5fNeWJ+67d 7NW/nvuBY267pllFNtgUMiPUBjUzLRWbErzj1z1zikYd1Vl8UQJ36H5IGHgTiW8uykrVkxM 02IyABI/6uAhjE/f2AM1g== X-UI-Out-Filterresults: notjunk:1;V01:K0:Tvqy1Rk0dpU=:fM1dEiUTcPOS5aIvquLzn7 fRe3Q4LKT/h2xDBIVvdwnHkeOp4MCDoAg0DD2R2UzHngV0AgyRa3TrDx7tI2tOvP+5UDTrY5l Eo172sn7OwBhNWTH4Ov2jxGkjNS9Lki4ZhLe4PL2ObzroR64QY/wTj9Dukio9dQb+TGCLNqyr kFr4/obzdYEAZUulw/qzNtx4rQjU0mHi5S8RiLexGYr06TtzdwkiuF4zOnWbbjn2vamkKGaMN qY8A4AIJvlg/dF6h7oWKn+BsM7PUP46SmuYRD7FdT2EskVSbki6QzZwzPrxJoEl7uTr629fD3 MaSgsjPCbzRzh0ehAvJ8Sa0xAIPeXsDD4+Ic0YaLwOR267DQbi3/Sj3o1C6FxOHamGTM+qxgD drHSQ3E56cDMQ/EhYbLQnYlqbAZbP7plQCw+k5Zt+l0qjmYWWfgcmaA/HTnKK5ewVZ5LTSDo2 Nc+HaJfXgLvOeWp4V4hrfGYf/aqAcJQ9L6/n6BMV7pjqql3HnFVNqSn0hNQE5t6siwToBqmX9 QmbXjmrSQN3tIUC/U+l06L8YMcB02nubZznnfugfEf0wPor4VxBRa5gD0jBHmzZosAEt+TVxP J0Roewe5X8mFVngaUPcFpe/UKUk3GSvxrIZCr31Li9cGJHeP9OYI7cEztpLrUDBQ4ifIphNiO bn4Ir6uDV7sg4bIajSOsIlGV45yB0GTIJZXahjr1a6RxiN85xyQb2xyhVytzETBMuPf3RB3WK tsarKNj7g7IMcUoy Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Friday 11 December 2015 13:36:01 Jason Cooper wrote: > +Josh > > Hey Arnd, Detlef, > > On Fri, Dec 11, 2015 at 12:10:55AM +0100, Arnd Bergmann wrote: > > On Thursday 10 December 2015 23:00:24 Detlef Vollmann wrote: > > > On 12/10/15 22:29, Arnd Bergmann wrote: > > > > On Thursday 10 December 2015 22:14:25 Detlef Vollmann wrote: > > > >> On 12/10/15 21:59, Arnd Bergmann wrote: > > > > It may also be worth investigating what has made CONFIG_OF so costly, > > > Probably because too much is done at runtime and too few things can > > > be fixed at build time. > > > > > > > maybe we can reduce this a bit again. > > > Probably not without turning the wheel backward > > > > > > So for the test: yes it works, but I'm unhappy with it. > > > > I'm not too happy about adding 80kb to the uncompressed kernel > > image either. I've spent some more time now trying to find where > > we added the bloat. It's mainly in drivers, not in arch specific > > code, a kilobyte here and there eventually adds up, but the largest > > portion with a little over 50% of the total diff is drivers/of. > > Wasn't there an idea kicked around a while ago to create a > dt2boardfile script/executable*? Then, during kernel configuration, you > enable it and select which dts file you want. It would disable > CONFIG_OF, multiplatform, etc. And generate a board_file.c from the dts > file. I think you are right this has come up in the past, but I don't see how it would work in practice without significant changes to driver subsystems: The way we describe devices in DT is often very different from what we have for the traditional board files, and in some cases we don't even support platform data any more, so this would still depend on having properties according to the DT bindings, and require a large chunk of the same code that is doing DT at the moment. Arnd