summaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/cs35l41_hda.h
diff options
context:
space:
mode:
authorStefan Binding <sbinding@opensource.cirrus.com>2022-06-30 02:23:31 +0200
committerTakashi Iwai <tiwai@suse.de>2022-07-15 16:22:40 +0200
commit3e34e2ae29591f0fd84dca905d296da1e127160c (patch)
tree307091355e53c7ec21932c2c0c8875596adc19f1 /sound/pci/hda/cs35l41_hda.h
parentALSA: hda: cs35l41: Support Hibernation during Suspend (diff)
downloadlinux-3e34e2ae29591f0fd84dca905d296da1e127160c.tar.xz
linux-3e34e2ae29591f0fd84dca905d296da1e127160c.zip
ALSA: hda: cs35l41: Read Speaker Calibration data from UEFI variables
Speaker Calibration data, specific to an individual speaker is stored inside UEFI variables during calibration, and can be used by the DSP. Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com> Signed-off-by: Vitaly Rodionov <vitalyr@opensource.cirrus.com> Link: https://lore.kernel.org/r/20220630002335.366545-11-vitalyr@opensource.cirrus.com Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/cs35l41_hda.h')
-rw-r--r--sound/pci/hda/cs35l41_hda.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/sound/pci/hda/cs35l41_hda.h b/sound/pci/hda/cs35l41_hda.h
index 439c4b705328..59a9461d0444 100644
--- a/sound/pci/hda/cs35l41_hda.h
+++ b/sound/pci/hda/cs35l41_hda.h
@@ -10,6 +10,7 @@
#ifndef __CS35L41_HDA_H__
#define __CS35L41_HDA_H__
+#include <linux/efi.h>
#include <linux/regulator/consumer.h>
#include <linux/gpio/consumer.h>
#include <linux/device.h>
@@ -18,6 +19,20 @@
#include <linux/firmware/cirrus/cs_dsp.h>
#include <linux/firmware/cirrus/wmfw.h>
+struct cs35l41_amp_cal_data {
+ u32 calTarget[2];
+ u32 calTime[2];
+ s8 calAmbient;
+ u8 calStatus;
+ u16 calR;
+} __packed;
+
+struct cs35l41_amp_efi_data {
+ u32 size;
+ u32 count;
+ struct cs35l41_amp_cal_data data[];
+} __packed;
+
enum cs35l41_hda_spk_pos {
CS35l41_LEFT,
CS35l41_RIGHT,