On Tue, Aug 31, 2021 at 11:35:25PM +0200, Michael Walle wrote: > Am 2021-08-31 20:32, schrieb Vladimir Oltean: > > On Tue, Aug 31, 2021 at 05:40:25PM +0200, Michael Walle wrote: > > > The offical ls1028a binding of the driver uses the following as > > > > Same typo as before. > > > > > compatibles: > > > compatible = "fsl,ls1028a-dspi", "fsl,ls1021a-v1.0-dspi"; > > > > > > Add the missing compatible to the driver and update the device tree. > > > > > > Signed-off-by: Michael Walle <mich...@walle.cc> > > > --- > > > diff --git a/drivers/spi/fsl_dspi.c b/drivers/spi/fsl_dspi.c > > > index 8fe3508c64..23d812f476 100644 > > > --- a/drivers/spi/fsl_dspi.c > > > +++ b/drivers/spi/fsl_dspi.c > > > @@ -654,6 +654,7 @@ static const struct dm_spi_ops fsl_dspi_ops = { > > > > > > static const struct udevice_id fsl_dspi_ids[] = { > > > { .compatible = "fsl,vf610-dspi" }, > > > + { .compatible = "fsl,ls1021a-v1.0-dspi" }, > > > > Okay, so you say it is pointless to add the "fsl,ls1028a-dspi" > > compatible string as well, since the U-Boot driver will match on the > > fallback compatible, and that is absolutely sufficient, since U-Boot > > will never implement any of the LS1028A specifics (DMA) anyway. > > I'm fine with that. > > I'll add that to the commit message in the next version.
There is a subtler point to be made. While in the case of lpuart, there is that difference between Linux and U-Boot, in that: - Linux sets endianness based on compatible string - U-Boot sets endianness based on "little-endian" property For the dspi, it is different. Both Linux and U-Boot set endianness based on the "big-endian" property. So that's why both the LS1021A and LS1028A DSPI modules work with the same compatible string. Quite inconsistent, but it is what it is.