When (MFD) RZ_MTU3=m and PWM_RZ_MTU3=y, there are numerous build errors: ld: vmlinux.o: in function `rz_mtu3_pwm_config': drivers/pwm/pwm-rz-mtu3.c:374: undefined reference to `rz_mtu3_disable' ld: drivers/pwm/pwm-rz-mtu3.c:377: undefined reference to `rz_mtu3_8bit_ch_write' ld: vmlinux.o: in function `rz_mtu3_pwm_write_tgr_registers': drivers/pwm/pwm-rz-mtu3.c:110: undefined reference to `rz_mtu3_16bit_ch_write' ld: vmlinux.o: in function `rz_mtu3_pwm_config': drivers/pwm/pwm-rz-mtu3.c:382: undefined reference to `rz_mtu3_8bit_ch_write' ld: vmlinux.o: in function `rz_mtu3_pwm_write_tgr_registers': drivers/pwm/pwm-rz-mtu3.c:110: undefined reference to `rz_mtu3_16bit_ch_write' ld: drivers/pwm/pwm-rz-mtu3.c:111: undefined reference to `rz_mtu3_16bit_ch_write' ld: vmlinux.o: in function `rz_mtu3_pwm_config': drivers/pwm/pwm-rz-mtu3.c:397: undefined reference to `rz_mtu3_enable' ld: vmlinux.o: in function `rz_mtu3_pwm_disable': drivers/pwm/pwm-rz-mtu3.c:259: undefined reference to `rz_mtu3_8bit_ch_write' ld: drivers/pwm/pwm-rz-mtu3.c:264: undefined reference to `rz_mtu3_disable' ld: vmlinux.o: in function `rz_mtu3_pwm_enable': drivers/pwm/pwm-rz-mtu3.c:230: undefined reference to `rz_mtu3_8bit_ch_write' ld: drivers/pwm/pwm-rz-mtu3.c:234: undefined reference to `rz_mtu3_8bit_ch_write' ld: drivers/pwm/pwm-rz-mtu3.c:238: undefined reference to `rz_mtu3_enable' ld: vmlinux.o: in function `rz_mtu3_pwm_is_ch_enabled': drivers/pwm/pwm-rz-mtu3.c:155: undefined reference to `rz_mtu3_is_enabled' ld: drivers/pwm/pwm-rz-mtu3.c:162: undefined reference to `rz_mtu3_8bit_ch_read' ld: vmlinux.o: in function `rz_mtu3_pwm_read_tgr_registers': drivers/pwm/pwm-rz-mtu3.c:102: undefined reference to `rz_mtu3_16bit_ch_read' ld: drivers/pwm/pwm-rz-mtu3.c:102: undefined reference to `rz_mtu3_16bit_ch_read' ld: drivers/pwm/pwm-rz-mtu3.c:103: undefined reference to `rz_mtu3_16bit_ch_read' ld: vmlinux.o: in function `rz_mtu3_pwm_get_state': drivers/pwm/pwm-rz-mtu3.c:296: undefined reference to `rz_mtu3_8bit_ch_read' Replace the macro IS_ENABLED->IS_REACHABLE, allowing COMPILE_TEST to be built for PWM_RZ_MTU3. Reported-by: Randy Dunlap <rd.dunlab@xxxxxxxxx> Closes: https://lore.kernel.org/linux-pwm/TYWPR01MB877550F95CF000B63E9AD022C238A@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/T/#t Suggested-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx> Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx> --- include/linux/mfd/rz-mtu3.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/mfd/rz-mtu3.h b/include/linux/mfd/rz-mtu3.h index c5173bc06270..4f15c0dead60 100644 --- a/include/linux/mfd/rz-mtu3.h +++ b/include/linux/mfd/rz-mtu3.h @@ -151,7 +151,7 @@ struct rz_mtu3 { void *priv_data; }; -#if IS_ENABLED(CONFIG_RZ_MTU3) +#if IS_REACHABLE(CONFIG_RZ_MTU3) static inline bool rz_mtu3_request_channel(struct rz_mtu3_channel *ch) { mutex_lock(&ch->lock); -- 2.25.1