| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- /* SPDX-License-Identifier: GPL-2.0 */
- /*
- * The MIPI SDCA specification is available for public downloads at
- * https://www.mipi.org/mipi-sdca-v1-0-download
- *
- * Copyright (C) 2025 Cirrus Logic, Inc. and
- * Cirrus Logic International Semiconductor Ltd.
- */
- #ifndef __SDCA_UMP_H__
- #define __SDCA_UMP_H__
- struct regmap;
- struct sdca_control;
- struct sdca_entity;
- struct sdca_function_data;
- struct snd_soc_component;
- struct delayed_work;
- int sdca_ump_get_owner_host(struct device *dev,
- struct regmap *function_regmap,
- struct sdca_function_data *function,
- struct sdca_entity *entity,
- struct sdca_control *control);
- int sdca_ump_set_owner_device(struct device *dev,
- struct regmap *function_regmap,
- struct sdca_function_data *function,
- struct sdca_entity *entity,
- struct sdca_control *control);
- int sdca_ump_read_message(struct device *dev,
- struct regmap *device_regmap,
- struct regmap *function_regmap,
- struct sdca_function_data *function,
- struct sdca_entity *entity,
- unsigned int offset_sel, unsigned int length_sel,
- void **msg);
- int sdca_ump_write_message(struct device *dev,
- struct regmap *device_regmap,
- struct regmap *function_regmap,
- struct sdca_function_data *function,
- struct sdca_entity *entity,
- unsigned int offset_sel, unsigned int msg_offset,
- unsigned int length_sel,
- void *msg, int msg_len);
- void sdca_ump_cancel_timeout(struct delayed_work *work);
- void sdca_ump_schedule_timeout(struct delayed_work *work,
- unsigned int timeout_us);
- #endif // __SDCA_UMP_H__
|