Use the auxiliary bus to register/unregister subdevices for each function. Each function will be handled with a separate driver, matched using a name. If a vendor wants to override a specific function driver, they could use a custom name to match with a custom function driver. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Tested-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Maciej Strozek <mstrozek@opensource.cirrus.com> Reviewed-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com> Tested-by: Richard Fitzgerald <rf@opensource.cirrus.com> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://patch.msgid.link/20251120153023.2105663-12-ckeepax@opensource.cirrus.com Reviewed-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Mark Brown <broonie@kernel.org>
16 lines
374 B
C
16 lines
374 B
C
/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */
|
|
/* Copyright(c) 2024 Intel Corporation. */
|
|
|
|
#ifndef __SDCA_FUNCTION_DEVICE_H
|
|
#define __SDCA_FUNCTION_DEVICE_H
|
|
|
|
struct sdca_dev {
|
|
struct auxiliary_device auxdev;
|
|
struct sdca_function_data function;
|
|
};
|
|
|
|
#define auxiliary_dev_to_sdca_dev(auxiliary_dev) \
|
|
container_of(auxiliary_dev, struct sdca_dev, auxdev)
|
|
|
|
#endif
|