Revert "nvmem: core: remove nvmem_config wp_gpio"

This reverts commit 89991ededc which is
commit 569653f022a29a1a44ea9de5308b657228303fa5 upstream.

It breaks the Android kernel api, and isn't even really needed in the
5.10.y kernel tree yet, as there are no users of the new field.  So
revert it for now.  If it is needed, it can be brought back in an
abi-safe way in the future.

Bug: 161946584
Change-Id: Ib69df930ea19f91d0d35d792e3b90dc1d391980b
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
Greg Kroah-Hartman
2023-03-03 12:48:31 +00:00
parent a4160f76c7
commit d480976b05
2 changed files with 5 additions and 1 deletions

View File

@@ -627,7 +627,9 @@ struct nvmem_device *nvmem_register(const struct nvmem_config *config)
nvmem->id = rval;
if (!config->ignore_wp)
if (config->wp_gpio)
nvmem->wp_gpio = config->wp_gpio;
else if (!config->ignore_wp)
nvmem->wp_gpio = gpiod_get_optional(config->dev, "wp",
GPIOD_OUT_HIGH);
if (IS_ERR(nvmem->wp_gpio)) {

View File

@@ -49,6 +49,7 @@ enum nvmem_type {
* @word_size: Minimum read/write access granularity.
* @stride: Minimum read/write access stride.
* @priv: User context passed to read/write callbacks.
* @wp-gpio: Write protect pin
* @ignore_wp: Write Protect pin is managed by the provider.
*
* Note: A default "nvmem<id>" name will be assigned to the device if
@@ -63,6 +64,7 @@ struct nvmem_config {
const char *name;
int id;
struct module *owner;
struct gpio_desc *wp_gpio;
const struct nvmem_cell_info *cells;
int ncells;
enum nvmem_type type;