On Mon, Oct 16, 2023 at 12:46:29AM +0000, Kuninori Morimoto wrote: > > Hi Conor > > > > Some of this explanation needs to go into the binding - someone reading > > > the binding should really be able to figure out what numbers to put in > > > there without looking at the code. > > > > Absolutely :) > > Indeed :) will do in v4 > > > > > ch-maps = <0 0 1> means, > > > > cpu0 <-> codec0 > > > > cpu1 <-> codec0 > > > > cpu2 <-> codec1 > > > > What happens when you want to convey that codec0 & codec1 are both > > connected to cpu0 & codec2 is connected to cpu1? > > How would that be described in a DT? > > Or is that not something anyone would even want to do? > > In such case, ch-maps is from codec. it will be like below. > It is judged by number of cpu vs codec. [PATCH 3/4] has both case sample. > > cpu >= codec : CPU base > cpu < codec : Codec base > > ch-maps = <0 0 1> > codec0 <-> cpu0 > codec1 <-> cpu0 > codec2 <-> cpu1 That seems like a very unintuitive interface. If there were 32 CPUs and 30 codecs, then it'd be very inconvenient for a human reader to grok the configuration. CPUs were to be disabled in the DT, could the meaning of the property invert? I am not really the best when it comes to audio (or media) bindings, but I am wondering if a phandle based approach would be better, where the codecs have phandles for their associated CPUs. Maybe Mark, Rob etc could comment if doing that sort of thing is not feasible. Cheers, Conor.
Attachment:
signature.asc
Description: PGP signature