Dear TekuConcept, Could you please share your kernel module that enable Time Based Clocks of PWMSS? Thanks.
在 2015年4月16日星期四 UTC+8下午9:29:59,TekuConcept写道: > > > - config-pin [pin] [state] will mux the pins to the PWM Subsystems > - Modifying am33xx.dtsi under the dtb-rebuilder project such that: > epwmss0, epwmss1, and epwmss2 status = "okay", and their children, > ehrpwm0, > ehrpwm1, and erhpwm2 status = "okay", will enable the system clocks for > each subsystem. This equivalent to setting the following registers to the > given values in their respective order: > > reg[0x44E00000] = 0x0 *# CM_PER_L4L3_CLKSTCTRL.CLKTRCTRL = NO_SLEEP* > reg[0x44E000D4] = 0x2* # CM_PER_EPWMSS0_CLKCTRL.MODULEMODE = ENABLE* > reg[0x44E000CC] = 0x2 *# CM_PER_EPWMSS1_CLKCTRL.MODULEMODE = ENABLE* > reg[0x44E000D8] = 0x2* # CM_PER_EPWMSS2_CLKCTRL.MODULEMODE = ENABLE* > > - However, after all this, the PWM subsystems will still not work > because the Time Based Clocks are not enabled. To enable them, one would > need kernel elevated privileges: such as modifying the register through a > simple kernel module. > > reg[0x44E10664] = 0x7 # CONTROL_MODULE.pwmss_ctrl = pwmss0_tbclken | > (pwmss1_tbclken << 1) | (pwmss2_tbclken << 2) > > Using a simple kernel module I built for hardware debugging, I was able to > confirmed this. (Look at ioremap & iounmap under kernel module development) > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.