On Fri, Aug 30, 2019 at 4:32 AM Sudeep Holla <sudeep.holla@xxxxxxx> wrote: > > On Fri, Aug 30, 2019 at 02:52:40AM -0500, Jassi Brar wrote: > > On Fri, Aug 30, 2019 at 2:37 AM Peng Fan <peng.fan@xxxxxxx> wrote: > > [...] > > > > > > > If I get your point correctly, > > > On UP, both could not be active. On SMP, tx/rx could be both active, anyway > > > this depends on secure firmware and Linux firmware design. > > > > > > Do you have any suggestions about arm,func-ids here? > > > > > I was thinking if this is just an instruction, why can't each channel > > be represented as a controller, i.e, have exactly one func-id per > > controller node. Define as many controllers as you need channels ? > > > > I might have missed to follow this, but what's the advantage of doing so ? > Which can't single controller instance deal with all the channels ? > There are many advantages ... 1) Design reflects the reality - two smc/hvc instructions have nothing tying them together. 2) Driver code becomes simpler - don't have to pre-populate channels, deducting from the size of func-ids array. 3) Driver becomes more flexible - We can have channels that pass func-id runtime and channels that pass via DT (if we must have the option of DT property). -jassi