| /* SPDX-License-Identifier: GPL-2.0-only */ |
| |
| #ifndef __ACPI_ACPI_SOUNDWIRE_H__ |
| #define __ACPI_ACPI_SOUNDWIRE_H__ |
| |
| #include <acpi/acpi_device.h> |
| #include <device/soundwire.h> |
| |
| /** |
| * soundwire_dp_prop_cb() - Callback to add custom data port properties. |
| * @dsd: ACPI Device Property handle for this data port. |
| * @port_id: Data Port ID from 0-14. |
| * @codec: Properties that were passed to soundwire_gen_codec(). |
| */ |
| typedef void soundwire_dp_prop_cb(struct acpi_dp *dsd, unsigned int port_id, |
| const struct soundwire_codec *codec); |
| |
| /** |
| * soundwire_gen_codec() - Generate SoundWire properties for codec device. |
| * @dsd: ACPI Device Property handle. |
| * @prop: Properties for codec which includes all other properties. |
| * @dp_prop_cb: Callback to allow custom codec properties. |
| */ |
| void soundwire_gen_codec(struct acpi_dp *dsd, const struct soundwire_codec *codec, |
| soundwire_dp_prop_cb dp_prop_cb); |
| |
| /** |
| * soundwire_link_prop_cb() - Callback to add custom link properties. |
| * @dsd: ACPI Device Property handle for master link. |
| * @link_id: Link number for this master. |
| * @controller: Properties that were passed to soundwire_gen_controller(). |
| */ |
| typedef void soundwire_link_prop_cb(struct acpi_dp *dsd, unsigned int link_id, |
| const struct soundwire_controller *controller); |
| |
| /** |
| * soundwire_gen_controller() - Generate SoundWire properties for master links. |
| * @dsd: ACPI Device Property handle for controller. |
| * @prop: Properties for controller which includes all other properties. |
| * @link_prop_cb: Callback to allow custom link properties. |
| */ |
| void soundwire_gen_controller(struct acpi_dp *dsd, const struct soundwire_controller *prop, |
| soundwire_link_prop_cb link_prop_cb); |
| |
| #endif /* __ACPI_ACPI_SOUNDWIRE_H__ */ |