Re: [PATCH v3 1/3] omap: opp: add OMAP3 OPP table data and common init

Thomas Petazzoni
2010-11-16T13:20:35Z

Hello,

On Tue, 16 Nov 2010 07:10:36 -0600
Nishanth Menon <nm@ti.com> wrote:

> I feel you may have misunderstood the code, we DONOT oblige all boards
> to *have* to call omapX_init_opp. It is a device_initcall - so for the
> boards that dont call it, device_initcall will trigger and initialzie
> it. the hooks for the customization of the OPPs is in OPP layer itself.

This is exactly what I have understood.

> the need we satisfy is this: if you need to support two sets of boards:
> a) boards that are happy with the defaults - most of the boards - dont
> do anything in the board file. (device_init_call with auto register the
> defaults)
> b) boards that need customization - these guys need to call
> omapX_init_opp(to register the defaults) before customizing the defaults.
>
> Does this explain the code and reason for the logic? if you do have a
> better mechanism, lets know.

Yes, it explains the code and reason for the logic, but still doesn't
make it pretty :-)

> > would prevent you from having no OPP table (the case where a NULL OPP
> > table is passed is tested *before* in omapX_init_opp()).
> HUH?? NULL table to a static function - what code are you talking
> about?? why are you so behind BUG_ON, when there are valid reasons for
> reentry into code.

In the current design, yes, there are indeed valid reasons for reentry
into the omapX_init_opp() function, and that's exactly the point I'm
critizicing here.

Regards!

Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.