https://github.com/USU-Robosub/Poseidon/tree/remote-control/kernel/drivers/PWM

On Sunday, December 20, 2015, Daniel <[email protected]> wrote:

> 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 a topic in the
> Google Groups "BeagleBoard" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/beagleboard/KMIXJPa4IQI/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected]
> <javascript:_e(%7B%7D,'cvml','beagleboard%[email protected]');>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to