[PATCH v3 0/4] Add PWM clock support for bcm2835

Martin Sperl martin at sperl.org
Fri Jan 8 01:21:47 PST 2016

Hi Remi!

> On 06.12.2015, at 17:22, Remi Pommarel <repk at triplefau.lt> wrote:
> Hi,
> This patchset adds support for pwm clock. At boot, this clock does not have a
> default parent nor a default rate set. Thus we should be able to change its
> parent to get this clock working. The current clock implementation is using a
> mux to select the parent, but these clocks need to add a password (0x5a) in
> higher register bits when changing parent. So a generic mux cannot be used
> here.
> The two first patches fix the clock parent selection, while the last ones are
> actually adding the pwm clock registration.
> Changes since v1:
> 	- determine_rate now based its parent selection upon divided rate
> 	  instead of the parent one
> 	- bcm2835_clock_choose_div has been modified to produce an avarage rate
> 	  lower or equal to the requested one
> 	- devicetree modifications have removed to be send in another patch
> Changes since v2:
> 	- Remove useless variable and include
> 	- Make bcm2835_clock_choose_div() divisor round up ability optional
> 	- Set rate in bcm2835_determine_rate()
> 	- Add device tree modification in a separate patch
Is there any driver that is currently making use of this (in or out of tree)?

I am working on getting the i2s driver back into working order
with the clock-framework, so I wonder how I could use that.

As I2S is either using PPL or OSC as parent I was thinking of using this
patchset of yours as a basis to allow this selection to work properly.

Any ideas about using MASH - I2S makes use of this as well and I would
assume that PWM could also make use of this feature…


More information about the linux-rpi-kernel mailing list