现象
测试部报了一个bug,说是加载pwm驱动之后,sysfs下的pwm阶段占空比、周期等数值不是dts配置的值。在dts里配置脉宽为5000纳秒,周期10000纳秒,并使能,但是在*/sys/devices/platform/pwm0/pwm0pwmchip0/pwm0*目录,查看duty_cycle、enable 和period的值都是0,跟预期不符合。
问题分析
查看probe函数,在probe函数最后,配置了占空比、周期和使能,然后使用逻辑分析仪抓取PWM波,抓到的PWM波形频率、占空比正确。然后进入到/sys/devices/platform/pwm0/pwm0pwmchip0/pwm0目录,查看duty_cycle、enable 和period的值都是0,跟预期不符合。
既然输出是正确的,只是sysfs下查看文件值为0,大胆猜测只是某