Re: [PATCH] dt-bindings: mtd: spi-nor: deprecate Everspin MRAM devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri Jun 21, 2024 at 8:49 AM CEST, Alexander Stein wrote:
> Hi everyone,
>
> sorry for being late to the party. I just noticed this discussion while
> reading [1].
>
> Am Dienstag, 4. Juni 2024, 09:42:31 CEST schrieb Michael Walle:
> > These devices are more like an AT25 compatible EEPROM instead of
> > flashes. Like an EEPROM the user doesn't need to explicitly erase the
> > memory, nor are there sectors or pages. Thus, instead of the SPI-NOR
> > (flash) driver, one should instead use the at25 EEPROM driver.
> > 
> > Signed-off-by: Michael Walle <mwalle@xxxxxxxxxx>
> > Cc: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
> > Cc: Thorsten Scherer <t.scherer@xxxxxxxxxxxx>
> > Cc: Marek Vasut <marex@xxxxxxx>
> > Cc: Imre Kaloz <kaloz@xxxxxxxxxxx>
> > Cc: Andrew Lunn <andrew@xxxxxxx>
> > Cc: Flavio Suligoi <f.suligoi@xxxxxxx>
> > ---
> > The referenced binding only supports the true AT25 compatible EEPROMs
> > where you have to specify additional properties like size and page size
> > or cypress FRAM devices where all the properties are discovered by the
> > driver. I don't have the actual hardware, therefore I can't work on a
> > proper driver and binding. But I really want to deprecate the use of
> > these EEPROM like devices in SPI-NOR. So as a first step, mark the
> > devices in the DT bindings as deprecated.
> > 
> > There are three in-tree users of this. I hope I've CCed all the relevant
> > people. With the switch to the at25 driver also comes a user-space
> > facing change: there is no more MTD device. Instead there is an "eeprom"
> > file in /sys now, just like for every other EEPROM.
> > 
> > Marek already expressed, that the sps1 dts can likely be removed
> > altogether. I'd like to hear from the other board DTS maintainers if
> > they seem some problems moving to the EEPROM interface - or maybe that
> > device isn't used at all anyway. So in the end, we can hopefully move
> > all the users over to the at25 driver.
>
> So instead of spi-nor you want to use at25 for this MRAM devices?

Yes.

> AFAICS at25 is a spi only driver, but spi-nor is a spi-mem driver. So I am
> wondering if at25 driver is capable of using QSPI hosts.

spi-mem support could be added to the at25 driver. But probably
mainly because there are SPI controllers out there which only have
an interface to attach memory (like the FlexSPI from NXP).

> Everspin EMxxLXB devices are capable of running in xSPI modes.
> Regarding QSPI (DSPI/OSPI as well) I assumed spi-nor is a given, but maybe
> I am completely wrong here. Maybe someone could clarify this.

These newer devices should also support the erase command, right? So
they can be a "real" flash. If they support SFDP, the would even be
supported out of the box. The mentioned everspin devices are much
older and behaves more like an EEPROM instead of a flash.

-michael

>
> Best regards,
> Alexander
>
> [1] https://lore.kernel.org/linux-kernel/20240405100104.480779-1-f.suligoi@xxxxxxx/
>
> > ---
> >  Documentation/devicetree/bindings/mtd/jedec,spi-nor.yaml | 9 ++++++++-
> >  1 file changed, 8 insertions(+), 1 deletion(-)
> > 
> > diff --git a/Documentation/devicetree/bindings/mtd/jedec,spi-nor.yaml b/Documentation/devicetree/bindings/mtd/jedec,spi-nor.yaml
> > index 6e3afb42926e..2dccb6b049ea 100644
> > --- a/Documentation/devicetree/bindings/mtd/jedec,spi-nor.yaml
> > +++ b/Documentation/devicetree/bindings/mtd/jedec,spi-nor.yaml
> > @@ -21,7 +21,6 @@ properties:
> >                (m25p(40|80|16|32|64|128)|\
> >                n25q(32b|064|128a11|128a13|256a|512a|164k)))|\
> >                atmel,at25df(321a|641|081a)|\
> > -              everspin,mr25h(10|40|128|256)|\
> >                (mxicy|macronix),mx25l(4005a|1606e|6405d|8005|12805d|25635e)|\
> >                (mxicy|macronix),mx25u(4033|4035)|\
> >                (spansion,)?s25fl(128s|256s1|512s|008k|064k|164k)|\
> > @@ -42,6 +41,14 @@ properties:
> >                - spansion,s25fs512s
> >            - const: jedec,spi-nor
> >        - const: jedec,spi-nor
> > +
> > +      # Deprecated bindings
> > +      - items:
> > +          - pattern: "^everspin,mr25h(10|40|128|256)$"
> > +          - const: jedec,spi-nor
> > +        description:
> > +          Deprecated binding, use Documentation/devicetree/bindings/eeprom/at25.yaml.
> > +        deprecated: true
> >      description:
> >        SPI NOR flashes compatible with the JEDEC SFDP standard or which may be
> >        identified with the READ ID opcode (0x9F) do not deserve a specific
> > 

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux