From 0038222e10239ea667139c48ea385459be79748d Mon Sep 17 00:00:00 2001 From: Tomasz Leman Date: Fri, 17 Jul 2026 16:37:22 +0200 Subject: [PATCH] zephyr: ipc: stop selecting deprecated INTEL_ADSP_IPC Kconfig The INTEL_ADSP_IPC Kconfig is deprecated upstream (it now only selects DEPRECATED and will be removed). SOF still relied on it both as an explicit selection and as a compile guard, which blocks its removal in Zephyr. Replace every usage with the correct non-deprecated symbol: - old-interface calls (intel_adsp_ipc_set_done_handler used by ipc_platform_wait_ack) are guarded by INTEL_ADSP_IPC_OLD_INTERFACE, - Intel-backend-specific code (host IPC suspend/resume handlers and the failed power-transition response) is guarded by IPC_SERVICE_BACKEND_INTEL_ADSP_HOST_IPC, moving ipc-zephyr.c a step closer to being backend agnostic, - the backend header include is split from the old-interface header, - the redundant explicit INTEL_ADSP_IPC selections in the board defconfig and the ptl_sim overlay are dropped (OLD_INTERFACE already selects it by default). No functional change: on all Intel ADSP targets OLD_INTERFACE and the host IPC backend are enabled by default, so the same code paths build. Signed-off-by: Tomasz Leman --- app/boards/intel_adsp/Kconfig.defconfig | 3 --- app/boards/intel_adsp_ace30_ptl_sim.conf | 2 -- src/include/sof/ipc/common.h | 4 ++-- src/ipc/ipc-zephyr.c | 14 ++++++++------ src/ipc/ipc4/handler-kernel.c | 4 ++-- 5 files changed, 12 insertions(+), 15 deletions(-) diff --git a/app/boards/intel_adsp/Kconfig.defconfig b/app/boards/intel_adsp/Kconfig.defconfig index f705960eee1a..a7423ef1d630 100644 --- a/app/boards/intel_adsp/Kconfig.defconfig +++ b/app/boards/intel_adsp/Kconfig.defconfig @@ -114,9 +114,6 @@ config DAI_INTEL_DMIC config DAI_INTEL_SSP default y -config INTEL_ADSP_IPC - default y - config INTEL_ADSP_TIMER default y diff --git a/app/boards/intel_adsp_ace30_ptl_sim.conf b/app/boards/intel_adsp_ace30_ptl_sim.conf index 477450d2d271..70aa151b0739 100644 --- a/app/boards/intel_adsp_ace30_ptl_sim.conf +++ b/app/boards/intel_adsp_ace30_ptl_sim.conf @@ -35,8 +35,6 @@ CONFIG_SOF_LOG_LEVEL_INF=n CONFIG_SOF_LOG_LEVEL_OFF=y CONFIG_ZEPHYR_LOG=n -CONFIG_INTEL_ADSP_IPC=y - # Temporary disabled options CONFIG_PM_DEVICE_RUNTIME=n diff --git a/src/include/sof/ipc/common.h b/src/include/sof/ipc/common.h index e46fc10b9521..0345bc10a1a8 100644 --- a/src/include/sof/ipc/common.h +++ b/src/include/sof/ipc/common.h @@ -173,7 +173,7 @@ int ipc_dai_data_config(struct dai_data *dd, struct comp_dev *dev); */ void ipc_boot_complete_msg(struct ipc_cmd_hdr *header, uint32_t data); -#if defined(CONFIG_PM_DEVICE) && defined(CONFIG_INTEL_ADSP_IPC) +#if defined(CONFIG_PM_DEVICE) && defined(CONFIG_IPC_SERVICE_BACKEND_INTEL_ADSP_HOST_IPC) /** * @brief Send an IPC response to Host power transition request informing * that power transition failed. @@ -186,7 +186,7 @@ void ipc_boot_complete_msg(struct ipc_cmd_hdr *header, uint32_t data); * IPC task but during power transition logic in the Idle thread. */ void ipc_send_failed_power_transition_response(void); -#endif /* CONFIG_PM_DEVICE && CONFIG_INTEL_ADSP_IPC */ +#endif /* CONFIG_PM_DEVICE && CONFIG_IPC_SERVICE_BACKEND_INTEL_ADSP_HOST_IPC */ /** * \brief Send a IPC notification that FW has hit * a DSP notification. diff --git a/src/ipc/ipc-zephyr.c b/src/ipc/ipc-zephyr.c index b03c8420a8bb..5661c72bb269 100644 --- a/src/ipc/ipc-zephyr.c +++ b/src/ipc/ipc-zephyr.c @@ -13,8 +13,10 @@ #include #include -#ifdef CONFIG_INTEL_ADSP_IPC +#ifdef CONFIG_IPC_SERVICE_BACKEND_INTEL_ADSP_HOST_IPC #include +#endif +#ifdef CONFIG_INTEL_ADSP_IPC_OLD_INTERFACE #include #endif @@ -97,7 +99,7 @@ static void sof_ipc_receive_cb(const void *data, size_t len, void *priv) k_spin_unlock(&ipc->lock, key); } -#ifdef CONFIG_PM_DEVICE +#if defined(CONFIG_PM_DEVICE) && defined(CONFIG_IPC_SERVICE_BACKEND_INTEL_ADSP_HOST_IPC) /** * @brief IPC device suspend handler callback function. * Checks whether device power state should be actually changed. @@ -179,7 +181,7 @@ static int ipc_device_resume_handler(const struct device *dev, void *arg) #endif return 0; } -#endif /* CONFIG_PM_DEVICE */ +#endif /* CONFIG_PM_DEVICE && CONFIG_IPC_SERVICE_BACKEND_INTEL_ADSP_HOST_IPC */ #if CONFIG_DEBUG_IPC_COUNTERS @@ -328,7 +330,7 @@ int platform_ipc_init(struct ipc *ipc) if (ret < 0) return ret; -#if defined(CONFIG_PM) && defined(CONFIG_INTEL_ADSP_IPC) +#if defined(CONFIG_PM_DEVICE) && defined(CONFIG_IPC_SERVICE_BACKEND_INTEL_ADSP_HOST_IPC) intel_adsp_ipc_set_suspend_handler(INTEL_ADSP_IPC_HOST_DEV, ipc_device_suspend_handler, ipc); intel_adsp_ipc_set_resume_handler(INTEL_ADSP_IPC_HOST_DEV, @@ -338,7 +340,7 @@ int platform_ipc_init(struct ipc *ipc) return 0; } -#ifdef CONFIG_INTEL_ADSP_IPC +#ifdef CONFIG_INTEL_ADSP_IPC_OLD_INTERFACE static bool ipc_wait_complete(const struct device *dev, void *arg) { k_sem_give(arg); @@ -358,4 +360,4 @@ void ipc_platform_wait_ack(struct ipc *ipc) intel_adsp_ipc_set_done_handler(INTEL_ADSP_IPC_HOST_DEV, NULL, NULL); } -#endif /* CONFIG_INTEL_ADSP_IPC */ +#endif /* CONFIG_INTEL_ADSP_IPC_OLD_INTERFACE */ diff --git a/src/ipc/ipc4/handler-kernel.c b/src/ipc/ipc4/handler-kernel.c index d7d9f417806a..724f5ccc61a1 100644 --- a/src/ipc/ipc4/handler-kernel.c +++ b/src/ipc/ipc4/handler-kernel.c @@ -443,7 +443,7 @@ __cold void ipc_boot_complete_msg(struct ipc_cmd_hdr *header, uint32_t data) header->ext = 0; } -#if defined(CONFIG_PM_DEVICE) && defined(CONFIG_INTEL_ADSP_IPC) +#if defined(CONFIG_PM_DEVICE) && defined(CONFIG_IPC_SERVICE_BACKEND_INTEL_ADSP_HOST_IPC) __cold void ipc_send_failed_power_transition_response(void) { struct ipc4_message_request *request = ipc_from_hdr(&msg_data.msg_in); @@ -461,7 +461,7 @@ __cold void ipc_send_failed_power_transition_response(void) ipc_msg_send_direct(&msg_reply, NULL); } -#endif /* defined(CONFIG_PM_DEVICE) && defined(CONFIG_INTEL_ADSP_IPC) */ +#endif /* defined(CONFIG_PM_DEVICE) && defined(CONFIG_IPC_SERVICE_BACKEND_INTEL_ADSP_HOST_IPC) */ __cold void ipc_send_panic_notification(void) {