All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pratyush Yadav <p.yadav@ti.com>
To: u-boot@lists.denx.de
Subject: [PATCH 03/11] pinctrl: single: fix debug messages formatting
Date: Mon, 25 Jan 2021 22:39:21 +0530	[thread overview]
Message-ID: <20210125170919.nbmbfi37cpaybt3w@ti.com> (raw)
In-Reply-To: <20210123182711.7177-4-dariobin@libero.it>

Hi Dario,

On 23/01/21 07:27PM, Dario Binacchi wrote:
> The printf '%pa' format specifier appends the '0x' prefix to the
> displayed address. Furthermore, the offset variable is displayed with
> the '%x' format specifier instead of '%pa'.

I agree with Simon that the commit message does not explain why this 
change is needed.
 
> Signed-off-by: Dario Binacchi <dariobin@libero.it>
> ---
> 
>  drivers/pinctrl/pinctrl-single.c | 28 ++++++++++++++++------------
>  1 file changed, 16 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/pinctrl/pinctrl-single.c b/drivers/pinctrl/pinctrl-single.c
> index 49ed15211d..cec00e289c 100644
> --- a/drivers/pinctrl/pinctrl-single.c
> +++ b/drivers/pinctrl/pinctrl-single.c
> @@ -77,15 +77,17 @@ static int single_configure_pins(struct udevice *dev,
>  	struct single_pdata *pdata = dev_get_plat(dev);
>  	int n, count = size / sizeof(struct single_fdt_pin_cfg);
>  	phys_addr_t reg;
> -	u32 val;
> +	u32 offset, val;
>  
>  	for (n = 0; n < count; n++, pins++) {
> -		reg = fdt32_to_cpu(pins->reg);
> -		if ((reg < 0) || (reg > pdata->offset)) {
> -			dev_dbg(dev, "  invalid register offset 0x%pa\n", &reg);
> +		offset = fdt32_to_cpu(pins->reg);
> +		if (offset < 0 || offset > pdata->offset) {
> +			dev_dbg(dev, "  invalid register offset 0x%x\n",
> +				offset);

You are not just fixing "debug messages formatting" here. You have made 
other changes to the structure of the code here. While these changes 
might all be correct, they don't belong in a commit that claims to fix 
message formatting.

For example, this dev_dbg() statement in the pre-image prints "&reg" as 
the offset. This would be the address of the variable reg on the stack. 
This looks like it is a bug. The offset is stored in "reg", not in 
"&reg". The post-image fixes this bug. A person reading this diff might 
not look so closely at this because you only claim to change formatting. 
And some important discussion/context on this bug might be skipped over.

Please re-word the commit subject and message to clearly explain why you 
are making these structural changes and separate them from the 
formatting changes (which also warrant an explanation on their own).

>  			continue;
>  		}
> -		reg += pdata->base;
> +
> +		reg = pdata->base + offset;
>  		val = fdt32_to_cpu(pins->val) & pdata->mask;
>  		switch (pdata->width) {
>  		case 16:
> @@ -99,7 +101,7 @@ static int single_configure_pins(struct udevice *dev,
>  				 pdata->width);
>  			continue;
>  		}
> -		dev_dbg(dev, "  reg/val 0x%pa/0x%08x\n", &reg, val);
> +		dev_dbg(dev, "  reg/val %pa/0x%08x\n", &reg, val);

In a similar fashion as above, shouldn't "&reg" be replaced with "reg"? 
I am not too familiar with the code to say for sure. Same for the 
changes below.

>  	}
>  	return 0;
>  }
> @@ -111,15 +113,17 @@ static int single_configure_bits(struct udevice *dev,
>  	struct single_pdata *pdata = dev_get_plat(dev);
>  	int n, count = size / sizeof(struct single_fdt_bits_cfg);
>  	phys_addr_t reg;
> -	u32 val, mask;
> +	u32 offset, val, mask;
>  
>  	for (n = 0; n < count; n++, pins++) {
> -		reg = fdt32_to_cpu(pins->reg);
> -		if ((reg < 0) || (reg > pdata->offset)) {
> -			dev_dbg(dev, "  invalid register offset 0x%pa\n", &reg);
> +		offset = fdt32_to_cpu(pins->reg);
> +		if (offset < 0 || offset > pdata->offset) {
> +			dev_dbg(dev, "  invalid register offset 0x%x\n",
> +				offset);
>  			continue;
>  		}
> -		reg += pdata->base;
> +
> +		reg = pdata->base + offset;
>  
>  		mask = fdt32_to_cpu(pins->mask);
>  		val = fdt32_to_cpu(pins->val) & mask;
> @@ -136,7 +140,7 @@ static int single_configure_bits(struct udevice *dev,
>  				 pdata->width);
>  			continue;
>  		}
> -		dev_dbg(dev, "  reg/val 0x%pa/0x%08x\n", &reg, val);
> +		dev_dbg(dev, "  reg/val %pa/0x%08x\n", &reg, val);
>  	}
>  	return 0;
>  }
> -- 
> 2.17.1
> 

-- 
Regards,
Pratyush Yadav
Texas Instruments India

  parent reply	other threads:[~2021-01-25 17:09 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-23 18:27 [PATCH 00/11] Add support for pinmux status command on beaglebone Dario Binacchi
2021-01-23 18:27 ` [PATCH 01/11] pinctrl: single: fix format of structure documentation Dario Binacchi
2021-01-24  2:03   ` Simon Glass
2021-01-23 18:27 ` [PATCH 02/11] pinctrl: single: fix the loop counter variable type Dario Binacchi
2021-01-24  2:03   ` Simon Glass
2021-01-25 16:53   ` Pratyush Yadav
2021-01-23 18:27 ` [PATCH 03/11] pinctrl: single: fix debug messages formatting Dario Binacchi
2021-01-24  2:03   ` Simon Glass
2021-01-25 17:09   ` Pratyush Yadav [this message]
2021-01-26 11:20     ` Dario Binacchi
2021-01-27  9:29       ` Pratyush Yadav
2021-01-23 18:27 ` [PATCH 04/11] pinctrl: single: get register area size by device API Dario Binacchi
2021-01-24  2:03   ` Simon Glass
2021-01-23 18:27 ` [PATCH 05/11] pinctrl: single: check "register-width" DT property Dario Binacchi
2021-01-24  2:03   ` Simon Glass
2021-01-23 18:27 ` [PATCH 06/11] pinctrl: single: change function mask default value Dario Binacchi
2021-01-23 18:27 ` [PATCH 07/11] pinctrl: single: use function pointer for register access Dario Binacchi
2021-01-24  2:03   ` Simon Glass
2021-01-24 16:50     ` Dario Binacchi
2021-01-24 18:00       ` Simon Glass
2021-01-23 18:27 ` [PATCH 08/11] pinctrl: single: add get_pins_count operation Dario Binacchi
2021-01-24  2:03   ` Simon Glass
2021-01-23 18:27 ` [PATCH 09/11] pinctrl: single: add get_pin_name operation Dario Binacchi
2021-01-24  2:03   ` Simon Glass
2021-01-23 18:27 ` [PATCH 10/11] pinctrl: single: add get_pin_muxing operation Dario Binacchi
2021-01-24  2:03   ` Simon Glass
2021-01-26 11:28     ` Dario Binacchi
2021-02-01 20:38       ` Simon Glass
2021-01-23 18:27 ` [PATCH 11/11] test: pinmux: add test for 'pinctrl-single' driver Dario Binacchi
2021-01-24  2:03   ` Simon Glass

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210125170919.nbmbfi37cpaybt3w@ti.com \
    --to=p.yadav@ti.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.