mirror of
https://github.com/torvalds/linux
synced 2024-11-05 18:23:50 +00:00
f503056493
Shared boost allows two amplifiers to share a single boost circuit by communicating on the MDSYNC bus. The passive amplifier does not control the boost and receives data from the active amplifier. Shared Boost is not supported in HDA Systems. Based on David Rhodes shared boost patches. Signed-off-by: Lucas Tanure <lucas.tanure@collabora.com> Reviewed-by: David Rhodes <david.rhodes@cirrus.com> Link: https://lore.kernel.org/r/20230223084324.9076-4-lucas.tanure@collabora.com Signed-off-by: Mark Brown <broonie@kernel.org>
42 lines
1.1 KiB
C
42 lines
1.1 KiB
C
/* SPDX-License-Identifier: GPL-2.0
|
|
*
|
|
* cs35l41.h -- CS35L41 ALSA SoC audio driver
|
|
*
|
|
* Copyright 2017-2021 Cirrus Logic, Inc.
|
|
*
|
|
* Author: David Rhodes <david.rhodes@cirrus.com>
|
|
*/
|
|
|
|
#ifndef __CS35L41_H__
|
|
#define __CS35L41_H__
|
|
|
|
#include <linux/gpio/consumer.h>
|
|
#include <linux/regulator/consumer.h>
|
|
#include <linux/firmware.h>
|
|
#include <sound/core.h>
|
|
#include <sound/cs35l41.h>
|
|
|
|
#include "wm_adsp.h"
|
|
|
|
#define CS35L41_RX_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S24_LE)
|
|
#define CS35L41_TX_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S24_LE)
|
|
|
|
extern const struct dev_pm_ops cs35l41_pm_ops;
|
|
|
|
struct cs35l41_private {
|
|
struct wm_adsp dsp; /* needs to be first member */
|
|
struct snd_soc_codec *codec;
|
|
struct cs35l41_hw_cfg hw_cfg;
|
|
struct device *dev;
|
|
struct regmap *regmap;
|
|
struct regulator_bulk_data supplies[CS35L41_NUM_SUPPLIES];
|
|
int irq;
|
|
/* GPIO for /RST */
|
|
struct gpio_desc *reset_gpio;
|
|
struct completion pll_lock;
|
|
};
|
|
|
|
int cs35l41_probe(struct cs35l41_private *cs35l41, const struct cs35l41_hw_cfg *hw_cfg);
|
|
void cs35l41_remove(struct cs35l41_private *cs35l41);
|
|
|
|
#endif /*__CS35L41_H__*/
|