> -----Original Message-----
> From: Burakov, Anatoly <anatoly.bura...@intel.com>
> Sent: Thursday, April 22, 2021 6:00 PM
> To: Richael Zhuang <richael.zhu...@arm.com>; dev@dpdk.org
> Cc: nd <n...@arm.com>; David Hunt <david.h...@intel.com>
> Subject: Re: [dpdk-dev] [PATCH v1 1/1] power: add support for cppc cpufreq
> 
> On 22-Apr-21 10:29 AM, Richael Zhuang wrote:
> >
> >
> >> -----Original Message-----
> >> From: Burakov, Anatoly <anatoly.bura...@intel.com>
> >> Sent: Thursday, April 22, 2021 5:06 PM
> >> To: Richael Zhuang <richael.zhu...@arm.com>; dev@dpdk.org
> >> Cc: nd <n...@arm.com>; David Hunt <david.h...@intel.com>
> >> Subject: Re: [dpdk-dev] [PATCH v1 1/1] power: add support for cppc
> >> cpufreq
> >>
> >> On 22-Apr-21 7:15 AM, Richael Zhuang wrote:
> >>> Currently in DPDK only acpi_cpufreq and pstate_cpufreq drivers are
> >>> supported, which are both not available on arm64 platforms. Add
> >>> support for cppc_cpufreq driver which works on most arm64 platforms.
> >>>
> >>> Signed-off-by: Richael Zhuang <richael.zhu...@arm.com>
> >>> ---
> >>
> >> Just a general note: this looks like a copy-paste of pstate code.
> >> Which is perfectly fine, except that we can do better than copying
> >> some faults of the pstate code to other drivers. I've submitted a
> >> patch [1] attempting to fix some of the pressing issues and code
> >> duplication in pstate driver, but i'm sure with a fresh driver, you
> >> can do even better :)
> >>
> >> [1]
> >> http://patches.dpdk.org/project/dpdk/patch/20210402092701.258316-1-
> >> anatoly.bura...@intel.com/
> >>
> >> --
> >> Thanks,
> >> Anatoly
> >
> > For CPPC is defined in acpi v5.0+ spec,  I reused most code in acpi_cpufreq
> to get a quick workable version on our platform with only cppc driver. I have
> verified  its basic functions. If you find some problems please help to point
> out thus I can rework it. Thanks .
> >
> > Best Regards,
> > Richael
> >
> 
> Well, pstate code was copied from ACPI so it does share the same flaws:
> 
> - Lots of code duplication (e.g. snprintf for filename, fopen sequences,
> etc.)
> - Confusing and bug-prone error handling (e.g. return macros in the middle
> of a function)
> - Mixing power management logic and gory details of string handling
> 
> Good examples of the above are in your `power_check_turbo()` function -
> lots of string handling code interspersed with file opens, and actual logic of
> power management.
> 
> Please see the patch i linked earlier [1] to understand what kind of changes
> i'm suggesting. Perhaps you could do even better :)
> 
> [1]
> http://patches.dpdk.org/project/dpdk/patch/20210402092701.258316-1-
> anatoly.bura...@intel.com/
> 
> --
> Thanks,
> Anatoly
Thanks. I'll rework it to make it look better.

Best Regards,
Richael

Reply via email to