[PATCH v2 2/2] mtd: spi-nor: sst: Add support for Global Unlock on sst26vf
Michael Walle
michael at walle.cc
Wed Jan 20 10:02:05 EST 2021
Am 2021-01-20 15:52, schrieb Tudor.Ambarus at microchip.com:
> On 1/20/21 4:05 PM, Michael Walle wrote:
>>> diff --git a/drivers/mtd/spi-nor/sst.c b/drivers/mtd/spi-nor/sst.c
>>> index 00e48da0744a..d6e1396abb96 100644
>>> --- a/drivers/mtd/spi-nor/sst.c
>>> +++ b/drivers/mtd/spi-nor/sst.c
>>> @@ -8,6 +8,39 @@
>>>
>>> #include "core.h"
>>>
>>> +static int sst26vf_lock(struct spi_nor *nor, loff_t ofs, uint64_t
>>> len)
>>> +{
>>> + return -EOPNOTSUPP;
>>> +}
>>> +
>>> +static int sst26vf_unlock(struct spi_nor *nor, loff_t ofs, uint64_t
>>> len)
>>> +{
>>> + if (ofs == 0 && len == nor->params->size)
>>> + return spi_nor_global_block_unlock(nor);
>>
>>
>> Some blocks might not be unlocked because they are permanently
>> locked. Does it make sense to read BPNV of the control register
>> and add a debug message here?
>
> It would, yes. If any block is permanently locked in the unlock_all
> case,
> I'll just print a dbg message and return -EINVAL. Sounds good?
spi_nor_sr_unlock(), atmel_at25fs_unlock() and atmel_global_unprotect()
will return -EIO in case the SR wasn't writable.
-michael
More information about the linux-mtd
mailing list