Monday, June 21, 2010

Week 4 report

Report for the week  14-6-10 to 21-6-10

Have been able to implement a couple of things this week.

Status
*Previously the driver had to be reloaded in order to change the frequency of the PWM signal. Managed to fix this. Frequency is a module parameter and a sysfs entry is generated for it under
/sys/module/pwm/parameters/frequency
This allows changing frequency. In order to do this it just required changing permissions for the parameter (from S_IRUGO to S_IWUSR) and some polling to note the frequency changes.
This is still a bit dirty and I have been told to implement this as a ioctl call. But currently this hack works.

*A big modification is to try and modify the existing driver to allow for multiple PWMs i.e PWM9,PWM10 or PWM11. I am trying to initiate these as instances of the same driver and this has popped up a few bugs in the code. These should get fixed in a day or so.

*Did some code cleanup and also added more instructions for using and building the driver.

Plans
* Implement building the driver during kernel compilation making it a statically loadable module.
* Support switching PWM10 and 11 to use the 13MHz clock as FCLK instead of the default 32kHz clock if the user chooses. This gives more granularity for duty-cycle adjustments.

Risks
* Last week's risks still linger on.

No comments:

Post a Comment