On 6/27/24 2:49 PM, Daniel Golle wrote: > On embedded devices using an eMMC it is common that one or more (hw/sw) > partitions on the eMMC are used to store MAC addresses and Wi-Fi > calibration EEPROM data. > > Typically the NVMEM framework is used to have kernel drivers read and > use binary data from EEPROMs, efuses, flash memory (MTD), ... > > Using references to NVMEM bits in Device Tree allows the kernel to > access and apply e.g. the Ethernet MAC address, which can be a requirement > for userland to come up (e.g. for nfsroot). > > The goal of this series is to prepare the block subsystem to allow for > the implementation of an NVMEM provider similar to other types of > non-volatile storage, so the same approach already used for EEPROMs, MTD > (raw flashes) and UBI-managed NAND can also be used for devices storing > those bits on an eMMC. > > Define a device tree schema for block devices and partitions on them, > which (similar to how it now works also for UBI volumes) can be matched > by one or more properties. > > Also add a simple notification API for other subsystems to be notified > about additions and removals of block devices, which is going to be used > by the block-backed NVMEM provider. > > Overall, this enables uniform handling across practially all flash > storage types used for this purpose (MTD, UBI, and soon also MMC or and > in future maybe also other block devices). 2-4 look fine to me now, but I don't know anything about the device bindings so someone qualified should review that before it gets queued up. -- Jens Axboe