Hi Pierre-Louis
Thank you for clarifying the point
And unneeded has_xxx will be removed if xxx_only was set (B)
The problem is that we have two sources of information
- the dais included in the dailink (the (A) part above)
- the dailink itself (the (B) part above)
the code in A) constructs the information from the ground-up, but it's overridden by B).
You can view it as 'removing unneeded has_xxx' flags, but it's also a problem is the dailink information is incorrect...
In the past we would report an error if the dailink was not aligned with the dais. Now we just ignore the dai information.
Ah, OK now I could understand.
Hmm... is below what you mean in summary?
dpcm_xxx is used to declare that the DAI/dailink is possible to use playback/capture. For example dpcm_playback means the DAI / dailink should playback-able, if not it is error.
xxx_only is used to limit the playback/capture. For example the DAI / dailink can use both playback and capture, but want to use playback only for some reasons, we can use playback_only.
So these are used for different purpose.
Hmm... I re-consider about it for many cases, and indeed these can't merge. But in such case, this feature is needed not only for DPCM ?
Now Jerome / Amadeusz are suggesting new idea to use bitfield idea. We can use it ?
#define PLAYBACK_VALID BIT(0) #define CAPTURE_VALID BIT(1)
#define PLAYBACK_LIMIT BIT(2) #define CAPTURE_LIMIT BIT(3)
I need to think about keeping compatibility, but maybe OK.
Thank you for your help !!
Best regards --- Renesas Electronics Ph.D. Kuninori Morimoto