Merge remote-tracking branches 'regulator/topic/tps65217', 'regulator/topic/tps65218...
[deliverable/linux.git] / sound / soc / codecs / sigmadsp.h
CommitLineData
e359dc24
MF
1/*
2 * Load firmware files from Analog Devices SigmaStudio
3 *
4 * Copyright 2009-2011 Analog Devices Inc.
5 *
6 * Licensed under the GPL-2 or later.
7 */
8
9#ifndef __SIGMA_FIRMWARE_H__
10#define __SIGMA_FIRMWARE_H__
11
38fd54ee
LPC
12#include <linux/device.h>
13#include <linux/regmap.h>
14
6b10998d
LPC
15struct sigma_action {
16 u8 instr;
17 u8 len_hi;
18 __le16 len;
19 __be16 addr;
20 unsigned char payload[];
21} __packed;
22
23struct sigma_firmware {
24 const struct firmware *fw;
25 size_t pos;
26
27 void *control_data;
28 int (*write)(void *control_data, const struct sigma_action *sa,
29 size_t len);
30};
31
32int _process_sigma_firmware(struct device *dev,
33 struct sigma_firmware *ssfw, const char *name);
34
e359dc24
MF
35struct i2c_client;
36
e359dc24 37extern int process_sigma_firmware(struct i2c_client *client, const char *name);
38fd54ee
LPC
38extern int process_sigma_firmware_regmap(struct device *dev,
39 struct regmap *regmap, const char *name);
e359dc24
MF
40
41#endif
This page took 0.222914 seconds and 5 git commands to generate.