diff mbox series

[1/2] ASoC: SOF: ipc: update sof_ipc_stream_params

Message ID 20190702121144.7809-1-yang.jie@linux.intel.com (mailing list archive)
State New, archived
Headers show
Series [1/2] ASoC: SOF: ipc: update sof_ipc_stream_params | expand

Commit Message

Keyon Jie July 2, 2019, 12:11 p.m. UTC
From: Marcin Rajwa <marcin.rajwa@linux.intel.com>

The host period bytes needs to be passed to firmware.
Currently this field is used as notification for host
about period copy completion. Therefore we need to split these
two informations.

Signed-off-by: Marcin Rajwa <marcin.rajwa@linux.intel.com>
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
---
 include/sound/sof/stream.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Ranjani Sridharan July 2, 2019, 11:29 p.m. UTC | #1
On Tue, 2019-07-02 at 20:11 +0800, Keyon Jie wrote:
> From: Marcin Rajwa <marcin.rajwa@linux.intel.com>
> 
> The host period bytes needs to be passed to firmware.
> Currently this field is used as notification for host
> about period copy completion. Therefore we need to split these
> two informations.
Keyon/Marcin,

Could you please add a bit more context in the commit message on the
need to split these two fields ie.. what usecases need this?

Thanks,
Ranjani
> 
> Signed-off-by: Marcin Rajwa <marcin.rajwa@linux.intel.com>
> Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
> ---
>  include/sound/sof/stream.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/include/sound/sof/stream.h b/include/sound/sof/stream.h
> index 643f175cb479..44acfa62fa69 100644
> --- a/include/sound/sof/stream.h
> +++ b/include/sound/sof/stream.h
> @@ -83,10 +83,10 @@ struct sof_ipc_stream_params {
>  	uint16_t sample_valid_bytes;
>  	uint16_t sample_container_bytes;
>  
> -	/* for notifying host period has completed - 0 means no period
> IRQ */
>  	uint32_t host_period_bytes;
> +	uint16_t no_period_irq; /* 1 means period IRQ mode OFF */
>  
> -	uint32_t reserved[2];
> +	uint16_t reserved[3];
>  	uint16_t chmap[SOF_IPC_MAX_CHANNELS];	/**< channel map -
> SOF_CHMAP_ */
>  } __packed;
>
Keyon Jie July 3, 2019, 1:52 a.m. UTC | #2
On 2019/7/3 上午7:29, Ranjani Sridharan wrote:
> On Tue, 2019-07-02 at 20:11 +0800, Keyon Jie wrote:
>> From: Marcin Rajwa <marcin.rajwa@linux.intel.com>
>>
>> The host period bytes needs to be passed to firmware.
>> Currently this field is used as notification for host
>> about period copy completion. Therefore we need to split these
>> two informations.
> Keyon/Marcin,
> 
> Could you please add a bit more context in the commit message on the
> need to split these two fields ie.. what usecases need this?

Sure, previously I wrote the commit message like this:

ASoC: SOF: add flag for position update ipc

In some cases, FW might need use the host_period_bytes even no position
update ipc reqiured from driver, here add another flag for position update,
and preserve host_period_bytes for FW to use.

This might require corresponding FW change and ABI alignment.

Thanks,
~Keyon

> 
> Thanks,
> Ranjani
>>
>> Signed-off-by: Marcin Rajwa <marcin.rajwa@linux.intel.com>
>> Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
>> ---
>>   include/sound/sof/stream.h | 4 ++--
>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/include/sound/sof/stream.h b/include/sound/sof/stream.h
>> index 643f175cb479..44acfa62fa69 100644
>> --- a/include/sound/sof/stream.h
>> +++ b/include/sound/sof/stream.h
>> @@ -83,10 +83,10 @@ struct sof_ipc_stream_params {
>>   	uint16_t sample_valid_bytes;
>>   	uint16_t sample_container_bytes;
>>   
>> -	/* for notifying host period has completed - 0 means no period
>> IRQ */
>>   	uint32_t host_period_bytes;
>> +	uint16_t no_period_irq; /* 1 means period IRQ mode OFF */
>>   
>> -	uint32_t reserved[2];
>> +	uint16_t reserved[3];
>>   	uint16_t chmap[SOF_IPC_MAX_CHANNELS];	/**< channel map -
>> SOF_CHMAP_ */
>>   } __packed;
>>   
> 
>
diff mbox series

Patch

diff --git a/include/sound/sof/stream.h b/include/sound/sof/stream.h
index 643f175cb479..44acfa62fa69 100644
--- a/include/sound/sof/stream.h
+++ b/include/sound/sof/stream.h
@@ -83,10 +83,10 @@  struct sof_ipc_stream_params {
 	uint16_t sample_valid_bytes;
 	uint16_t sample_container_bytes;
 
-	/* for notifying host period has completed - 0 means no period IRQ */
 	uint32_t host_period_bytes;
+	uint16_t no_period_irq; /* 1 means period IRQ mode OFF */
 
-	uint32_t reserved[2];
+	uint16_t reserved[3];
 	uint16_t chmap[SOF_IPC_MAX_CHANNELS];	/**< channel map - SOF_CHMAP_ */
 } __packed;