// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) // Copyright (c) 2025 Qualcomm Technologies, Inc. /* * WCD9378 (Tambora) SoundWire driver glue for the SDCA compute-mode * codec. The SDCA topology and hardware-specific probe logic live in * wcd9378-sdca.c; this file carries the SoundWire slave driver plumbing * and the module boilerplate. */ #include #include #include #include #include #include "wcd9378-sdca.h" static const struct dev_pm_ops wcd9378_sdw_pm_ops = { SYSTEM_SLEEP_PM_OPS(wcd9378_sdca_system_suspend, wcd9378_sdca_system_resume) RUNTIME_PM_OPS(wcd9378_sdca_runtime_suspend, wcd9378_sdca_runtime_resume, NULL) }; static const struct sdw_slave_ops wcd9378_sdw_ops = { .read_prop = wcd9378_sdca_read_prop, }; static const struct sdw_device_id wcd9378_sdw_id[] = { SDW_SLAVE_ENTRY(0x0217, 0x0110, 0), { } }; MODULE_DEVICE_TABLE(sdw, wcd9378_sdw_id); static struct sdw_driver wcd9378_sdw_driver = { .driver = { .name = "wcd9378", .pm = pm_ptr(&wcd9378_sdw_pm_ops), }, .probe = wcd9378_sdca_probe, .remove = wcd9378_sdca_remove, .id_table = wcd9378_sdw_id, .ops = &wcd9378_sdw_ops, }; module_sdw_driver(wcd9378_sdw_driver); MODULE_DESCRIPTION("Qualcomm WCD9378 (Tambora) SoundWire codec"); MODULE_AUTHOR("Qualcomm Technologies, Inc."); MODULE_LICENSE("Dual BSD/GPL"); MODULE_IMPORT_NS("SND_SOC_SDCA"); MODULE_IMPORT_NS("SND_SOC_SDCA_CLASS");