Hi Mark
Thank you for clearing the topics. I think I could understand Rob and your expectation.
It's more about making sure that new users that currently use simple-card are using audio-graph-card instead - we need to keep simple-card around for existing users (or at least the binding but probably it's more effort than it's worth to merge the binding parsing code elsewhere) but we should be avoiding adding new users of it. I've been pushing people to use audio-graph-card for a while, TBH we should probably just go ahead and flag simple-card as deprecated in the binding now since I don't think there's any reason anyone is forced to use it at this point.
(snip)
Why do we need these changes? I'm not wild about a new generic binding replacing an existing one which only has 2 or 3 users IIRC. Plus there's already the Renesas variant. (On the flip side, only a few users, easier to deprecate the old binding.)
Sorry I don't understand
- Who is "2 or 3 users" ?
Just that there's not that many users of the existing audio-graph-card (though it's a bit more than 2 or 3 and it's newer stuff rather than old).
(snip)
I think what Rob is looking for here is a more detailed description of what the problems are with the existing binding that require a new binding - what's driving these big changes? TBH this is part of why I've been holding off on review, I need to get my head round why we can't fix the existing binding in place.
OK, let's cleanup the problem.
O : supported - : not supported x : Annotated
simple-card O: Normal connection -: DPCM -: Multi CPU/Codec -: Codec2Codec
audio-graph-card (A) O: Normal connection (B) x: DPCM -: Multi CPU/Codec -: Codec2Codec
x: Tegra uses is as customize audio-graph-card
audio-graph-card2 O: Normal connection O: DPCM O: Multi CPU/Codec O: Codec2Codec
We need to keep simple-card, I think there is no discussion is needed here.
About audio-graph-card vs audio-graph-card2, I think keeping (A) only on audio-graph-card2 is not super difficult (But some message will be indicated. see below). Supporting (B) on audio-graph-card2 is difficult.
I'm not sure detail, but we can do like this ?
step 1) - add audio-graph-card2 which have (A) compatibility. - indicate "audio-graph-card will be deprecated" on audio-graph-card
step 2) - Tegra switch to use audio-graph-card2 - confirm that all existing audio-graph-card user have no problem on audio-graph-card2 too.
step 3) - remove audio-graph-card
My concerns are...
- I'm not sure how DT is strict. If we removed audio-graph-card, but user uses old Tegra DT on it... We can't remove audio-graph-card forever if DT was super strict (?).
- The naming of audio-graph-card vs audio-graph-card2 driver file. because audio-graph-card will be removed later.
- audio-graph-card2 can keep (A) compatible, but some features are not recommended. Existing user will get such message. And because of this compatibility, audio-graph-card2 can't remove this "un-recommended" feature.
Thank you for your help !!
Best regards --- Kuninori Morimoto