[Intel-wired-lan] [PATCH] ice: require PTP clock for building

Keller, Jacob E jacob.e.keller at intel.com
Mon Sep 25 21:49:01 UTC 2023



> -----Original Message-----
> From: Arnd Bergmann <arnd at kernel.org>
> Sent: Monday, September 25, 2023 8:55 AM
> To: Brandeburg, Jesse <jesse.brandeburg at intel.com>; Nguyen, Anthony L
> <anthony.l.nguyen at intel.com>
> Cc: Arnd Bergmann <arnd at arndb.de>; David S. Miller <davem at davemloft.net>;
> Eric Dumazet <edumazet at google.com>; Jakub Kicinski <kuba at kernel.org>; Paolo
> Abeni <pabeni at redhat.com>; Kubalewski, Arkadiusz
> <arkadiusz.kubalewski at intel.com>; Michalik, Michal
> <michal.michalik at intel.com>; Jiri Pirko <jiri at resnulli.us>; Keller, Jacob E
> <jacob.e.keller at intel.com>; Hay, Joshua A <joshua.a.hay at intel.com>; Vadim
> Fedorenko <vadim.fedorenko at linux.dev>; intel-wired-lan at lists.osuosl.org;
> netdev at vger.kernel.org; linux-kernel at vger.kernel.org
> Subject: [PATCH] ice: require PTP clock for building
> 
> From: Arnd Bergmann <arnd at arndb.de>
> 
> A previous fix added PTP as an optional dependency, which was correct as
> of commit 87758511075ec ("igc: fix build errors for PTP"), but this
> has recently changed with the PTP code getting more deeply integrated
> into the ICE driver.
> 
> Trying to build ICE when PTP is disabled results in this internal link failure
> as the local functions are left out of the driver:
> 
> ERROR: modpost: "ice_is_clock_mux_present_e810t"
> [drivers/net/ethernet/intel/ice/ice.ko] undefined!
> ERROR: modpost: "ice_is_phy_rclk_present"
> [drivers/net/ethernet/intel/ice/ice.ko] undefined!
> ERROR: modpost: "ice_cgu_get_pin_name" [drivers/net/ethernet/intel/ice/ice.ko]
> undefined!
> ERROR: modpost: "ice_get_cgu_state" [drivers/net/ethernet/intel/ice/ice.ko]
> undefined!
> ERROR: modpost: "ice_is_cgu_present" [drivers/net/ethernet/intel/ice/ice.ko]
> undefined!
> ERROR: modpost: "ice_get_cgu_rclk_pin_info"
> [drivers/net/ethernet/intel/ice/ice.ko] undefined!
> ERROR: modpost: "ice_cgu_get_pin_type" [drivers/net/ethernet/intel/ice/ice.ko]
> undefined!
> ERROR: modpost: "ice_cgu_get_pin_freq_supp"
> [drivers/net/ethernet/intel/ice/ice.ko] undefined!
> 
> I tried rearranging the code to allow building it again, but this was getting
> too complicated for an outsider, so just enforce the dependency to fix randconfig
> builds again, until someone wants to clean this up again.
> 
> In practice, any configuration that includes this driver is also going to
> want PTP clocks anyway.
> 
> Fixes: 8a3a565ff210a ("ice: add admin commands to access cgu configuration")
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>


There are a couple of other fixes already posted including the one I posted last week:

https://lore.kernel.org/netdev/20230921000633.1238097-1-jacob.e.keller@intel.com/

My method keeps the PTP dependency optional and instead disables the features that required PTP.

Thanks,
Jake

> ---
>  drivers/net/ethernet/intel/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/intel/Kconfig b/drivers/net/ethernet/intel/Kconfig
> index e6684f3cc0ce0..c452ecf89b984 100644
> --- a/drivers/net/ethernet/intel/Kconfig
> +++ b/drivers/net/ethernet/intel/Kconfig
> @@ -278,7 +278,7 @@ config ICE
>  	tristate "Intel(R) Ethernet Connection E800 Series Support"
>  	default n
>  	depends on PCI_MSI
> -	depends on PTP_1588_CLOCK_OPTIONAL
> +	depends on PTP_1588_CLOCK
>  	depends on GNSS || GNSS = n
>  	select AUXILIARY_BUS
>  	select DIMLIB
> --
> 2.39.2
> 



More information about the Intel-wired-lan mailing list