am335x system upgrade set/get current cpufreq(二十一)

1      Scope of Document

This document describes am335x cpufreq technology insider.

2      Requiremen

2.1     Function Requirement

How to get current cpufreq, and to change cpufreq. Learning Processor Clocking Control(PPC) Interface Specification, learning APCI Specification.

2.2     Performance Requirement

NA

3      Functional Description

3.1     Functional Block Diagram

Am335x cpufreq be set by inner contex-M3,The inner contex-M3 running platform firmware. The platform firmware can be load , when booting kernel.

[    2.118896] Power Management for AM33XX family
[    2.127075] Trying to load am335x-pm-firmware.bin (60 secs timeout)
[    2.137084] Copied the M3 firmware to UMEM

3.2     PCC interface specification

3.2.1 Overview

The Processor Clocking Control (PCC) interface is implemented by platform firmware in
order to provide a channel for the Operating System to direct and
obtain performance
information on a per-processor basis in cases where the platform
firmware would
normally be directing the control of the processor performance. In
this model the
platform firmware remains in direct control of the processor
clocking control registers.
The Operating System computes the required performance for each
processor and
communicates this to the platform firmware via the PCC shared
memory interface. The
platform firmware is responsible for managing the hardware
clocking controls in order to
deliver the requested performance. The interface also provides the
capability for the
Operating System to obtain the actual performance level delivered.
In cases where the
platform is unable to meet the Operating System request, such as a
thermal or power
budget conditions, flags are set to indicate this to the Operating
System

The Processor Clocking Control
interface relies on a reserved area in the system memory
map for communications between the platform firmware and the
Operating System.

The shared memory region is a single header structure in memory.
The region of

Memory is specified in she SharedMemoryRegion field obtained ty
evaluating the PCCH() method. The region contains a haeder followed by one
input and ome output buffer for each logical processor.

3.2.2  PCC  interface header info

3.2.3 PCC  interface commad and alert mechanism.

Support command :

  1. Get Average Frequency
  2. Set Desired Frequency

Alert Mechanism:

  1. Operationg System to Platform Doorbell.
  2. Platform to Operating System Doorbell.

4      Porting

4.1    
Kernel porting

NA

4.2    
Application Interface

Set cpufreq mode:

原文地址:https://www.cnblogs.com/lianghong881018/p/11378104.html

时间: 2024-11-14 12:57:41

am335x system upgrade set/get current cpufreq(二十一)的相关文章

am335x system upgrade rootfs for dhcpcd cross compile(十三)

dhcpcd移植 [目的] 移植dhcpcd的目是在AM335X开发板上使用dhcp功能,获取WAN口设备的IP,并且可以通过参数指定其matric,matric值越小,其优先级越高.如设备可以以太网,WIFI,4G上网时,可定制外网功能,以太网优先级最高,WIFI次之,4G优先级最低. [环境] 1.  Ubuntu 16.04发行版 2.  MC183平台 3.  交叉编译器arm-linux-gnueabihf-gcc-4.7.3 [步骤] 1.下载dhcpcd-6.7.1.tar.gz源

am335x system upgrade usb wifi rtl8188eus(十九)

1      Scope of Document This document describes how to port rtl8188eus driver to linux 4.14.y design. 2      Requiremen 2.1     Function Requirement Suport usb wifi rtl8188eus working in sta mode under linux 4.14.y kernel version 2.2     Performance

微软云计算介绍与实践(实践之二十一)

接前面两篇,告诉大家一个坏消息和一个好消息:坏消息是本篇依旧环境搭建.配置准备工作,好消息是这是最后一篇. 一.数据仓库注册 小张下面注册数据仓库. 1.在System Center 2012 Service Manager控制台,转至管理 2.在管理概述页面,点击注册与服务管理数据仓库 3.在开始之前页面,选择下一步 4.在数据仓库页面,输入服务器名称ServiceMgrDW并选择Test Connection按钮 5.如果连接测试成功,请选择下一步 6.在认证页面,选择DW_ServiceM

企业搜索引擎开发之连接器connector(二十一)

从上文中的QueryTraverser对象的BatchResult runBatch(BatchSize batchSize)方法上溯到CancelableBatch类,该类实现了TimedCancelable接口,后者又extends了TimedCancelable接口,后者又extends了Cancelable接口,后者又extends了Runnable接口 Cancelable接口源码 /** * A {@link Runnable} that supports cancellation.

爪哇国新游记之二十一----快算24

四张牌,通过四则运算得到24,一个数限用一次,快者为胜. 代码: import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; /** * 快算24 * @author heyang * */ public class Caculator{ private double anticipate;// 预期结果 private double op1;// 操作数一

菜鸟学Java(二十一)——如何更好的进行单元测试——JUnit

测试在软件声明周期中的重要性,不用我多说想必大家也都非常清楚.软件测试有很多分类,从测试的方法上可分为:黑盒测试.白盒测试.静态测试.动态测试等:从软件开发的过程分为:单元测试.集成测试.确认测试.验收.回归等. 在众多的分类中,与开发人员关系最紧密的莫过于单元测试了.像其他种类的测试基本上都是由专门的测试人员来完成,只有单元测试是完全由开发人员来完成的.那么今天我们就来说说什么是单元测试,为什么要进行单元测试,以及如更好的何进行单元测试. 什么是单元测试? 单元测试(unit testing)

我的编程之路(二十一) 规范

不知不觉一周就过去了,这周细想真的没有做成什么,因为几乎都是做了改,改了做··· 1.代码规范 以前自认为自己很注重代码规范,但是没有想到自己项目组的开发会将代码规范审查的那么严谨,这突然让我想到之前说到程序员都喜欢追求完美,都喜欢自己和自己的风格一致,否则就会觉得别扭,不过与此不同,这是团队开发,代码规范是为了统一风格,便于别人的阅读与后人的修改与维护,虽然因为这我前前后后改了三次dao层的代码,一是要用公司封装的借口,二是要把异常处理都放在这一层或者service层,三是要用公司自己写的工具

QT开发(二十一)——QT布局管理器

QT开发(二十一)--QT布局管理器 一.布局管理器简介 QT中使用绝对定位的布局方式无法自适应窗口的变化. QT中提供了对界面组件进行布局管理的类,用于对界面组件进行管理,能够自动排列窗口中的界面组件,窗口大小变化后自动更新界面组件的大小. QLayout是QT中布局管理器的抽象基类,通过对QLayout的继承,实现了功能各异且互补的布局管理器. 布局管理器不是界面组件,而是界面组件的定位策略. 任意容器类型的组件都可以指定布局管理器. 同一个布局管理器管理中的组件拥有相同的父组件,在设置布局

Android学习路线(二十一)运用Fragment构建动态UI——创建一个Fragment

你可以把fragment看成是activity的模块化部分,它拥有自己的生命周期,接受它自己的输入事件,你可以在activity运行时添加或者删除它(有点像是一个"子activity",你可以在不同的activity中重用它).本课将向你展示如何使用Support Libaray继承 Fragment 类来让你的应用能够兼容正在运行Android 1.6的设备. 提示: 如果你决定你的应用需求的最低API级别是11或者更高,那么你不需要使用Support Library,你可以直接使用