mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-06 08:46:46 +00:00
nvmem: meson-efuse: add write support
Add write support to the meson-gx efuse driver. Beware, this efuse is one time programmable ! Reviewed-by: Kevin Hilman <khilman@baylibre.com> Signed-off-by: Jerome Brunet <jbrunet@baylibre.com> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
a29a63bdaf
commit
e55077307d
1 changed files with 8 additions and 1 deletions
|
@ -28,6 +28,13 @@ static int meson_efuse_read(void *context, unsigned int offset,
|
||||||
bytes, 0, 0, 0);
|
bytes, 0, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int meson_efuse_write(void *context, unsigned int offset,
|
||||||
|
void *val, size_t bytes)
|
||||||
|
{
|
||||||
|
return meson_sm_call_write((u8 *)val, bytes, SM_EFUSE_WRITE, offset,
|
||||||
|
bytes, 0, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
static const struct of_device_id meson_efuse_match[] = {
|
static const struct of_device_id meson_efuse_match[] = {
|
||||||
{ .compatible = "amlogic,meson-gxbb-efuse", },
|
{ .compatible = "amlogic,meson-gxbb-efuse", },
|
||||||
{ /* sentinel */ },
|
{ /* sentinel */ },
|
||||||
|
@ -52,8 +59,8 @@ static int meson_efuse_probe(struct platform_device *pdev)
|
||||||
econfig->name = dev_name(dev);
|
econfig->name = dev_name(dev);
|
||||||
econfig->stride = 1;
|
econfig->stride = 1;
|
||||||
econfig->word_size = 1;
|
econfig->word_size = 1;
|
||||||
econfig->read_only = true;
|
|
||||||
econfig->reg_read = meson_efuse_read;
|
econfig->reg_read = meson_efuse_read;
|
||||||
|
econfig->reg_write = meson_efuse_write;
|
||||||
econfig->size = size;
|
econfig->size = size;
|
||||||
|
|
||||||
nvmem = devm_nvmem_register(&pdev->dev, econfig);
|
nvmem = devm_nvmem_register(&pdev->dev, econfig);
|
||||||
|
|
Loading…
Reference in a new issue