[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <1526149829.1594.1@smtp.crapouillou.net>
Date: Sat, 12 May 2018 20:30:29 +0200
From: Paul Cercueil <paul@...pouillou.net>
To: Boris Brezillon <boris.brezillon@...tlin.com>
Cc: Mark Rutland <mark.rutland@....com>,
David Woodhouse <dwmw2@...radead.org>,
linux-mtd@...ts.infradead.org, Rob Herring <robh+dt@...nel.org>,
linux-kernel@...r.kernel.org, devicetree@...r.kernel.org,
Brian Norris <computersforpeace@...il.com>,
Richard Weinberger <richard@....at>,
Boris Brezillon <boris.brezillon@...in.com>,
Marek Vasut <marek.vasut@...il.com>
Subject: Re: [PATCH] mtd: nand: Add support for reading ooblayout from device
tree
Le sam. 12 mai 2018 à 20:02, Boris Brezillon
<boris.brezillon@...tlin.com> a écrit :
> On Sat, 12 May 2018 19:42:49 +0200
> Paul Cercueil <paul@...pouillou.net> wrote:
>
>> >> >> My motivation is to get rid of this (move it to devicetree):
>> >> >>
>> >> >>
>> >>
>> https://elixir.bootlin.com/linux/latest/source/arch/mips/jz4740/board-qi_lb60.c#L93
>> >> >> And enable the support of other boards with custom OOB
>> layouts.
>> >> >
>> >> > Can you list the different layouts you have? I'm pretty sure
>> >> there's a
>> >> > pattern. Maybe we can even deduce the layout from the page
>> size
>> >> or OOB
>> >> > size.
>> >>
>> >> This is the other layout I have for another ingenic device:
>> >>
>> >>
>> http://projects.qi-hardware.com/index.php/p/qi-kernel/source/tree/od-2011-09-18/arch/mips/jz4740/board-a320.c#L125
>> >>
>> >> Page size and OOB size are the same between these two devices.
>> >
>> > Indeed. Do you know if there are other kind of layouts in the
>> wild?
>>
>> I'm getting a new board in a few weeks, I'll be able to check that
>> out.
>>
>> > Note that <layout-id> can be a string, so if each each board is
>> > defining its own layout, you could specify the board name here.
>> > Otherwise, if you just have those 2 patterns, you can just name
>> them
>> > "contiguous" and "interleaved".
>>
>> I don't like the idea of adding board-specific data inside the
>> driver...
>> I'd prefer to use the method I used in this patch, but inside the
>> jz4740-nand driver, if you're OK with it.
>
> Please don't. Encoding such detailed description in the DT has almost
> always proven to be poor choice. Also, people are likely to get it
> wrong, and then you'll have to fix all DTs, while, with a single
> unique
> ID representing the layout, you can
> - re-use existing layouts easily without having to describe everything
> again in the DT
> - fix the driver without getting in trouble with people who claim
> that DT is a stable ABI and don't want to update their DT
>
> So, please just pick user-friendly IDs and add layout definitions in
> the driver. If you don't want to leak board info in the driver, then
> don't name the layout with the board name. BTW, I still hope you'll
> only
> have 2 kind of layouts (contiguous and interleaved).
Alright. Thanks for the insights.
-Paul
Powered by blists - more mailing lists