Re: [PATCH rtems-libbsd] rtembsd: Use config.inc to control ZynqMP ethernet

2021-06-30 Thread Chris Johns
Looks good and thanks.

Chris

On 1/7/21 6:11 am, Kinsey Moore wrote:
> This alters the selection of the 4 Cadence GEM interfaces on the Zynq
> Ultrascale+ MPSoC BSP to be provided by config.inc instead of being
> provided by options in the RTEMS BSP itself since those options appear
> to be dead code when not used in conjunction with LibBSD.
> ---
>  rtemsbsd/include/bsp/nexus-devices.h | 9 +
>  testsuite/include/rtems/bsd/test/network-config.h.in | 8 
>  waf_libbsd.py| 4 +++-
>  3 files changed, 16 insertions(+), 5 deletions(-)
> 
> diff --git a/rtemsbsd/include/bsp/nexus-devices.h 
> b/rtemsbsd/include/bsp/nexus-devices.h
> index 5c1bab42..cbb3f48b 100644
> --- a/rtemsbsd/include/bsp/nexus-devices.h
> +++ b/rtemsbsd/include/bsp/nexus-devices.h
> @@ -38,6 +38,7 @@
>  
>  #include 
>  #include 
> +#include 
>  #include 
>  
>  
> @@ -115,16 +116,16 @@ RTEMS_BSD_DRIVER_XILINX_ZYNQMP_SLCR;
>   * CGEM3 is used for LibBSD because all Zynq Ultrascale+ MPSoC dev boards 
> treat
>   * the highest-mapped CGEM as the primary interface.
>   */
> -#if BSP_XILINX_ZYNQMP_USE_CGEM0
> +#if NET_CFG_ZYNQMP_USE_CGEM0 == '1'
>  RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM0(ZYNQMP_IRQ_ETHERNET_0);
>  #endif
> -#if BSP_XILINX_ZYNQMP_USE_CGEM1
> +#if NET_CFG_ZYNQMP_USE_CGEM1 == '1'
>  RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM1(ZYNQMP_IRQ_ETHERNET_1);
>  #endif
> -#if BSP_XILINX_ZYNQMP_USE_CGEM2
> +#if NET_CFG_ZYNQMP_USE_CGEM2 == '1'
>  RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM2(ZYNQMP_IRQ_ETHERNET_2);
>  #endif
> -#if BSP_XILINX_ZYNQMP_USE_CGEM3
> +#if NET_CFG_ZYNQMP_USE_CGEM3 == '1'
>  RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM3(ZYNQMP_IRQ_ETHERNET_3);
>  #endif
>  RTEMS_BSD_DRIVER_E1000PHY;
> diff --git a/testsuite/include/rtems/bsd/test/network-config.h.in 
> b/testsuite/include/rtems/bsd/test/network-config.h.in
> index 39bb5388..da316e15 100755
> --- a/testsuite/include/rtems/bsd/test/network-config.h.in
> +++ b/testsuite/include/rtems/bsd/test/network-config.h.in
> @@ -64,4 +64,12 @@
>  
>  #define NET_CFG_GATEWAY_IP "@NET_CFG_GATEWAY_IP@"
>  
> +#define NET_CFG_ZYNQMP_USE_CGEM0 '@NET_CFG_ZYNQMP_USE_CGEM0@'
> +
> +#define NET_CFG_ZYNQMP_USE_CGEM1 '@NET_CFG_ZYNQMP_USE_CGEM1@'
> +
> +#define NET_CFG_ZYNQMP_USE_CGEM2 '@NET_CFG_ZYNQMP_USE_CGEM2@'
> +
> +#define NET_CFG_ZYNQMP_USE_CGEM3 '@NET_CFG_ZYNQMP_USE_CGEM3@'
> +
>  #endif /* _RTEMS_BSD_TEST_NETWORK_CONFIG_H_ */
> diff --git a/waf_libbsd.py b/waf_libbsd.py
> index e7222a03..bb4182e3 100644
> --- a/waf_libbsd.py
> +++ b/waf_libbsd.py
> @@ -289,7 +289,9 @@ class Builder(builder.ModuleManager):
>(bld.env.NET_CONFIG))
>  tags = [
>  'NET_CFG_INTERFACE_0', 'NET_CFG_SELF_IP', 'NET_CFG_NETMASK',
> -'NET_CFG_PEER_IP', 'NET_CFG_GATEWAY_IP'
> +'NET_CFG_PEER_IP', 'NET_CFG_GATEWAY_IP',
> +'NET_CFG_ZYNQMP_USE_CGEM0', 'NET_CFG_ZYNQMP_USE_CGEM1',
> +'NET_CFG_ZYNQMP_USE_CGEM2', 'NET_CFG_ZYNQMP_USE_CGEM3'
>  ]
>  try:
>  net_cfg_lines = open(bld.env.NET_CONFIG).readlines()
> 
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH rtems-libbsd] rtembsd: Use config.inc to control ZynqMP ethernet

2021-06-30 Thread Kinsey Moore
This alters the selection of the 4 Cadence GEM interfaces on the Zynq
Ultrascale+ MPSoC BSP to be provided by config.inc instead of being
provided by options in the RTEMS BSP itself since those options appear
to be dead code when not used in conjunction with LibBSD.
---
 rtemsbsd/include/bsp/nexus-devices.h | 9 +
 testsuite/include/rtems/bsd/test/network-config.h.in | 8 
 waf_libbsd.py| 4 +++-
 3 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/rtemsbsd/include/bsp/nexus-devices.h 
b/rtemsbsd/include/bsp/nexus-devices.h
index 5c1bab42..cbb3f48b 100644
--- a/rtemsbsd/include/bsp/nexus-devices.h
+++ b/rtemsbsd/include/bsp/nexus-devices.h
@@ -38,6 +38,7 @@
 
 #include 
 #include 
+#include 
 #include 
 
 
@@ -115,16 +116,16 @@ RTEMS_BSD_DRIVER_XILINX_ZYNQMP_SLCR;
  * CGEM3 is used for LibBSD because all Zynq Ultrascale+ MPSoC dev boards treat
  * the highest-mapped CGEM as the primary interface.
  */
-#if BSP_XILINX_ZYNQMP_USE_CGEM0
+#if NET_CFG_ZYNQMP_USE_CGEM0 == '1'
 RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM0(ZYNQMP_IRQ_ETHERNET_0);
 #endif
-#if BSP_XILINX_ZYNQMP_USE_CGEM1
+#if NET_CFG_ZYNQMP_USE_CGEM1 == '1'
 RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM1(ZYNQMP_IRQ_ETHERNET_1);
 #endif
-#if BSP_XILINX_ZYNQMP_USE_CGEM2
+#if NET_CFG_ZYNQMP_USE_CGEM2 == '1'
 RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM2(ZYNQMP_IRQ_ETHERNET_2);
 #endif
-#if BSP_XILINX_ZYNQMP_USE_CGEM3
+#if NET_CFG_ZYNQMP_USE_CGEM3 == '1'
 RTEMS_BSD_DRIVER_XILINX_ZYNQMP_CGEM3(ZYNQMP_IRQ_ETHERNET_3);
 #endif
 RTEMS_BSD_DRIVER_E1000PHY;
diff --git a/testsuite/include/rtems/bsd/test/network-config.h.in 
b/testsuite/include/rtems/bsd/test/network-config.h.in
index 39bb5388..da316e15 100755
--- a/testsuite/include/rtems/bsd/test/network-config.h.in
+++ b/testsuite/include/rtems/bsd/test/network-config.h.in
@@ -64,4 +64,12 @@
 
 #define NET_CFG_GATEWAY_IP "@NET_CFG_GATEWAY_IP@"
 
+#define NET_CFG_ZYNQMP_USE_CGEM0 '@NET_CFG_ZYNQMP_USE_CGEM0@'
+
+#define NET_CFG_ZYNQMP_USE_CGEM1 '@NET_CFG_ZYNQMP_USE_CGEM1@'
+
+#define NET_CFG_ZYNQMP_USE_CGEM2 '@NET_CFG_ZYNQMP_USE_CGEM2@'
+
+#define NET_CFG_ZYNQMP_USE_CGEM3 '@NET_CFG_ZYNQMP_USE_CGEM3@'
+
 #endif /* _RTEMS_BSD_TEST_NETWORK_CONFIG_H_ */
diff --git a/waf_libbsd.py b/waf_libbsd.py
index e7222a03..bb4182e3 100644
--- a/waf_libbsd.py
+++ b/waf_libbsd.py
@@ -289,7 +289,9 @@ class Builder(builder.ModuleManager):
   (bld.env.NET_CONFIG))
 tags = [
 'NET_CFG_INTERFACE_0', 'NET_CFG_SELF_IP', 'NET_CFG_NETMASK',
-'NET_CFG_PEER_IP', 'NET_CFG_GATEWAY_IP'
+'NET_CFG_PEER_IP', 'NET_CFG_GATEWAY_IP',
+'NET_CFG_ZYNQMP_USE_CGEM0', 'NET_CFG_ZYNQMP_USE_CGEM1',
+'NET_CFG_ZYNQMP_USE_CGEM2', 'NET_CFG_ZYNQMP_USE_CGEM3'
 ]
 try:
 net_cfg_lines = open(bld.env.NET_CONFIG).readlines()
-- 
2.20.1

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel