Since we can extend the list of clocks it doesn't seem like
there's much issue here, especially if some of them are
optional?

Yes, there's certainly a way to extend the binding in a
backwards-compatible way.
However, I have seen in Rob and/or Grant push back on not fully
defining bindings in the past - i.e. actively planning to
initially create a minimal binding and extend it in the future,
rather than completely defining it up-front.

That sounds like the current stuff with a minimal definition is
OK?

I'm personally OK with defining a minimal binding first and extending
it later. But, I'm worried if when we actually try to extend the
binding later, we'll get push-back.

Yes, for a given controller there is lots of input sources which can be
mux but we can not use all option as some of source is changeable based
on DVFS policy or other constraints. Like one of controller has the
input clock source as PLLC which is again used by CPU and it varies for
requested CPU frequency. In this context, we would like to not choose
PLLC as clock source for given controller.

So we may need to provide the list of valid clock source/option from DT
file and clock muxing should be done from that source list only in place
of super set supported by SoCs.