[U-Boot] [PATCH 2/3] ARM: board: cm_fx6: fixup mtd partitions in the fdt

Nikita Kiryanov
2016-07-10T07:52:00Z

Hi Christopher,

On Thu, Jul 07, 2016 at 03:30:25PM +0200, Christopher Spinrath wrote:
> Hi Nikita,
>
> On 07/07/2016 10:53 AM, Nikita Kiryanov wrote:
> > On Wed, Jun 22, 2016 at 07:17:53PM +0300, Igor Grinberg wrote:
> >> On 06/19/2016 06:44 PM, Christopher Spinrath wrote:
> >>> The cm-fx6 module has an on-board st,m25p compatible spi flash chip
> >>> used for u-boot (binary & environment). Overwrite the partitions in
> >>> the device tree by the partition table provided in the mtdparts
> >>> environment variable, if it is set.
> >>>
> >>> This allows to specify a kernel independent partitioning in the
> >>> environment and provides a convient way for the user to adapt the
> >>> partition table.
> >>>
> >>> Signed-off-by: Christopher Spinrath <christopher.spinrath@rwth-aachen.de>
> >>> ---
> >>> board/compulab/cm_fx6/cm_fx6.c | 16 +++++++++++++++-
> >>> 1 file changed, 15 insertions(+), 1 deletion(-)
> >>>
> >>> diff --git a/board/compulab/cm_fx6/cm_fx6.c b/board/compulab/cm_fx6/cm_fx6.c
> >>> index 712057a..81a7ae2 100644
> >>> --- a/board/compulab/cm_fx6/cm_fx6.c
> >>> +++ b/board/compulab/cm_fx6/cm_fx6.c
> >>
> >> [...]
> >>
> >>> +#ifdef CONFIG_FDT_FIXUP_PARTITIONS
> >>> +struct node_info nodes[] = {
> >>> + { "st,m25p", MTD_DEV_TYPE_NOR, },
> >>
> >> Nikita, is this enough for all flashes we assemble on cm-fx6?
> >
> > Yes, CM-FX6 is using M25PX16 and SST25VF016B, both of which are
> > supported by the m25p80.c driver. However, on the mainline branch
> > I don't see "m25p" in the list of device ids, and IIRC the request
> > is to favor "jedec,spi-nor" as compatible string over device specific
> > ones.
>
> Linux is going to use "st,m25p", "jedec,spi-nor" as compatible list
> (currently queued for inclusion in v4.8:
> https://git.kernel.org/cgit/linux/kernel/git/arm/arm-soc.git/tree/arch/arm/boot/dts/imx6q-cm-fx6.dts?h=next/dt#n123
> ).
>
> I have chosen "st,m25p" here to cover both the mainline and CompuLab's
> device trees (I have seen some where "jedec,spi-nor" is not in the
> list). However, if you prefer I will switch to "jedec,spi-nor"
> (excluding some device trees) in v2.

Does it have to be an "or" situation? m25p is necessary to serve older CM-FX6
kernels, but it is not supported in the mainline kernel, so the correct
course of actions seems to be to use both "st,m25p" and "jedec,spi-nor".