diff mbox series

[23/30] net: eepro100: Introduce device private data

Message ID 20200523163837.407592-23-marek.vasut+renesas@gmail.com
State New
Headers show
Series [01/30] net: eepro100: Remove EEPRO100_SROM_WRITE | expand

Commit Message

Marek Vasut May 23, 2020, 4:38 p.m. UTC
Signed-off-by: Marek Vasut <marek.vasut+renesas at gmail.com>
---
 drivers/net/eepro100.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

Comments

Ramon Fried May 23, 2020, 5:21 p.m. UTC | #1
On Sat, May 23, 2020 at 7:44 PM Marek Vasut <marek.vasut at gmail.com> wrote:
>
> Signed-off-by: Marek Vasut <marek.vasut+renesas at gmail.com>
> ---
>  drivers/net/eepro100.c | 12 +++++++++---
>  1 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/net/eepro100.c b/drivers/net/eepro100.c
> index 532d7aa649..2c25307002 100644
> --- a/drivers/net/eepro100.c
> +++ b/drivers/net/eepro100.c
> @@ -201,6 +201,10 @@ static const char i82558_config_cmd[] = {
>         0x31, 0x05,
>  };
>
> +struct eepro100_priv {
> +       struct eth_device       dev;
> +};
> +
>  #if defined(CONFIG_E500)
>  #define bus_to_phys(dev, a)    (a)
>  #define phys_to_bus(dev, a)    (a)
> @@ -751,6 +755,7 @@ done:
>
>  int eepro100_initialize(bd_t *bis)
>  {
> +       struct eepro100_priv *priv;
>         struct eth_device *dev;
>         int card_number = 0;
>         u32 iobase, status;
> @@ -785,11 +790,12 @@ int eepro100_initialize(bd_t *bis)
>                         continue;
>                 }
>
> -               dev = calloc(1, sizeof(*dev));
> -               if (!dev) {
> +               priv = calloc(1, sizeof(*priv));
> +               if (!priv) {
>                         printf("eepro100: Can not allocate memory\n");
>                         break;
>                 }
> +               dev = &priv->dev;
>
>                 sprintf(dev->name, "i82559#%d", card_number);
>                 dev->priv = (void *)devno; /* this have to come before bus_to_phys() */
> @@ -804,7 +810,7 @@ int eepro100_initialize(bd_t *bis)
>                 ret = eepro100_initialize_mii(dev);
>                 if (ret) {
>                         eth_unregister(dev);
> -                       free(dev);
> +                       free(priv);
>                         return ret;
>                 }
>
> --
> 2.25.1
>
Reviewed-By: Ramon Fried <rfried.dev at gmail.com>
diff mbox series

Patch

diff --git a/drivers/net/eepro100.c b/drivers/net/eepro100.c
index 532d7aa649..2c25307002 100644
--- a/drivers/net/eepro100.c
+++ b/drivers/net/eepro100.c
@@ -201,6 +201,10 @@  static const char i82558_config_cmd[] = {
 	0x31, 0x05,
 };
 
+struct eepro100_priv {
+	struct eth_device	dev;
+};
+
 #if defined(CONFIG_E500)
 #define bus_to_phys(dev, a)	(a)
 #define phys_to_bus(dev, a)	(a)
@@ -751,6 +755,7 @@  done:
 
 int eepro100_initialize(bd_t *bis)
 {
+	struct eepro100_priv *priv;
 	struct eth_device *dev;
 	int card_number = 0;
 	u32 iobase, status;
@@ -785,11 +790,12 @@  int eepro100_initialize(bd_t *bis)
 			continue;
 		}
 
-		dev = calloc(1, sizeof(*dev));
-		if (!dev) {
+		priv = calloc(1, sizeof(*priv));
+		if (!priv) {
 			printf("eepro100: Can not allocate memory\n");
 			break;
 		}
+		dev = &priv->dev;
 
 		sprintf(dev->name, "i82559#%d", card_number);
 		dev->priv = (void *)devno; /* this have to come before bus_to_phys() */
@@ -804,7 +810,7 @@  int eepro100_initialize(bd_t *bis)
 		ret = eepro100_initialize_mii(dev);
 		if (ret) {
 			eth_unregister(dev);
-			free(dev);
+			free(priv);
 			return ret;
 		}