1 查看传感器信息

通过qemu以本地端口映射方式运行编译后的镜像,访问bmcweb页面的网址是:https://localhost:2443/,如果想用IP地址启动请参考:openbmc开发4:启动运行编译镜像。(这里以网桥方式启动,以ip地址方式访问BMC)

登录后bmcweb后,选择Health,然后点击Sensor,可以看到传感器信息。

发现并没与风扇信息。

2 查看传感器配置文件

进入meta-live/meta-test/recipes-phosphor/sensors目录,然后看一下目录下的文件,如图所示,发现没有fan传感器的配置文件。

3 增加fan传感器信息

3.1 修改设备树

如果已经提取过内核源码,直接修改设备树即可。

提取linux内核源码:

devtool modify linux-aspee

该命令会在build/workspace/下生成如下配置文件和源码文件。

修改build/sources/linux-aspee/arch/arm/boot/dts/xxx.dts文件:

xxx.dts文件是machinie/<machine>.cfg配置文件中“KERNEL_DEVICETREE”字段所指定,修改内核源码中的文件要和该字段指定的dtb相匹配。我这里修改的是aspeed-bmc-opp-test.dts文件,增加fan控制通道、这里打开了4个控制通道。

3.2 增加配置文件

在recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/ahb 文件夹下增加一个pwm-tacho-controller@1e786000.conf文件,文件内容如下,这里增加了4个fan传信息。如需增加更多fan信息,需要先设备树中添加。

增加配置文件后的sensors下的目录结构:

3.3 修改recipes

修改recipes-phosphor/sensors/phosphor-hwmon_%.bbappend文件,增加如下内容,以在bmc镜像中增加pwm-tacho-controller@1e786000.conf文件。如果按照“1”添加后编译报错(是由于空格或者table造成),请按照“2”添加,去掉“2”前面的#号即可,效果是一样的。

3.4 从新编译镜像

为了确保生效先执行清除命令

bitbake obmc-phosphor-image -c clean

然后在执行编译命令

bitbake obmc-phosphor-image

4 验证结果

启动编译后的镜像,登录web,进入sensor页面,发现也没有fan信息,但是有一个“Critical”报错信息。

点击右上角的“Critical”,可以看到有四个严厉告警信息。由于虚拟机没有风扇,没有获取到风扇转速信息,所以报错。

5 增加风扇感器过程

1、配置文件名

<path>/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/ahb/apb/pwm-tacho-controller@1e786000.conf

1e786000 ——表示aspeed的PWM控制器寄存器地址

2、配置文件参数

LABEL_fanx——是显示名称

PWM_TARGET_fanx——pwm通道几控制fanx

WARNLO_fanx——低告警值

WARNHI_fanx——高告警值

CRITHI_fanx——严重低告警值

CRITLO_fanx——严重高告警值

后面的告警值是实际值乘以1000,即放大了1000倍,系统在计算时候会自行转换。

3、配置文件在镜像中位置

配置文件在bmc镜像文件系统中的路径:/etc/default/obmc/hwmon/ahb/apb/ pwm-tacho-controller@1e786000.conf

4、fan转速和控制

Bmc的rpm采集的对应通道的风扇转速在:/sys/class/hwmon/hwmon0/fanx_input文件中,pwmx输出pwm信号控制风扇转速。

改变/sys/class/hwmon/hwmon0/pwmx的值即可配置风扇转速,该值范围是0~255,实际配置的是占空比。

echo 128 > /sys/class/hwmon/hwmon0/pwm1

查看风扇转速

cat /sys/class/hwmon/hwmon0/fan1_input

6、工作方式

在内核启动前会先读取dtb设备数中的设备,按照设备树中的参数创建fan设备,内核启动加载驱动后,在文件系统中创建/sys/class/hwmon0/fanx_input文件,这里可以看到一共创建了fan1_input到fan4_input四个文件,这是在设备树中打开的采集通道。最后,启动phosphor-howmon-readd程序,读取/etc/default/obmc/hwmon/ahb/apb/ pwm-tacho-controller@1e786000.conf下的配置文件和/sys/class/hwmon/hwmon0/fanx_input文件,即可在web页面显示fan信息。

7 创建风扇传感器步骤

1、修改dts,打开对应的fan控制通道。

2、在/recipes-phosphor/sensors//phosphor-hwmon/obmc/hwmon/ahb/apb/下按照格式增加新的配置文件pwm-tacho-controller@1e786000.conf。

3、修改recipes文件,使编译后的镜像中添加改配置文件。

4、重新编译镜像。

OpenBmc开发13:添加传感器(fan)相关推荐

  1. openbmc开发28:fru配置和测试

    在openbmc开发23:添加fru信息到ipmi中说明了如何将fru信息添加到ipmi中,本文将讲述如何生成fru以及fru信息获取展示以及修改等. 1 yaml配置文件转换成cpp 在软件包下有一 ...

  2. 不编程也开发13个无需编程的iOS开发工具

    最近很多人都想自己开发iPhone软件, 但并非每个人都知道如何编写相关代码.还好,有很多工具可以帮助非开发人员创建自己的iPhone软件,甚至不需要编程和脚本知识.这些工具有的专为小公 司打造,有的 ...

  3. Android移动开发视频之传感器应用开发

    视频课:零基础学安卓Android移动开发 学习内容 Ø 传感器的基本概念 Ø Android中常见的传感器 Ø 如何在Android中开发传感器应用 能力目标 Ø 了解传感器的基本概念 Ø 掌握An ...

  4. 【OpenBMC 系列】1.OpenBMC 开发环境搭建

    目标: 安装Linux 系统,推荐使用Ubuntu18+,作为开发环境. 安装Qemu 作为bmc运行的虚拟机. 受众:熟悉 Linux 和 BMC 的程序员 先决条件:当前的 Linux.Mac 或 ...

  5. AndroidTV开发13——实现TV端大图浏览

    AndroidTV开发13--实现TV端大图浏览 最近TV开发需要加载的图片很长,大小也很大,并且还不允许压缩.比如显示:世界地图.清明上河图.微博长图.海报.活动照片等. 那么对于这种需求,该如何做 ...

  6. ROS URDF添加传感器模型

    ROS URDF添加传感器模型 添加传感器模型 添加摄像头 对应的模型文件是camera.xacro, 内容如下 <?xml version="1.0"?> <r ...

  7. Java后台开发Tomcat添加https支持小程序开发过程

    文章原文:blog.ouyangsihai.cn >> Java后台开发Tomcat添加https支持小程序开发过程 1 给自己的域名申请证书 注意:申请好了如果不是在腾讯注册的域名,不会 ...

  8. 基于ZFAKA二次开发,添加PayJS支付渠道

    基于ZFAKA二次开发,添加PayJS支付渠道 项目地址:https://github.com/hiyouli/payjs-for-zfaka 关于ZFAKA,请移步:ZFAKA 免费.安全.稳定.高 ...

  9. Linux嵌入式驱动开发13——ioctl接口(gpio控制使用)

    文章目录 全系列传送门 引言 什么是unlocked_ioctl接口? unlocked_ioctl和read/write函数有什么相同和不同 unlocked_ioctl接口命令规则 命令的合成宏与 ...

  10. openbmc开发-->aspeed-->slave-i2c[ast2400]

    openbmc开发-->aspeed-->slave-i2c[ast2400] 前言 ast2400 内核修改启用i2c从机模拟eeprom 测试驱动 ast2400 i2c-aspeed ...

最新文章

  1. 开源游戏机java模拟器_最棒的 7 款开源终端模拟器
  2. 4、提高插入数据的速度
  3. 设置Web页面试用手机浏览器(iphone)
  4. 阿里云宣布与国内规模最大的汽车企业上汽集团合作
  5. 物资管理系统c语言运行程序,C语言实现仓库物资管理系统.pdf
  6. 论文赏析[EMNLP18]针对自顶向下和中序移进归约成分句法分析的Dynamic Oracles
  7. 洛谷P4135 作诗 --分块基础
  8. Word字体样式及样式库的使用
  9. 《胡雪岩 1》——读书笔记
  10. DirectX11 SDK下载地址
  11. Python 飞机航班案例分析
  12. windows server 2016打开服务器管理器和启用或关闭windows功能报.net fr
  13. Java程序监控工具
  14. atcoder abc284 E
  15. 对随机变量值域的思考
  16. 三菱系统四轴正反转参数_三菱第四轴参数.docx
  17. 计算机科学与技术偏文还是偏理,韶关、惠州学院偏文还是偏理
  18. MATLAB GUI界面编程——一些细节问题
  19. Java——类变量和实例变量的区别
  20. 柠檬水找零(C++)

热门文章

  1. 德州农工大学计算机专业研究生,德州农工大学计算机专业
  2. Macs Fan Control 官方正版中文网站 控制苹果电脑上风扇工具软件
  3. WRF-Chem笔记——MOZBC边界场制作
  4. 关于mscorsvw.exe
  5. mycat + keepalived + haproxy + mmm
  6. @Deprecated注解
  7. 校园APP开发的优势和特点
  8. zoj3551 Bloodsucker//概率dp
  9. java epoch_获取Java中的Epoch的天数,周数和月份
  10. 进行淘宝商品比价的定向爬虫