[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