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 > > 1) the dais included in the dailink (the (A) part above) > 2) 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