I have a question about building a kernel driver for my PRU software pwm that mimics the hardware pwm sysfs interface. *Background:* I have a simple kernel driver[1] now working with my PRU based pwd code. Once you have the code running on the PRU you can: bone$ *insmod pwm.ko channel=1* bone$ *cd /sys/kernel/pwm/pwm1* bone$ *ls* *duty_cycle enable period* bone$ *echo 2000 > period* bone$ *echo 1000 > duty_cycle*
Now you have a pwm signal on channel 1 with a period of 2000ns and an on time of 1000 ns. The hardware pwms appear in /sys/class/pwm. You can use them via: bone$ *cd /sys/class/pwm/pwmchip0* bone$ *echo 0 > export* bone$ *cd pwm0* bone$ *echo 2000 > period* bone$ *echo 1000 > duty_cycle* *The question:* How do I build a kernel module so my software pwms will appear along with the hardware pwms? That is, I want my software pwms to appear as *pwmchipX* and then you could: bone$ *cd /sys/class/pwm/pwmchipX* bone$ *echo 0 > export* bone$ *cd pwm0* bone$ *echo 2000 > period* bone$ *echo 1000 > duty_cycle* To run the PRU pwms. Does anyone have pointers to kernel tutorials to do this? Thanks... --Mark [1] https://github.com/MarkAYoder/BeagleBoard-exercises/tree/master/pru/examples/pwm/kernel -- 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]. To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/b8ef1af3-914f-48cd-b555-22b47dee072f%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
