u-boot.lists.denx.de archive mirror
 help / color / mirror / Atom feed
* [PATCH] imx: imx8mm/imx8mn_beacon: Remove redundant code
@ 2022-02-23 13:50 Adam Ford
  2022-02-26 13:01 ` Fabio Estevam
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Adam Ford @ 2022-02-23 13:50 UTC (permalink / raw)
  To: u-boot; +Cc: sbabic, Adam Ford

The Ethernet controller and PHY use the device tree info to
configure themselves, so it's not necessary to manually do it
in the board file.  This permits the removal of a bunch of headers
as well.

Signed-off-by: Adam Ford <aford173@gmail.com>

diff --git a/board/beacon/imx8mm/imx8mm_beacon.c b/board/beacon/imx8mm/imx8mm_beacon.c
index c228bbf777..204235a3f8 100644
--- a/board/beacon/imx8mm/imx8mm_beacon.c
+++ b/board/beacon/imx8mm/imx8mm_beacon.c
@@ -1,52 +1,13 @@
 // SPDX-License-Identifier: GPL-2.0+
 /*
- * Copyright 2020 Compass Electronics Group, LLC
+ * Copyright 2022 Logic PD, Inc. dba Beacon EmbeddedWorks
  */
 
-#include <common.h>
-#include <miiphy.h>
-#include <netdev.h>
 #include <asm/global_data.h>
 
-#include <asm/arch/clock.h>
-#include <asm/arch/sys_proto.h>
-#include <asm/io.h>
-
 DECLARE_GLOBAL_DATA_PTR;
 
-#if IS_ENABLED(CONFIG_FEC_MXC)
-static int setup_fec(void)
-{
-	struct iomuxc_gpr_base_regs *gpr =
-		(struct iomuxc_gpr_base_regs *)IOMUXC_GPR_BASE_ADDR;
-
-	/* Use 125M anatop REF_CLK1 for ENET1, not from external */
-	clrsetbits_le32(&gpr->gpr[1], 0x2000, 0);
-
-	return 0;
-}
-
-int board_phy_config(struct phy_device *phydev)
-{
-	/* enable rgmii rxc skew and phy mode select to RGMII copper */
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x1f);
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x8);
-
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x00);
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x82ee);
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x05);
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x100);
-
-	if (phydev->drv->config)
-		phydev->drv->config(phydev);
-	return 0;
-}
-#endif
-
 int board_init(void)
 {
-	if (IS_ENABLED(CONFIG_FEC_MXC))
-		setup_fec();
-
 	return 0;
 }
diff --git a/board/beacon/imx8mn/imx8mn_beacon.c b/board/beacon/imx8mn/imx8mn_beacon.c
index 6397dac872..204235a3f8 100644
--- a/board/beacon/imx8mn/imx8mn_beacon.c
+++ b/board/beacon/imx8mn/imx8mn_beacon.c
@@ -1,52 +1,13 @@
 // SPDX-License-Identifier: GPL-2.0+
 /*
- * Copyright 2020 Compass Electronics Group, LLC
+ * Copyright 2022 Logic PD, Inc. dba Beacon EmbeddedWorks
  */
 
-#include <common.h>
-#include <miiphy.h>
-#include <netdev.h>
-
-#include <asm/arch/clock.h>
-#include <asm/arch/sys_proto.h>
 #include <asm/global_data.h>
-#include <asm/io.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
-#if IS_ENABLED(CONFIG_FEC_MXC)
-static int setup_fec(void)
-{
-	struct iomuxc_gpr_base_regs *gpr =
-		(struct iomuxc_gpr_base_regs *)IOMUXC_GPR_BASE_ADDR;
-
-	/* Use 125M anatop REF_CLK1 for ENET1, not from external */
-	clrsetbits_le32(&gpr->gpr[1], 0x2000, 0);
-
-	return 0;
-}
-
-int board_phy_config(struct phy_device *phydev)
-{
-	/* enable rgmii rxc skew and phy mode select to RGMII copper */
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x1f);
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x8);
-
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x00);
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x82ee);
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x05);
-	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x100);
-
-	if (phydev->drv->config)
-		phydev->drv->config(phydev);
-	return 0;
-}
-#endif
-
 int board_init(void)
 {
-	if (IS_ENABLED(CONFIG_FEC_MXC))
-		setup_fec();
-
 	return 0;
 }
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] imx: imx8mm/imx8mn_beacon: Remove redundant code
  2022-02-23 13:50 [PATCH] imx: imx8mm/imx8mn_beacon: Remove redundant code Adam Ford
@ 2022-02-26 13:01 ` Fabio Estevam
  2022-03-21  3:20 ` Peng Fan (OSS)
  2022-04-12 18:42 ` sbabic
  2 siblings, 0 replies; 4+ messages in thread
From: Fabio Estevam @ 2022-02-26 13:01 UTC (permalink / raw)
  To: Adam Ford; +Cc: U-Boot-Denx, Stefano Babic

Hi Adam,

On Wed, Feb 23, 2022 at 10:51 AM Adam Ford <aford173@gmail.com> wrote:
>
> The Ethernet controller and PHY use the device tree info to
> configure themselves, so it's not necessary to manually do it
> in the board file.  This permits the removal of a bunch of headers
> as well.
>
> Signed-off-by: Adam Ford <aford173@gmail.com>

Nice code removal.

Reviewed-by: Fabio Estevam <festevam@denx.de>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] imx: imx8mm/imx8mn_beacon: Remove redundant code
  2022-02-23 13:50 [PATCH] imx: imx8mm/imx8mn_beacon: Remove redundant code Adam Ford
  2022-02-26 13:01 ` Fabio Estevam
@ 2022-03-21  3:20 ` Peng Fan (OSS)
  2022-04-12 18:42 ` sbabic
  2 siblings, 0 replies; 4+ messages in thread
From: Peng Fan (OSS) @ 2022-03-21  3:20 UTC (permalink / raw)
  To: Adam Ford, u-boot; +Cc: sbabic



On 2022/2/23 21:50, Adam Ford wrote:
> The Ethernet controller and PHY use the device tree info to
> configure themselves, so it's not necessary to manually do it
> in the board file.  This permits the removal of a bunch of headers
> as well.
> 
> Signed-off-by: Adam Ford <aford173@gmail.com>

Acked-by: Peng Fan <peng.fan@nxp.com>

> 
> diff --git a/board/beacon/imx8mm/imx8mm_beacon.c b/board/beacon/imx8mm/imx8mm_beacon.c
> index c228bbf777..204235a3f8 100644
> --- a/board/beacon/imx8mm/imx8mm_beacon.c
> +++ b/board/beacon/imx8mm/imx8mm_beacon.c
> @@ -1,52 +1,13 @@
>   // SPDX-License-Identifier: GPL-2.0+
>   /*
> - * Copyright 2020 Compass Electronics Group, LLC
> + * Copyright 2022 Logic PD, Inc. dba Beacon EmbeddedWorks
>    */
>   
> -#include <common.h>
> -#include <miiphy.h>
> -#include <netdev.h>
>   #include <asm/global_data.h>
>   
> -#include <asm/arch/clock.h>
> -#include <asm/arch/sys_proto.h>
> -#include <asm/io.h>
> -
>   DECLARE_GLOBAL_DATA_PTR;
>   
> -#if IS_ENABLED(CONFIG_FEC_MXC)
> -static int setup_fec(void)
> -{
> -	struct iomuxc_gpr_base_regs *gpr =
> -		(struct iomuxc_gpr_base_regs *)IOMUXC_GPR_BASE_ADDR;
> -
> -	/* Use 125M anatop REF_CLK1 for ENET1, not from external */
> -	clrsetbits_le32(&gpr->gpr[1], 0x2000, 0);
> -
> -	return 0;
> -}
> -
> -int board_phy_config(struct phy_device *phydev)
> -{
> -	/* enable rgmii rxc skew and phy mode select to RGMII copper */
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x1f);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x8);
> -
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x00);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x82ee);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x05);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x100);
> -
> -	if (phydev->drv->config)
> -		phydev->drv->config(phydev);
> -	return 0;
> -}
> -#endif
> -
>   int board_init(void)
>   {
> -	if (IS_ENABLED(CONFIG_FEC_MXC))
> -		setup_fec();
> -
>   	return 0;
>   }
> diff --git a/board/beacon/imx8mn/imx8mn_beacon.c b/board/beacon/imx8mn/imx8mn_beacon.c
> index 6397dac872..204235a3f8 100644
> --- a/board/beacon/imx8mn/imx8mn_beacon.c
> +++ b/board/beacon/imx8mn/imx8mn_beacon.c
> @@ -1,52 +1,13 @@
>   // SPDX-License-Identifier: GPL-2.0+
>   /*
> - * Copyright 2020 Compass Electronics Group, LLC
> + * Copyright 2022 Logic PD, Inc. dba Beacon EmbeddedWorks
>    */
>   
> -#include <common.h>
> -#include <miiphy.h>
> -#include <netdev.h>
> -
> -#include <asm/arch/clock.h>
> -#include <asm/arch/sys_proto.h>
>   #include <asm/global_data.h>
> -#include <asm/io.h>
>   
>   DECLARE_GLOBAL_DATA_PTR;
>   
> -#if IS_ENABLED(CONFIG_FEC_MXC)
> -static int setup_fec(void)
> -{
> -	struct iomuxc_gpr_base_regs *gpr =
> -		(struct iomuxc_gpr_base_regs *)IOMUXC_GPR_BASE_ADDR;
> -
> -	/* Use 125M anatop REF_CLK1 for ENET1, not from external */
> -	clrsetbits_le32(&gpr->gpr[1], 0x2000, 0);
> -
> -	return 0;
> -}
> -
> -int board_phy_config(struct phy_device *phydev)
> -{
> -	/* enable rgmii rxc skew and phy mode select to RGMII copper */
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x1f);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x8);
> -
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x00);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x82ee);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x05);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x100);
> -
> -	if (phydev->drv->config)
> -		phydev->drv->config(phydev);
> -	return 0;
> -}
> -#endif
> -
>   int board_init(void)
>   {
> -	if (IS_ENABLED(CONFIG_FEC_MXC))
> -		setup_fec();
> -
>   	return 0;
>   }
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH] imx: imx8mm/imx8mn_beacon: Remove redundant code
  2022-02-23 13:50 [PATCH] imx: imx8mm/imx8mn_beacon: Remove redundant code Adam Ford
  2022-02-26 13:01 ` Fabio Estevam
  2022-03-21  3:20 ` Peng Fan (OSS)
@ 2022-04-12 18:42 ` sbabic
  2 siblings, 0 replies; 4+ messages in thread
From: sbabic @ 2022-04-12 18:42 UTC (permalink / raw)
  To: Adam Ford, u-boot

> The Ethernet controller and PHY use the device tree info to
> configure themselves, so it's not necessary to manually do it
> in the board file.  This permits the removal of a bunch of headers
> as well.
> Signed-off-by: Adam Ford <aford173@gmail.com>
> Reviewed-by: Fabio Estevam <festevam@denx.de>
> Acked-by: Peng Fan <peng.fan@nxp.com>
> diff --git a/board/beacon/imx8mm/imx8mm_beacon.c b/board/beacon/imx8mm/imx8mm_beacon.c
> index c228bbf777..204235a3f8 100644
> --- a/board/beacon/imx8mm/imx8mm_beacon.c
> +++ b/board/beacon/imx8mm/imx8mm_beacon.c
> @@ -1,52 +1,13 @@
>  // SPDX-License-Identifier: GPL-2.0+
>  /*
> - * Copyright 2020 Compass Electronics Group, LLC
> + * Copyright 2022 Logic PD, Inc. dba Beacon EmbeddedWorks
>   */
>  
> -#include <common.h>
> -#include <miiphy.h>
> -#include <netdev.h>
>  #include <asm/global_data.h>
>  
> -#include <asm/arch/clock.h>
> -#include <asm/arch/sys_proto.h>
> -#include <asm/io.h>
> -
>  DECLARE_GLOBAL_DATA_PTR;
>  
> -#if IS_ENABLED(CONFIG_FEC_MXC)
> -static int setup_fec(void)
> -{
> -	struct iomuxc_gpr_base_regs *gpr =
> -		(struct iomuxc_gpr_base_regs *)IOMUXC_GPR_BASE_ADDR;
> -
> -	/* Use 125M anatop REF_CLK1 for ENET1, not from external */
> -	clrsetbits_le32(&gpr->gpr[1], 0x2000, 0);
> -
> -	return 0;
> -}
> -
> -int board_phy_config(struct phy_device *phydev)
> -{
> -	/* enable rgmii rxc skew and phy mode select to RGMII copper */
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x1f);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x8);
> -
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x00);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x82ee);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x05);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x100);
> -
> -	if (phydev->drv->config)
> -		phydev->drv->config(phydev);
> -	return 0;
> -}
> -#endif
> -
>  int board_init(void)
>  {
> -	if (IS_ENABLED(CONFIG_FEC_MXC))
> -		setup_fec();
> -
>  	return 0;
>  }
> diff --git a/board/beacon/imx8mn/imx8mn_beacon.c b/board/beacon/imx8mn/imx8mn_beacon.c
> index 6397dac872..204235a3f8 100644
> --- a/board/beacon/imx8mn/imx8mn_beacon.c
> +++ b/board/beacon/imx8mn/imx8mn_beacon.c
> @@ -1,52 +1,13 @@
>  // SPDX-License-Identifier: GPL-2.0+
>  /*
> - * Copyright 2020 Compass Electronics Group, LLC
> + * Copyright 2022 Logic PD, Inc. dba Beacon EmbeddedWorks
>   */
>  
> -#include <common.h>
> -#include <miiphy.h>
> -#include <netdev.h>
> -
> -#include <asm/arch/clock.h>
> -#include <asm/arch/sys_proto.h>
>  #include <asm/global_data.h>
> -#include <asm/io.h>
>  
>  DECLARE_GLOBAL_DATA_PTR;
>  
> -#if IS_ENABLED(CONFIG_FEC_MXC)
> -static int setup_fec(void)
> -{
> -	struct iomuxc_gpr_base_regs *gpr =
> -		(struct iomuxc_gpr_base_regs *)IOMUXC_GPR_BASE_ADDR;
> -
> -	/* Use 125M anatop REF_CLK1 for ENET1, not from external */
> -	clrsetbits_le32(&gpr->gpr[1], 0x2000, 0);
> -
> -	return 0;
> -}
> -
> -int board_phy_config(struct phy_device *phydev)
> -{
> -	/* enable rgmii rxc skew and phy mode select to RGMII copper */
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x1f);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x8);
> -
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x00);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x82ee);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x05);
> -	phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x100);
> -
> -	if (phydev->drv->config)
> -		phydev->drv->config(phydev);
> -	return 0;
> -}
> -#endif
> -
>  int board_init(void)
>  {
> -	if (IS_ENABLED(CONFIG_FEC_MXC))
> -		setup_fec();
> -
>  	return 0;
>  }
Applied to u-boot-imx, master, thanks !

Best regards,
Stefano Babic

-- 
=====================================================================
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic@denx.de
=====================================================================

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-04-12 18:42 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-23 13:50 [PATCH] imx: imx8mm/imx8mn_beacon: Remove redundant code Adam Ford
2022-02-26 13:01 ` Fabio Estevam
2022-03-21  3:20 ` Peng Fan (OSS)
2022-04-12 18:42 ` sbabic

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).