[alsa-devel] [RFC 3/4] ASoC: Intel: add the low level dsp driver for mrfld

Liam Girdwood liam.r.girdwood at intel.com
Tue May 6 17:45:52 CEST 2014


On Mon, 2014-05-05 at 23:31 +0530, Vinod Koul wrote:
> This driver provides low level functions like sending and receiving IPCs, managing
> power for DSP etc
> 
> Signed-off-by: Vinod Koul <vinod.koul at intel.com>
> ---
>  sound/soc/intel/sst/Makefile            |    5 +
>  sound/soc/intel/sst/sst.c               |  631 ++++++++++++++++++++
>  sound/soc/intel/sst/sst.h               |  686 ++++++++++++++++++++++
>  sound/soc/intel/sst/sst_drv_interface.c |  812 ++++++++++++++++++++++++++
>  sound/soc/intel/sst/sst_ipc.c           |  388 +++++++++++++
>  sound/soc/intel/sst/sst_loader.c        |  947 +++++++++++++++++++++++++++++++
>  sound/soc/intel/sst/sst_pvt.c           |  203 +++++++
>  sound/soc/intel/sst/sst_stream.c        |  529 +++++++++++++++++

We should rename the sst directory to avoid confusion with other sst
drivers.

>  8 files changed, 4201 insertions(+), 0 deletions(-)
>  create mode 100644 sound/soc/intel/sst/Makefile
>  create mode 100644 sound/soc/intel/sst/sst.c
>  create mode 100644 sound/soc/intel/sst/sst.h
>  create mode 100644 sound/soc/intel/sst/sst_drv_interface.c
>  create mode 100644 sound/soc/intel/sst/sst_ipc.c
>  create mode 100644 sound/soc/intel/sst/sst_loader.c
>  create mode 100644 sound/soc/intel/sst/sst_pvt.c
>  create mode 100644 sound/soc/intel/sst/sst_stream.c
> 
> diff --git a/sound/soc/intel/sst/Makefile b/sound/soc/intel/sst/Makefile
> new file mode 100644
> index 0000000..d5bf4e8
> --- /dev/null
> +++ b/sound/soc/intel/sst/Makefile
> @@ -0,0 +1,5 @@
> +snd-intel-sst-objs := sst.o sst_ipc.o sst_stream.o sst_drv_interface.o sst_loader.o sst_pvt.o
> +
> +obj-$(CONFIG_SND_INTEL_SST) += snd-intel-sst.o
> +
> +CFLAGS_snd-intel-sst.o = -I$(src)
> diff --git a/sound/soc/intel/sst/sst.c b/sound/soc/intel/sst/sst.c
> new file mode 100644
> index 0000000..116522b
> --- /dev/null
> +++ b/sound/soc/intel/sst/sst.c
> @@ -0,0 +1,631 @@
> +/*
> + *  sst.c - Intel SST Driver for audio engine
> + *
> + *  Copyright (C) 2008-14	Intel Corp
> + *  Authors:	Vinod Koul <vinod.koul at intel.com>
> + *		Harsha Priya <priya.harsha at intel.com>
> + *		Dharageswari R <dharageswari.r at intel.com>
> + *		KP Jeeja <jeeja.kp at intel.com>
> + *  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> + *
> + *  This program is free software; you can redistribute it and/or modify
> + *  it under the terms of the GNU General Public License as published by
> + *  the Free Software Foundation; version 2 of the License.
> + *
> + *  This program is distributed in the hope that it will be useful, but
> + *  WITHOUT ANY WARRANTY; without even the implied warranty of
> + *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> + *  General Public License for more details.
> + *
> + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> + */
> +
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> +#include <linux/module.h>
> +#include <linux/pci.h>
> +#include <linux/fs.h>
> +#include <linux/interrupt.h>
> +#include <linux/firmware.h>
> +#include <linux/miscdevice.h>
> +#include <linux/pm_runtime.h>
> +#include <linux/pm_qos.h>
> +#include <linux/async.h>
> +#include <linux/delay.h>
> +#include <linux/acpi.h>
> +#include <asm/intel-mid.h>
> +#include <asm/platform_sst_audio.h>
> +#include <asm/platform_sst.h>
> +#include "../sst_platform.h"
> +#include "../platform_ipc_v2.h"
> +#include "sst.h"
> +
> +MODULE_AUTHOR("Vinod Koul <vinod.koul at intel.com>");
> +MODULE_AUTHOR("Harsha Priya <priya.harsha at intel.com>");
> +MODULE_DESCRIPTION("Intel (R) SST(R) Audio Engine Driver");
> +MODULE_LICENSE("GPL v2");
> +MODULE_VERSION(SST_DRIVER_VERSION);
> +
> +struct intel_sst_drv *sst_drv_ctx;

static ?

> +static struct mutex drv_ctx_lock;
> +


> +
> +static int sst_save_dsp_context_v2(struct intel_sst_drv *sst)

Is there a V1 somewhere ?


> +static int intel_sst_suspend(struct device *dev)
> +{
> +

extra line ? Spotted this in a few places too.

Probably best to split this into several patches to make review easier.

Liam

---------------------------------------------------------------------
Intel Corporation (UK) Limited
Registered No. 1134945 (England)
Registered Office: Pipers Way, Swindon SN3 1RJ
VAT No: 860 2173 47

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.


More information about the Alsa-devel mailing list