Skip to content

Conversation

@pabigot
Copy link
Contributor

@pabigot pabigot commented Dec 29, 2020

JESD216 specifies serial flash discoverable parameters used by various flash memory devices. Historically the only Zephyr driver for these devices was the one that became SPI_NOR. Subsequently Nordic introduced a QSPI driver that required some of the parameters, but not others. This introduced a split so the shared properties could be described once and used in multiple driver-specific bindings.

Now there are additional QSPI drivers being proposed for different SOCs, including #30864 and #31034. #30864 includes a commit to further split the shared properties by eliminating ones that aren't supported by a driver.

I'd like to see that split discussed and merged separately so that all QSPI rework in progress (including Nordic) can use it. Hence this PR, which is much the same as the one from @erwango in #30864 but adds documentation explaining what goes in which layer, and takes steps towards removing a legacy property.

@pabigot pabigot requested a review from erwango December 29, 2020 14:21
@github-actions github-actions bot added area: Boards area: Devicetree area: Devicetree Binding PR modifies or adds a Device Tree binding area: Samples Samples area: Tests Issues related to a particular existing or missing test platform: NXP NXP platform: Silabs Silicon Labs platform: STM32 ST Micro STM32 labels Dec 29, 2020
@pabigot pabigot requested review from arvid-r and mnkp December 29, 2020 14:22
@pabigot
Copy link
Contributor Author

pabigot commented Dec 29, 2020

CI failure is #31044, not related to this PR.

Use of this property has no effect since it was by SFDP erase data in
Zephyr 2.4.

Signed-off-by: Peter Bigot <[email protected]>
@pabigot
Copy link
Contributor Author

pabigot commented Jan 4, 2021

Rebased now that CI build failure has been fixed (#31044).

@MaureenHelm
Copy link
Member

@galak any input?

@pabigot pabigot added this to the v2.5.0 milestone Jan 6, 2021
@pabigot
Copy link
Contributor Author

pabigot commented Jan 7, 2021

Could we please get this merged so #30864 and #31034 can take advantage of it? @galak waiting on you?

@zephyrbot zephyrbot added the area: RISCV RISCV Architecture (32-bit & 64-bit) label Jan 8, 2021
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we add deprecated: true here?

Copy link
Contributor

@galak galak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, only query on marking has-be32k as deprecated in the binding.

jedec,jesd216.yaml has properties for any memory device that conforms
to the JESD216 specification.  This file at a minimum should be
included in the binding for any driver that interacts with such a
device.

jedec,spi-nor-common.yaml extends jedec,jesd216 with additional
parameters useful for memory devices that are not available from
standard JESD216 parameter tables.  This file may be included instead
of jedec,jesd216.yaml if a driver is able to support additional
functionality related to the extended description.

jedec,spi-nor.yaml remains the binding for the Zephyr SPI_NOR driver
alone.

Signed-off-by: Peter Bigot <[email protected]>
@pabigot
Copy link
Contributor Author

pabigot commented Jan 12, 2021

LGTM, only query on marking has-be32k as deprecated in the binding.

Wasn't thinking about that, added it now.

@galak galak merged commit 72998f0 into zephyrproject-rtos:master Jan 13, 2021
@pabigot pabigot deleted the nordic/20201229a branch January 22, 2021 14:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: Boards area: Devicetree Binding PR modifies or adds a Device Tree binding area: Devicetree area: RISCV RISCV Architecture (32-bit & 64-bit) area: Samples Samples area: Tests Issues related to a particular existing or missing test platform: NXP NXP platform: Silabs Silicon Labs platform: STM32 ST Micro STM32

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants