In reality, as noted David Brownell on LAKML, there is no API consistency.
The driver has no way to know whether clk API is implemented at all or whether
the "optional" functions do exist.
Moreover clocks aren't limited only to platform-specific code. As an
example of the in-tree driver that will benefit from clocklib you can
check drivers/mfd/sm501.c which contains it's own set of functions
to manage clocks.
That's one of the initial reasons of this patchserie: I have a device
that can be installed on several platforms. And I want for this device
to provide clocks to some other devices.
Simply saying "Oh, things are different" is behaving like a ostrich:
hiding a head in the sand.
As most generification patches do, this one has it's drawbacks, but
they are not so big, as you describe.
--
With best wishes
Dmitry
--