* Re: [PATCH] ice: require PTP clock for building
2023-09-25 15:55 [PATCH] ice: require PTP clock for building Arnd Bergmann
@ 2023-09-25 16:59 ` Tony Nguyen
2023-09-25 21:49 ` Keller, Jacob E
1 sibling, 0 replies; 4+ messages in thread
From: Tony Nguyen @ 2023-09-25 16:59 UTC (permalink / raw)
To: Arnd Bergmann, Jesse Brandeburg
Cc: Arnd Bergmann, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Arkadiusz Kubalewski, Michal Michalik, Jiri Pirko,
Jacob Keller, Joshua Hay, Vadim Fedorenko, intel-wired-lan,
netdev, linux-kernel
On 9/25/2023 8:55 AM, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@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.
Hi Arnd,
There's a pending patch to netdev that does this [1].
Thanks,
Tony
> 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@arndb.de>
[1]
https://lore.kernel.org/netdev/20230921000633.1238097-1-jacob.e.keller@intel.com/
^ permalink raw reply [flat|nested] 4+ messages in thread* RE: [PATCH] ice: require PTP clock for building
2023-09-25 15:55 [PATCH] ice: require PTP clock for building Arnd Bergmann
2023-09-25 16:59 ` Tony Nguyen
@ 2023-09-25 21:49 ` Keller, Jacob E
2023-09-26 5:30 ` Arnd Bergmann
1 sibling, 1 reply; 4+ messages in thread
From: Keller, Jacob E @ 2023-09-25 21:49 UTC (permalink / raw)
To: Arnd Bergmann, Brandeburg, Jesse, Nguyen, Anthony L
Cc: Arnd Bergmann, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Kubalewski, Arkadiusz, Michalik, Michal, Jiri Pirko,
Hay, Joshua A, Vadim Fedorenko, intel-wired-lan@lists.osuosl.org,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org
> -----Original Message-----
> From: Arnd Bergmann <arnd@kernel.org>
> Sent: Monday, September 25, 2023 8:55 AM
> To: Brandeburg, Jesse <jesse.brandeburg@intel.com>; Nguyen, Anthony L
> <anthony.l.nguyen@intel.com>
> Cc: Arnd Bergmann <arnd@arndb.de>; David S. Miller <davem@davemloft.net>;
> Eric Dumazet <edumazet@google.com>; Jakub Kicinski <kuba@kernel.org>; Paolo
> Abeni <pabeni@redhat.com>; Kubalewski, Arkadiusz
> <arkadiusz.kubalewski@intel.com>; Michalik, Michal
> <michal.michalik@intel.com>; Jiri Pirko <jiri@resnulli.us>; Keller, Jacob E
> <jacob.e.keller@intel.com>; Hay, Joshua A <joshua.a.hay@intel.com>; Vadim
> Fedorenko <vadim.fedorenko@linux.dev>; intel-wired-lan@lists.osuosl.org;
> netdev@vger.kernel.org; linux-kernel@vger.kernel.org
> Subject: [PATCH] ice: require PTP clock for building
>
> From: Arnd Bergmann <arnd@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@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
>
^ permalink raw reply [flat|nested] 4+ messages in thread