From: Vincent Jardin Date: Sun, 10 May 2026 22:07:30 +0000 (+0200) Subject: board: nxp: common: support CONFIG_FSL_USE_PCA9547_MUX X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=43257fa9e39c70919e2dfc6efa24b2048b1e4a57;p=thirdparty%2Fu-boot.git board: nxp: common: support CONFIG_FSL_USE_PCA9547_MUX Use select_i2c_ch_pca9547() only when CONFIG_FSL_USE_PCA9547_MUX is set, but several call in board/nxp/lx2160a/lx2160a.c invoke it unconditionally, or using unrelated Kconfigs (CONFIG_EMC2305, CONFIG_VID). Compilation with LX2160A target that omits the mux therefore fails with error: implicit declaration of function 'select_i2c_ch_pca9547' Add a static inline stub with -EOPNOTSUPP for the !CONFIG_FSL_USE_PCA9547_MUX case so all cases compile cleanly. Adapted from the convention used by include/scmi_nxp_protocols.h for SCMI subprotocol stubs. There is no functional change for NXP boards: all eight upstream LX2160A defconfigs (lx2160ardb / lx2160aqds / lx2162aqds and their secure / stmm / verified_boot variants) already set CONFIG_FSL_USE_PCA9547_MUX=y, so the real declaration wins. The purpose is to support new boards that do not use the PCA9547. Signed-off-by: Vincent Jardin Reviewed-by: Peng Fan Signed-off-by: Peng Fan --- diff --git a/board/nxp/common/i2c_mux.h b/board/nxp/common/i2c_mux.h index 0870c1918e6..ef7ce8e2e51 100644 --- a/board/nxp/common/i2c_mux.h +++ b/board/nxp/common/i2c_mux.h @@ -10,6 +10,11 @@ #ifdef CONFIG_FSL_USE_PCA9547_MUX int select_i2c_ch_pca9547(u8 ch, int bus); +#else +static inline int select_i2c_ch_pca9547(u8 ch, int bus) +{ + return -EOPNOTSUPP; +} #endif #endif