Support for block device NVMEM providers#780
Open
blktests-ci[bot] wants to merge 9 commits intolinus-master_basefrom
Open
Support for block device NVMEM providers#780blktests-ci[bot] wants to merge 9 commits intolinus-master_basefrom
blktests-ci[bot] wants to merge 9 commits intolinus-master_basefrom
Conversation
Author
|
Upstream branch: dca922e |
Author
|
Upstream branch: dca922e |
6f62649 to
51bfda0
Compare
482ce5b to
5a9f7c7
Compare
Author
|
Upstream branch: e75a43c |
51bfda0 to
9957a17
Compare
5a9f7c7 to
25a041f
Compare
Add support for an nvmem-layout subnode under an eMMC hardware partition. This allows the partition to be exposed as an NVMEM provider and its internal layout to be described. For example, an eMMC boot partition can be used to store device-specific information such as a WiFi MAC address. Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
On Arduino Uno-Q, the eMMC boot1 partition is factory provisioned with device-specific information such as the WiFi MAC address and the Bluetooth BD address. This partition can serve as an alternative to additional non-volatile memory, such as a dedicated EEPROM. The eMMC boot partitions are typically good candidates, as they are realively small, read-only by default (and can be enforced as hardware read-only), and are not affected by board reflashing procedures, which generally target the eMMC user or GP partitions. Describe the corresponding nvmem-layout for the WiFi and Bluetooth addresses. Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
On embedded devices using an eMMC it is common that one or more partitions on the eMMC are used to store MAC addresses and Wi-Fi calibration EEPROM data. Allow referencing the partition in device tree for the kernel and Wi-Fi drivers accessing it via the NVMEM layer. Signed-off-by: Daniel Golle <daniel@makrotopia.org> Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
Add support for an NVMEM cell provider with the standard "mac-address" cell name. This allows the ath10k device to retrieve its MAC address from non-volatile storage such as an EEPROM or an eMMC partition. Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
On Arduino Uno-Q, the WiFi MAC address is stored in the eMMC boot1 partition. Point to the appropriate NVMEM cell to retrieve it. Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Add support for an NVMEM cell provider for "local-bd-address", allowing the Bluetooth stack to retrieve controller's BD address from non-volatile storage such as an EEPROM or an eMMC partition. Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
Some devices store the Bluetooth BD address in non-volatile memory, which can be accessed through the NVMEM framework. Similar to Ethernet or WiFi MAC addresses, add support for reading the BD address from a 'local-bd-address' NVMEM cell. As with the device-tree provided BD address, add a quirk to indicate whether a device or platform should attempt to read the address from NVMEM when no valid in-chip address is present. Also add a quirk to indicate if the address is stored in big-endian byte order. Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
When the controller BD address is invalid (zero or default), set the NVMEM quirks to allow retrieving the address from a 'local-bd-address' NVMEM cell. The BD address is often stored alongside the WiFi MAC address in big-endian format, so also set the big-endian quirk. Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
On Arduino Uno-Q, the Bluetooth Device address is stored in the eMMC boot1 partition. Point to the appropriate NVMEM cell to retrieve it. Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Author
|
Upstream branch: 66edb90 |
9957a17 to
d2ae2b8
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull request for series with
subject: Support for block device NVMEM providers
version: 1
url: https://patchwork.kernel.org/project/linux-block/list/?series=1086905