No description
Find a file
Scott Shawcroft 486e0026b5
Merge pull request #14 from Zoogono/main
Add GD25Q16E flash
2023-07-12 11:30:25 -07:00
flash Add GD25Q16E flash 2023-06-01 07:02:21 -04: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.