Linux kernel Exynos4_PPMU结构说明

Linux kernel Exynos4_PPMU结构说明,linux-kernel,arm,driver,linux-device-driver,Linux Kernel,Arm,Driver,Linux Device Driver,我正在查看Linux内核驱动程序/devfreq中的exynos4_bus.c文件,并遇到以下结构: struct exynos4_ppmu { void __iomem *hw_base; unsigned int ccnt; unsigned int event; unsigned int count[PPMU_PMNCNT_MAX]; bool ccnt_overflow; bool count_overflow[PPMU_PMNCNT_MA

我正在查看Linux内核驱动程序/devfreq中的exynos4_bus.c文件,并遇到以下结构:

struct exynos4_ppmu {
    void __iomem *hw_base;
    unsigned int ccnt;
    unsigned int event;
    unsigned int count[PPMU_PMNCNT_MAX];
    bool ccnt_overflow;
    bool count_overflow[PPMU_PMNCNT_MAX];
};
我想知道是否有人能向我大致解释一下PPMU到底是什么,以及它在这段代码中的作用

根据,这似乎是三星ARM处理器的IP,与内存/总线频率有关。在此结构中收集统计信息,例如exynos4_read_ppmu,以确定电压和频率的执行情况。例如,请参见exynos4\u get\u busier\u dmc。我不认为DVFS是由控制器或软件自动控制的;我找不到公开的数据表