首页 > 系统相关 >Linux之PWM风扇驱动

Linux之PWM风扇驱动

时间:2023-11-09 16:31:52浏览次数:36  
标签:pwm val hwmon ctx ret 风扇 Linux PWM


Linux之PWM风扇驱动

背景

该驱动主要是用于PWM模块去驱动散热风扇,使用通用的PWM接口,只要主控Soc的PWM模块使用的是标准通用的PWM框架,则可以适用于任何主控Soc,与具体的硬件无关。

用户空间接口

驱动程序给用户空间提供了相应hwmon的sysfs接口: /sys/class/hwmon/hwmon-x/,主要是对PWM的读写操作和风扇转速的读操作:

C

static int pwm_fan_write(struct device *dev, enum hwmon_sensor_types type,
			 u32 attr, int channel, long val)
{
    struct pwm_fan_ctx *ctx = dev_get_drvdata(dev);
    int ret;

    if (val < 0 || val > MAX_PWM)
        return -EINVAL;

    ret = __set_pwm(ctx, val);
    if (ret)
        return ret;

    pwm_fan_update_state(ctx, val);
    return 0;
}


标签:pwm,val,hwmon,ctx,ret,风扇,Linux,PWM
From: https://blog.51cto.com/winter91/8284498

相关文章

  • Linux之IR驱动
    Linux之IR驱动背景在光谱中波长自760nm至400um的电磁波称为红外线,它是一种不可见光。红外遥控成本很低,以前广泛应用在电视,空调等电器的控制上面,现在随着蓝牙遥控器慢慢普及,红外遥控越来越少,但在某些场景,还保留着红外通信红外属于media子系统里面的rc(remotecontrol)模块,所以相关驱......
  • Linux程序崩溃自启动方法
     linux进程挂掉后,可以通过配置systemd来自动启动服务1.创建systemd服务文件,例如:huyang.service,需要放置在系统文件夹/etc/systemd/system2.编辑文件,填写详细信息3.操作systemd服务[Unit]Description=huyangSCRSserver#对服务的描述After=netw......
  • Linux关闭防火墙命令
    1:查看防火状态systemctlstatusfirewalldservice iptables status2:暂时关闭防火墙systemctlstopfirewalldservice iptables stop3:永久关闭防火墙systemctldisablefirewalldchkconfigiptablesoff4:重启防火墙systemctlenablefirewalldserviceiptablesrestart ......
  • 防火墙的限制规则2(Linux)
    一:设置防火墙的规则2firewalld通过守护进程(usr/sbin/firewalld)、配置文件(usr/lib/firewalld、/etc/firewalld)、配置命令forewalld-cmd(/usr/sbin/firewalld-cmd)和GUI配置应用程序firewall-config(/use/sbin/firewall-config)来提供服务。在firewalld服务中,有几种类型的......
  • Linux 服务器如何实现数据同步?
    一、简介1认识Rsync(remotesynchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。Rsync使用所谓的“Rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快;Rsync支持大多数的类Unix系统......
  • 【Linux上机实验】新实验五 shell编程
    【前言】愿,所有相遇,都恰逢其时!愿,此刻心头,正满怀欣喜!---你好,朋友,欢迎你! ---对此篇博客中有任何问题和不懂的可以咨询QQ:27595909051.编写脚本,从键盘输入10个数,并计算这些数的和(用数组存放20个数)。1.输入visum.sh,创建一个名为"sum.sh"的文件......
  • Linux第十一周学习报告
    进程管道 管道也是一种重定向,重定向字符控制输出到文件,管道控制输出到其他程序;它的作用是把上一个进程的输出作为下一个进程的输入,可以把多个进程连接到一起。 1、将etc/passwd中的用户按照UID数值大小排序,显示前三行,其中“-t”指定字段分隔符。“-k”指定字段,“-n”表示按......
  • Linux杂项
    groups可以查看用户组具体的用法可以参考终端的指南。usermod-aGsudo<用户名>将用户添加到sudo组。将用户添加到指定组,这样就拥有了权限。scp传输文件:我自己使用成功的案例:scp-rC:\zzk\env\video\[email protected]:/home/test/zzk/[email protected]:/......
  • Dalvik虚拟机是在Linux内核上面运行的吗?为什么能执行安卓APK程序?
    Dalvik虚拟机确实是在Linux内核之上运行的。它是安卓系统的关键组件,专门设计来执行APK文件中的代码。这里是它的工作原理和一个生活中的例子:工作原理:基于Linux内核:安卓系统基于Linux内核,这为安卓设备提供了底层功能,如硬件抽象、网络通信、安全机制等。Dalvik虚拟机:在Linux......
  • Linux第十周学习报告
    本周学习的是上周没有学完的I/O重定向(老师把上节课讲过的一部分又讲了一遍,这里重复的就不写进来了)1、在第三个终端中使用date>/dev/pts/4使其重定向到终端四,在终端四中输出时间  2、改变描述符为2的文件的输出方向,date命令是正确的,执行结果在终端显示;输入命令如果是错误......