]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
bnxt_en: Fix build break on non-x86 platforms
authorPavan Chebbi <pavan.chebbi@broadcom.com>
Tue, 13 Jan 2026 18:34:22 +0000 (10:34 -0800)
committerJakub Kicinski <kuba@kernel.org>
Fri, 16 Jan 2026 03:56:13 +0000 (19:56 -0800)
Commit c470195b989fe added .getcrosststamp() interface where
the code uses boot_cpu_has() function which is available only
in x86 platforms. This fails the build on any other platform.

Since the interface is going to be supported only on x86 anyway,
we can simply compile out the entire support on non-x86 platforms.

Cover the .getcrosststamp support under CONFIG_X86

Fixes: c470195b989f ("bnxt_en: Add PTP .getcrosststamp() interface to get device/host times")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202601111808.WnBJCuWI-lkp@intel.com
Signed-off-by: Pavan Chebbi <pavan.chebbi@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Link: https://patch.msgid.link/20260113183422.508851-1-michael.chan@broadcom.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c

index 75ad385f5f79ecce9dbc0a98a604682c4d090e8a..ad89c5fa9b40c2afd921175efc9af6d0e908b3b6 100644 (file)
@@ -882,6 +882,7 @@ void bnxt_tx_ts_cmp(struct bnxt *bp, struct bnxt_napi *bnapi,
        }
 }
 
+#ifdef CONFIG_X86
 static int bnxt_phc_get_syncdevicetime(ktime_t *device,
                                       struct system_counterval_t *system,
                                       void *ctx)
@@ -924,6 +925,7 @@ static int bnxt_ptp_getcrosststamp(struct ptp_clock_info *ptp_info,
        return get_device_system_crosststamp(bnxt_phc_get_syncdevicetime,
                                             ptp, NULL, xtstamp);
 }
+#endif /* CONFIG_X86 */
 
 static const struct ptp_clock_info bnxt_ptp_caps = {
        .owner          = THIS_MODULE,
@@ -1137,9 +1139,11 @@ int bnxt_ptp_init(struct bnxt *bp)
                if (bnxt_ptp_pps_init(bp))
                        netdev_err(bp->dev, "1pps not initialized, continuing without 1pps support\n");
        }
+#ifdef CONFIG_X86
        if ((bp->fw_cap & BNXT_FW_CAP_PTP_PTM) && pcie_ptm_enabled(bp->pdev) &&
            boot_cpu_has(X86_FEATURE_ART))
                ptp->ptp_info.getcrosststamp = bnxt_ptp_getcrosststamp;
+#endif /* CONFIG_X86 */
 
        ptp->ptp_clock = ptp_clock_register(&ptp->ptp_info, &bp->pdev->dev);
        if (IS_ERR(ptp->ptp_clock)) {