ace6d14481
The CS42L43 is an audio CODEC with integrated MIPI SoundWire interface (Version 1.2.1 compliant), I2C, SPI, and I2S/TDM interfaces designed for portable applications. It provides a high dynamic range, stereo DAC for headphone output, two integrated Class D amplifiers for loudspeakers, and two ADCs for wired headset microphone input or stereo line input. PDM inputs are provided for digital microphones. The MFD component registers and initialises the device and provides PM/system power management. Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20230804104602.395892-4-ckeepax@opensource.cirrus.com Signed-off-by: Lee Jones <lee@kernel.org>
29 lines
840 B
C
29 lines
840 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* CS42L43 core driver internal data
|
|
*
|
|
* Copyright (C) 2022-2023 Cirrus Logic, Inc. and
|
|
* Cirrus Logic International Semiconductor Ltd.
|
|
*/
|
|
|
|
#include <linux/mfd/cs42l43.h>
|
|
#include <linux/pm.h>
|
|
#include <linux/regmap.h>
|
|
|
|
#ifndef CS42L43_CORE_INT_H
|
|
#define CS42L43_CORE_INT_H
|
|
|
|
#define CS42L43_N_DEFAULTS 176
|
|
|
|
extern const struct dev_pm_ops cs42l43_pm_ops;
|
|
extern const struct reg_default cs42l43_reg_default[CS42L43_N_DEFAULTS];
|
|
|
|
bool cs42l43_readable_register(struct device *dev, unsigned int reg);
|
|
bool cs42l43_precious_register(struct device *dev, unsigned int reg);
|
|
bool cs42l43_volatile_register(struct device *dev, unsigned int reg);
|
|
|
|
int cs42l43_dev_probe(struct cs42l43 *cs42l43);
|
|
void cs42l43_dev_remove(struct cs42l43 *cs42l43);
|
|
|
|
#endif /* CS42L43_CORE_INT_H */
|