Files
drivers/sd
Pat Whittingslow e08205477c sd package: sdcard package redesign (#639)
* begin adding sd.Card refactor

* CSD logic shared between V1 and V2

* failing CRC7 implementation

* passing tests

* rename commands

* implement waitToken

* add status string method

* no crc errors in status; closing the gap?

* add config baud increase docs

* remove some of API

* still working on consolidation of init

* fully comply

* add prints

* remove prints

* remove unused API

* add BlockDevice

* implement Card interface

* rename EraseBlocks to EraseSectors

* add blkIdxer

* working BlockDevice

* delete rustref.go; add readme to sd

* add sd/README.md

* sd: backtrack on EraseSectors, stick to block nomenclature

* remove remnants of sector size

* fix examples/sd/main.go

* add documentation, smoke test and fix a couple bugs
2026-08-21 12:48:11 +02:00
..

sd package

File map:

  • blockdevice.go: Contains logic for creating an io.WriterAt and io.ReaderAt with the sd.BlockDevice concrete type from the sd.Card interface which is intrinsically a blocked reader and writer.

  • spicard.go: Contains the sd.SpiCard driver for controlling an SD card over SPI using the most commonly available circuit boards.

  • responses.go: Contains a currently unused SD response implementations as per the latest specification.

  • definitions.go: Contains SD Card specification definitions such as the CSD and CID types as well as encoding/decoding logic, as well as CRC logic.