public inbox for alsa-devel@alsa-project.org
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Vinod Koul <vinod.koul@intel.com>
Cc: liam.r.girdwood@linux.intel.com, patches.audio@intel.com,
	alsa-devel@alsa-project.org, broonie@kernel.org,
	Jeeja KP <jeeja.kp@intel.com>
Subject: Re: [PATCH v3 2/7] ALSA: hda - add new HDA registers
Date: Wed, 29 Apr 2015 12:41:50 +0200	[thread overview]
Message-ID: <s5h8udbgqs1.wl-tiwai@suse.de> (raw)
In-Reply-To: <1430250870-3169-3-git-send-email-vinod.koul@intel.com>

At Wed, 29 Apr 2015 01:24:25 +0530,
Vinod Koul wrote:
> 
> From: Jeeja KP <jeeja.kp@intel.com>
> 
> This patch adds new registers as per HD audio Spec like capability registers
> for processing pipe, software position based FIFO, Multiple Links and Global
> Time Synchronization.
> 
> Signed-off-by: Jeeja KP <jeeja.kp@intel.com>
> Signed-off-by: Vinod Koul <vinod.koul@intel.com>

Should I merge this patch now to topic/hda branch?
This looks like the only patch changing the hda core code, the rest
are all hda_soc specific.

Or, feel free to take my ack:
  Acked-by: Takashi Iwai <tiwai@suse.de>


Takashi

> ---
>  include/sound/hda_register.h |   87 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 87 insertions(+)
> 
> diff --git a/include/sound/hda_register.h b/include/sound/hda_register.h
> index 4f6d3fce6ee6..dced67f5c35f 100644
> --- a/include/sound/hda_register.h
> +++ b/include/sound/hda_register.h
> @@ -28,6 +28,10 @@
>  #define AZX_REG_STATESTS		0x0e
>  #define AZX_REG_GSTS			0x10
>  #define   AZX_GSTS_FSTS		(1 << 1)   /* flush status */
> +#define AZX_REG_GCAP2			0x12
> +#define AZX_REG_LLCH			0x14
> +#define AZX_REG_OUTSTRMPAY		0x18
> +#define AZX_REG_INSTRMPAY		0x1A
>  #define AZX_REG_INTCTL			0x20
>  #define AZX_REG_INTSTS			0x24
>  #define AZX_REG_WALLCLK			0x30	/* 24Mhz source */
> @@ -81,6 +85,7 @@ enum { SDI0, SDI1, SDI2, SDI3, SDO0, SDO1, SDO2, SDO3 };
>  #define AZX_REG_SD_FIFOW		0x0e
>  #define AZX_REG_SD_FIFOSIZE		0x10
>  #define AZX_REG_SD_FORMAT		0x12
> +#define AZX_REG_SD_FIFOL		0x14
>  #define AZX_REG_SD_BDLPL		0x18
>  #define AZX_REG_SD_BDLPU		0x1c
>  
> @@ -134,6 +139,88 @@ enum { SDI0, SDI1, SDI2, SDI3, SDO0, SDO1, SDO2, SDO3 };
>  #define AZX_MAX_CORB_ENTRIES	256
>  #define AZX_MAX_RIRB_ENTRIES	256
>  
> +#define AZX_REG_CAP_HDR		0x0
> +#define CAP_HDR_VER_OFF		28
> +#define CAP_HDR_VER_MASK	(0xF << CAP_HDR_VER_OFF)
> +#define CAP_HDR_ID_OFF		16
> +#define CAP_HDR_ID_MASK		(0xFFF << CAP_HDR_ID_OFF)
> +#define CAP_HDR_NXT_PTR_MASK	0xFFFF
> +
> +/* registers of Software Position Based FIFO Capability Structure */
> +#define SPB_CAP_ID		0x4
> +#define AZX_REG_SPB_BASE_ADDR	0x700
> +#define AZX_REG_SPB_SPBFCH	0x00
> +#define AZX_REG_SPB_SPBFCCTL	0x04
> +/* Base used to calculate the iterating register offset */
> +#define SPB_BASE		0x08
> +/* Interval used to calculate the iterating register offset */
> +#define SPB_INTERVAL		0x08
> +
> +/* registers of Global Time Synchronization Capability Structure */
> +#define GTS_CAP_ID		0x1
> +#define AZX_REG_GTS_GTSCH	0x00
> +#define AZX_REG_GTS_GTSCD	0x04
> +#define AZX_REG_GTS_GTSCTLAC	0x0C
> +#define GTS_BASE		0x20
> +#define GTS_INTERVAL		0x20
> +
> +/* registers for Processing Pipe Capability Structure */
> +#define PP_CAP_ID		0x3
> +#define AZX_REG_PP_PPCH		0x10
> +#define AZX_REG_PP_PPCTL	0x04
> +#define PPCTL_PIE		(1<<31)
> +#define PPCTL_GPROCEN		(1<<30)
> +/* _X_ = dma engine # and cannot * exceed 29 (per spec max 30 dma engines) */
> +#define PPCTL_PROCEN(_X_)	(1<<(_X_))
> +
> +#define AZX_REG_PP_PPSTS	0x08
> +
> +#define PPHC_BASE		0x10
> +#define PPHC_INTERVAL		0x10
> +
> +#define AZX_REG_PPHCLLPL	0x0
> +#define AZX_REG_PPHCLLPU	0x4
> +#define AZX_REG_PPHCLDPL	0x8
> +#define AZX_REG_PPHCLDPU	0xC
> +
> +#define PPLC_BASE		0x10
> +#define PPLC_MULTI		0x10
> +#define PPLC_INTERVAL		0x10
> +
> +#define AZX_REG_PPLCCTL		0x0
> +#define PPLCCTL_STRM_BITS	4
> +#define PPLCCTL_STRM_SHIFT	20
> +#define REG_MASK(bit_num, offset) \
> +	(((1 << (bit_num)) - 1) << (offset))
> +#define PPLCCTL_STRM_MASK \
> +	REG_MASK(PPLCCTL_STRM_BITS, PPLCCTL_STRM_SHIFT)
> +#define PPLCCTL_RUN		(1<<1)
> +#define PPLCCTL_STRST		(1<<0)
> +
> +#define AZX_REG_PPLCFMT		0x4
> +#define AZX_REG_PPLCLLPL	0x8
> +#define AZX_REG_PPLCLLPU	0xC
> +
> +/* registers for Multiple Links Capability Structure */
> +#define ML_CAP_ID		0x2
> +#define AZX_REG_ML_MLCH		0x00
> +#define AZX_REG_ML_MLCD		0x04
> +#define ML_BASE			0x40
> +#define ML_INTERVAL		0x40
> +
> +#define AZX_REG_ML_LCAP		0x00
> +#define AZX_REG_ML_LCTL		0x04
> +#define AZX_REG_ML_LOSIDV	0x08
> +#define AZX_REG_ML_LSDIID	0x0C
> +#define AZX_REG_ML_LPSOO	0x10
> +#define AZX_REG_ML_LPSIO	0x12
> +#define AZX_REG_ML_LWALFC	0x18
> +#define AZX_REG_ML_LOUTPAY	0x20
> +#define AZX_REG_ML_LINPAY	0x30
> +
> +#define MLCTL_SPA		(1<<16)
> +#define MLCTL_CPA		23
> +
>  /*
>   * helpers to read the stream position
>   */
> -- 
> 1.7.9.5
> 

  reply	other threads:[~2015-04-29 10:41 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-28 19:54 [PATCH v3 0/7] ASoC: intel - add skylake PCM driver Vinod Koul
2015-04-28 19:54 ` [PATCH v3 1/7] ASoC: hda - add soc hda codec driver wrapper Vinod Koul
2015-04-29 11:59   ` Takashi Iwai
2015-05-04 13:12   ` Mark Brown
2015-05-06  3:47     ` Vinod Koul
2015-05-06 12:51       ` Mark Brown
2015-05-06 16:51         ` Vinod Koul
2015-04-28 19:54 ` [PATCH v3 2/7] ALSA: hda - add new HDA registers Vinod Koul
2015-04-29 10:41   ` Takashi Iwai [this message]
2015-04-29 10:57     ` Vinod Koul
2015-04-29 12:02   ` Takashi Iwai
2015-04-28 19:54 ` [PATCH v3 3/7] ASoC: hda - adds SoC controller and stream operations Vinod Koul
2015-04-29 12:26   ` Takashi Iwai
2015-04-30  9:35     ` Vinod Koul
2015-04-30  9:49       ` Takashi Iwai
2015-04-28 19:54 ` [PATCH v3 4/7] ASoC: intel - add Skylake HDA platform driver Vinod Koul
2015-04-29 12:31   ` Takashi Iwai
2015-04-30  9:42     ` Vinod Koul
2015-04-30  9:52       ` Takashi Iwai
2015-04-30 10:39         ` Vinod Koul
2015-04-28 19:54 ` [PATCH v3 5/7] ASoC: intel - add Skylake HDA audio driver Vinod Koul
2015-04-29 12:49   ` Takashi Iwai
2015-04-30 10:11     ` Vinod Koul
2015-04-30 10:18       ` Takashi Iwai
2015-04-28 19:54 ` [PATCH v3 6/7] ASoC: intel - add makefile support for SKL driver Vinod Koul
2015-04-28 19:54 ` [PATCH v3 7/7] ASoC: intel - adds support for decoupled mode in skl driver Vinod Koul

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=s5h8udbgqs1.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=jeeja.kp@intel.com \
    --cc=liam.r.girdwood@linux.intel.com \
    --cc=patches.audio@intel.com \
    --cc=vinod.koul@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox