On 02-03-22, 08:50, Lukasz Luba wrote: > If you like, I can introduce new dual-macro implementation > in energy_modle.h which would sole this issue: > > ifdef EM: > #define EM_SET_ACTIVE_POWER_CB(em_cb, cb) ((em_cb).active_power = cb) > > ifndef EM: > #define EM_SET_ACTIVE_POWER_CB(em_cb, cb) do { } while (0) > > > Then we would keep the single call to the registration EM and > we would have: > > if (_of_has_opp_microwatt_property(dev)) { > EM_SET_ACTIVE_POWER_CB(em_cb, _get_dt_power); > goto register_em; > } > > > > EM_SET_ACTIVE_POWER_CB(em_cb, _get_power); > > register_em: > ret = em_dev_register_perf_domain(dev, nr_opp, &em_cb, cpus, true); > > > I can do that, please let me know. That will work as well. -- viresh