No description
Find a file
Patrick Van Oosterwijck c854086194 Add Puya P25Q32H 4MiB SPI flash
Needed for upcoming RP2040-Shim.  Configuration with datasheet
page references, tested to work on prototype.
2022-06-04 14:10:54 -06:00
flash Add Puya P25Q32H 4MiB SPI flash 2022-06-04 14:10:54 -06:00
mram Rework status and qspi settings 2021-03-17 12:54:35 -07:00
.cascade.toml Initial data import before fixup 2021-03-02 16:18:06 -08:00
.pre-commit-config.yaml Add README 2021-03-03 16:02:25 -08:00
CODE_OF_CONDUCT.md Add README 2021-03-03 16:02:25 -08:00
LICENSE Add README 2021-03-03 16:02:25 -08:00
nvm.template.toml Rework status and qspi settings 2021-03-17 12:54:35 -07:00
README.md Add README 2021-03-03 16:02:25 -08:00

nvm.toml

Discord Build Status

This is a human and machine readable "database" of config for non-volatile memory chips. It uses cascadetoml to allow common technology and manufacturer settings to be shared amongst all SKUs.

Shared data goes in a toml file with a name that matches the folder name.

The template documents all of the possible fields.

Example

Single SKU

To get the TOML for a specific SKU do:

cascadetoml cascade filter sku=\"GD25Q64C\"

Here is example TOML output:

[[nvm]]
# Data for path: flash/gigadevice/GD25Q64C.toml

# Data inferred from the path: {technology}/{manufacturer}/{sku}.toml
technology = "flash"
manufacturer = "gigadevice"
sku = "GD25Q64C"

# Data from flash/flash.toml
supports_fast_read = true

# Data from flash/gigadevice/GD25Q64C.toml
# Settings for the Gigadevice GD25Q64C 8MiB SPI flash.
# Datasheet: http://www.elm-tech.com/en/products/spi-flash-memory/gd25q64/gd25q64.pdf
total_size = 0x800000 # 8 MiB
capacity = 0x17
write_status_register_split = true

All from one Manufacturer

The filters are actually TOML themselves. They match any entry that include the given keys with any of the given values.

To get all gigadevice flashes you'd run:

cascadetoml cascade filter manufacturer=\"gigadevice\"

Cascade walk-through

The paths all match {technology}/{manufacturer}/{sku}.toml. A file such as flash/gigadevice/GD1.toml will have the implicit values:

technology = "flash"
manufacturer = "gigadevice"
sku = "GD25Q64C"

All of the other values come from these files in order:

  • flash/flash.toml
  • flash/gigadevice/gigadevice.toml
  • flash/gigadevice/GD25Q64C.toml

Contributing

Contributions are welcome! Please read our Code of Conduct before contributing to help this project stay welcoming.

Documentation

For information on building library documentation, please check out this guide.