[PATCH] net/fsl_pq_mdio: fix handling of TBIPA register

Scott Wood scottwood at freescale.com
Wed Aug 7 09:10:55 EST 2013


On Thu, 2013-08-01 at 19:49 +0200, Lutz Jaenicke wrote:
> The TBIPA register is part of gianfar's full register set. When starting
> from the MII registers, the start address of struct gfar needs to
> be determined via container_of().
> Experienced with mpc8313 and "fsl,gianfar-mdio" device tree entries.
> 
> Signed-off-by: Lutz Jaenicke <ljaenicke at innominate.com>
> ---
>  drivers/net/ethernet/freescale/fsl_pq_mdio.c |    3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/freescale/fsl_pq_mdio.c b/drivers/net/ethernet/freescale/fsl_pq_mdio.c
> index c93a056..9485fdb 100644
> --- a/drivers/net/ethernet/freescale/fsl_pq_mdio.c
> +++ b/drivers/net/ethernet/freescale/fsl_pq_mdio.c
> @@ -193,7 +193,8 @@ static int fsl_pq_mdio_reset(struct mii_bus *bus)
>   */
>  static uint32_t __iomem *get_gfar_tbipa(void __iomem *p)
>  {
> -	struct gfar __iomem *enet_regs = p;
> +	struct gfar __iomem *enet_regs = 
> +		container_of(p, struct gfar, gfar_mii_regs);
>  
>  	return &enet_regs->tbipa;
>  }

Please send this to the netdev list/maintainer.

-Scott





More information about the Linuxppc-dev mailing list