ASoC: Intel: Skylake: Rearrangement of code to cleanup SKL SST library
Skylake driver topology header/driver structure is referenced and used in SST library which creates circular dependency. Hence the rearrangement. Signed-off-by: Jeeja KP <jeeja.kp@intel.com> Acked-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Cette révision appartient à :
@@ -17,13 +17,14 @@
|
||||
#define __SKL_SST_DSP_H__
|
||||
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/uuid.h>
|
||||
#include <sound/memalloc.h>
|
||||
#include "skl-sst-cldma.h"
|
||||
#include "skl-topology.h"
|
||||
|
||||
struct sst_dsp;
|
||||
struct skl_sst;
|
||||
struct sst_dsp_device;
|
||||
struct skl_lib_info;
|
||||
|
||||
/* Intel HD Audio General DSP Registers */
|
||||
#define SKL_ADSP_GEN_BASE 0x0
|
||||
@@ -172,6 +173,19 @@ struct skl_dsp_loader_ops {
|
||||
int stream_tag);
|
||||
};
|
||||
|
||||
#define MAX_INSTANCE_BUFF 2
|
||||
|
||||
struct uuid_module {
|
||||
uuid_le uuid;
|
||||
int id;
|
||||
int is_loadable;
|
||||
int max_instance;
|
||||
u64 pvt_id[MAX_INSTANCE_BUFF];
|
||||
int *instance_id;
|
||||
|
||||
struct list_head list;
|
||||
};
|
||||
|
||||
struct skl_load_module_info {
|
||||
u16 mod_id;
|
||||
const struct firmware *fw;
|
||||
@@ -223,14 +237,10 @@ int bxt_sst_init_fw(struct device *dev, struct skl_sst *ctx);
|
||||
void skl_sst_dsp_cleanup(struct device *dev, struct skl_sst *ctx);
|
||||
void bxt_sst_dsp_cleanup(struct device *dev, struct skl_sst *ctx);
|
||||
|
||||
int snd_skl_get_module_info(struct skl_sst *ctx,
|
||||
struct skl_module_cfg *mconfig);
|
||||
int snd_skl_parse_uuids(struct sst_dsp *ctx, const struct firmware *fw,
|
||||
unsigned int offset, int index);
|
||||
int skl_get_pvt_id(struct skl_sst *ctx,
|
||||
struct skl_module_cfg *mconfig);
|
||||
int skl_put_pvt_id(struct skl_sst *ctx,
|
||||
struct skl_module_cfg *mconfig);
|
||||
int skl_get_pvt_id(struct skl_sst *ctx, uuid_le *uuid_mod, int instance_id);
|
||||
int skl_put_pvt_id(struct skl_sst *ctx, uuid_le *uuid_mod, int *pvt_id);
|
||||
int skl_get_pvt_instance_id_map(struct skl_sst *ctx,
|
||||
int module_id, int instance_id);
|
||||
void skl_freeup_uuid_list(struct skl_sst *ctx);
|
||||
|
Référencer dans un nouveau ticket
Bloquer un utilisateur