diff mbox

[v3,1/9] mtd: spi-nor: improve macronix_quad_enable()

Message ID c63d3715903e640c7ea5328614bd4468688b761d.1477325128.git.cyrille.pitchen@atmel.com
State Superseded
Headers show

Commit Message

Cyrille Pitchen Oct. 24, 2016, 4:34 p.m. UTC
The patch checks whether the Quad Enable bit is already set in the Status
Register. If so, the function exits immediately with a successful return
code. Otherwise, a message is now printed telling we're setting the
non-volatile bit.

Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
---
 drivers/mtd/spi-nor/spi-nor.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Marek Vasut Oct. 24, 2016, 10 p.m. UTC | #1
On 10/24/2016 06:34 PM, Cyrille Pitchen wrote:
> The patch checks whether the Quad Enable bit is already set in the Status
> Register. If so, the function exits immediately with a successful return
> code. Otherwise, a message is now printed telling we're setting the
> non-volatile bit.
> 
> Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
> Reviewed-by: Jagan Teki <jagan@openedev.com>
> ---
>  drivers/mtd/spi-nor/spi-nor.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
> index d0fc165d7d66..5c87b2d99507 100644
> --- a/drivers/mtd/spi-nor/spi-nor.c
> +++ b/drivers/mtd/spi-nor/spi-nor.c
> @@ -1211,6 +1211,11 @@ static int macronix_quad_enable(struct spi_nor *nor)
>  	val = read_sr(nor);
>  	if (val < 0)
>  		return val;
> +	if (val & SR_QUAD_EN_MX)
> +		return 0;
> +
> +	/* Update the Quad Enable bit. */
> +	dev_info(nor->dev, "setting Macronix Quad Enable (non-volatile) bit\n");

Should probably be dev_dbg(), since this is just churn in the kernel
log. The user doesn't care and the developer can just up the debug level
or add his own printk .

>  	write_enable(nor);
>  
>  	write_sr(nor, val | SR_QUAD_EN_MX);
>
Cyrille Pitchen Oct. 25, 2016, 8:52 a.m. UTC | #2
Hi Marek,

Le 25/10/2016 à 00:00, Marek Vasut a écrit :
> On 10/24/2016 06:34 PM, Cyrille Pitchen wrote:
>> The patch checks whether the Quad Enable bit is already set in the Status
>> Register. If so, the function exits immediately with a successful return
>> code. Otherwise, a message is now printed telling we're setting the
>> non-volatile bit.
>>
>> Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
>> Reviewed-by: Jagan Teki <jagan@openedev.com>
>> ---
>>  drivers/mtd/spi-nor/spi-nor.c | 5 +++++
>>  1 file changed, 5 insertions(+)
>>
>> diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
>> index d0fc165d7d66..5c87b2d99507 100644
>> --- a/drivers/mtd/spi-nor/spi-nor.c
>> +++ b/drivers/mtd/spi-nor/spi-nor.c
>> @@ -1211,6 +1211,11 @@ static int macronix_quad_enable(struct spi_nor *nor)
>>  	val = read_sr(nor);
>>  	if (val < 0)
>>  		return val;
>> +	if (val & SR_QUAD_EN_MX)
>> +		return 0;
>> +
>> +	/* Update the Quad Enable bit. */
>> +	dev_info(nor->dev, "setting Macronix Quad Enable (non-volatile) bit\n");
> 
> Should probably be dev_dbg(), since this is just churn in the kernel
> log. The user doesn't care and the developer can just up the debug level
> or add his own printk .
>

The Quad Enable bit is non-volatile so this trace should be printed only once
but I'm perfectly fine with using dev_dbg(). I'll change it in the next version.

Best regards,

Cyrille
 
>>  	write_enable(nor);
>>  
>>  	write_sr(nor, val | SR_QUAD_EN_MX);
>>
> 
>
Marek Vasut Oct. 25, 2016, 2:49 p.m. UTC | #3
On 10/25/2016 10:52 AM, Cyrille Pitchen wrote:
> Hi Marek,
> 
> Le 25/10/2016 à 00:00, Marek Vasut a écrit :
>> On 10/24/2016 06:34 PM, Cyrille Pitchen wrote:
>>> The patch checks whether the Quad Enable bit is already set in the Status
>>> Register. If so, the function exits immediately with a successful return
>>> code. Otherwise, a message is now printed telling we're setting the
>>> non-volatile bit.
>>>
>>> Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
>>> Reviewed-by: Jagan Teki <jagan@openedev.com>
>>> ---
>>>  drivers/mtd/spi-nor/spi-nor.c | 5 +++++
>>>  1 file changed, 5 insertions(+)
>>>
>>> diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
>>> index d0fc165d7d66..5c87b2d99507 100644
>>> --- a/drivers/mtd/spi-nor/spi-nor.c
>>> +++ b/drivers/mtd/spi-nor/spi-nor.c
>>> @@ -1211,6 +1211,11 @@ static int macronix_quad_enable(struct spi_nor *nor)
>>>  	val = read_sr(nor);
>>>  	if (val < 0)
>>>  		return val;
>>> +	if (val & SR_QUAD_EN_MX)
>>> +		return 0;
>>> +
>>> +	/* Update the Quad Enable bit. */
>>> +	dev_info(nor->dev, "setting Macronix Quad Enable (non-volatile) bit\n");
>>
>> Should probably be dev_dbg(), since this is just churn in the kernel
>> log. The user doesn't care and the developer can just up the debug level
>> or add his own printk .
>>
> 
> The Quad Enable bit is non-volatile so this trace should be printed only once
> but I'm perfectly fine with using dev_dbg(). I'll change it in the next version.

I get it, but what's the value of it ? Who will make use of this
information being in the kernel log? The kernel is already chatty enough :)
diff mbox

Patch

diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
index d0fc165d7d66..5c87b2d99507 100644
--- a/drivers/mtd/spi-nor/spi-nor.c
+++ b/drivers/mtd/spi-nor/spi-nor.c
@@ -1211,6 +1211,11 @@  static int macronix_quad_enable(struct spi_nor *nor)
 	val = read_sr(nor);
 	if (val < 0)
 		return val;
+	if (val & SR_QUAD_EN_MX)
+		return 0;
+
+	/* Update the Quad Enable bit. */
+	dev_info(nor->dev, "setting Macronix Quad Enable (non-volatile) bit\n");
 	write_enable(nor);
 
 	write_sr(nor, val | SR_QUAD_EN_MX);