diff mbox series

[net-next,v3,1/5] net: altera-tse: Initialize the regmap_config struct before using it

Message ID 20230606152501.328789-2-maxime.chevallier@bootlin.com (mailing list archive)
State New, archived
Headers show
Series Followup fixes for the dwmac and altera lynx conversion | expand

Commit Message

Maxime Chevallier June 6, 2023, 3:24 p.m. UTC
The regmap_config needs to be zeroed before using it. This will cause
spurious errors at probe time as config->pad_bits is containing random
uninitialized data.

Fixes: db48abbaa18e ("net: ethernet: altera-tse: Convert to mdio-regmap and use PCS Lynx")
Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
---
V2->V3 : No changes
V1->V2 : No changes

 drivers/net/ethernet/altera/altera_tse_main.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Fijalkowski, Maciej June 6, 2023, 5:16 p.m. UTC | #1
On Tue, Jun 06, 2023 at 05:24:57PM +0200, Maxime Chevallier wrote:
> The regmap_config needs to be zeroed before using it. This will cause
> spurious errors at probe time as config->pad_bits is containing random
> uninitialized data.
> 
> Fixes: db48abbaa18e ("net: ethernet: altera-tse: Convert to mdio-regmap and use PCS Lynx")
> Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
> ---
> V2->V3 : No changes
> V1->V2 : No changes
> 
>  drivers/net/ethernet/altera/altera_tse_main.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/net/ethernet/altera/altera_tse_main.c b/drivers/net/ethernet/altera/altera_tse_main.c
> index d866c0f1b503..df509abcd378 100644
> --- a/drivers/net/ethernet/altera/altera_tse_main.c
> +++ b/drivers/net/ethernet/altera/altera_tse_main.c
> @@ -1255,6 +1255,7 @@ static int altera_tse_probe(struct platform_device *pdev)
>  	if (ret)
>  		goto err_free_netdev;
>  
> +	memset(&pcs_regmap_cfg, 0, sizeof(pcs_regmap_cfg));

i think it would be good to zero out mrc as well - in future someone might
expand this struct and you will have the same bug as you're fixing here.

>  	/* SGMII PCS address space. The location can vary depending on how the
>  	 * IP is integrated. We can have a resource dedicated to it at a specific
>  	 * address space, but if it's not the case, we fallback to the mdiophy0
> -- 
> 2.40.1
> 
>
diff mbox series

Patch

diff --git a/drivers/net/ethernet/altera/altera_tse_main.c b/drivers/net/ethernet/altera/altera_tse_main.c
index d866c0f1b503..df509abcd378 100644
--- a/drivers/net/ethernet/altera/altera_tse_main.c
+++ b/drivers/net/ethernet/altera/altera_tse_main.c
@@ -1255,6 +1255,7 @@  static int altera_tse_probe(struct platform_device *pdev)
 	if (ret)
 		goto err_free_netdev;
 
+	memset(&pcs_regmap_cfg, 0, sizeof(pcs_regmap_cfg));
 	/* SGMII PCS address space. The location can vary depending on how the
 	 * IP is integrated. We can have a resource dedicated to it at a specific
 	 * address space, but if it's not the case, we fallback to the mdiophy0