Re: [PATCH 1/3] ARM: dts: Update board files for pwm support

From: Tony Prisk
Date: Fri Oct 19 2012 - 18:37:33 EST


On Fri, 2012-10-19 at 23:38 +1300, Tony Prisk wrote:
> This patch adds pwm support to arch-vt8500 board files, and adds
> the use-case of pwm-backlight.
>
> Signed-off-by: Tony Prisk <linux@xxxxxxxxxxxxxxx>
> ---
> arch/arm/boot/dts/vt8500-bv07.dts | 8 ++++++++
> arch/arm/boot/dts/vt8500.dtsi | 29 +++++++++++++++++++++++++++++
> arch/arm/boot/dts/wm8505-ref.dts | 8 ++++++++
> arch/arm/boot/dts/wm8505.dtsi | 29 +++++++++++++++++++++++++++++
> arch/arm/boot/dts/wm8650-mid.dts | 8 ++++++++
> arch/arm/boot/dts/wm8650.dtsi | 17 +++++++++++++----
> 6 files changed, 95 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/boot/dts/vt8500-bv07.dts b/arch/arm/boot/dts/vt8500-bv07.dts
> index 567cf4e..3cba367 100644
> --- a/arch/arm/boot/dts/vt8500-bv07.dts
> +++ b/arch/arm/boot/dts/vt8500-bv07.dts
> @@ -33,4 +33,12 @@
> };
> };
> };
> +
> + backlight {
> + compatible = "pwm-backlight";
> + pwms = <&pwm 0 50000>;
> +
> + brightness-levels = <0 4 8 16 32 64 128 255>;
> + default-brightness-level = <5>;
> + };
> };
> diff --git a/arch/arm/boot/dts/vt8500.dtsi b/arch/arm/boot/dts/vt8500.dtsi
> index d8645e9..e196b2e 100644
> --- a/arch/arm/boot/dts/vt8500.dtsi
> +++ b/arch/arm/boot/dts/vt8500.dtsi
> @@ -40,14 +40,43 @@
> #address-cells = <1>;
> #size-cells = <0>;
>
> + ref25: ref25M {
> + #clock-cells = <0>;
> + compatible = "fixed-clock";
> + clock-frequency = <25000000>;
> + };
> +
> ref24: ref24M {
> #clock-cells = <0>;
> compatible = "fixed-clock";
> clock-frequency = <24000000>;
> };
> +
> + pllb: pllb {
> + #clock-cells = <0>;
> + compatible = "via,vt8500-pll-clock";
> + clocks = <&ref25>;
> + reg = <0x204>;
> + };
> +
> + clkpwm: pwm {
> + #clock-cells = <0>;
> + compatible = "via,vt8500-device-clock";
> + clocks = <&pllb>;
> + divisor-reg = <0x348>;
> + enable-reg = <0x250>;
> + enable-bit = <14>;
> + };
> };
> };
>
> + pwm: pwm@d8220000 {
> + #pwm-cells = <2>;
> + compatible = "via,vt8500-pwm";
> + reg = <0xd8220000 0x100>;
> + clocks = <&clkpwm>;
> + };
> +
> timer@d8130100 {
> compatible = "via,vt8500-timer";
> reg = <0xd8130100 0x28>;
> diff --git a/arch/arm/boot/dts/wm8505-ref.dts b/arch/arm/boot/dts/wm8505-ref.dts
> index fd4e248..f51c0ed 100644
> --- a/arch/arm/boot/dts/wm8505-ref.dts
> +++ b/arch/arm/boot/dts/wm8505-ref.dts
> @@ -33,4 +33,12 @@
> };
> };
> };
> +
> + backlight {
> + compatible = "pwm-backlight";
> + pwms = <&pwm 0 50000>;
> +
> + brightness-levels = <0 4 8 16 32 64 128 255>;
> + default-brightness-level = <5>;
> + };
> };
> diff --git a/arch/arm/boot/dts/wm8505.dtsi b/arch/arm/boot/dts/wm8505.dtsi
> index b459691..83c8ec5 100644
> --- a/arch/arm/boot/dts/wm8505.dtsi
> +++ b/arch/arm/boot/dts/wm8505.dtsi
> @@ -54,14 +54,43 @@
> #address-cells = <1>;
> #size-cells = <0>;
>
> + ref25: ref25M {
> + #clock-cells = <0>;
> + compatible = "fixed-clock";
> + clock-frequency = <25000000>;
> + };
> +
> ref24: ref24M {
> #clock-cells = <0>;
> compatible = "fixed-clock";
> clock-frequency = <24000000>;
> };
> +
> + pllb: pllb {
> + #clock-cells = <0>;
> + compatible = "via,vt8500-pll-clock";
> + clocks = <&ref25>;
> + reg = <0x204>;
> + };
> +
> + clkpwm: pwm {
> + #clock-cells = <0>;
> + compatible = "via,vt8500-device-clock";
> + clocks = <&pllb>;
> + divisor-reg = <0x348>;
> + enable-reg = <0x250>;
> + enable-bit = <10>;
> + };
> };
> };
>
> + pwm: pwm@d8220000 {
> + #pwm-cells = <2>;
> + compatible = "via,vt8500-pwm";
> + reg = <0xd8220000 0x100>;
> + clocks = <&clkpwm>;
> + };
> +
> timer@d8130100 {
> compatible = "via,vt8500-timer";
> reg = <0xd8130100 0x28>;
> diff --git a/arch/arm/boot/dts/wm8650-mid.dts b/arch/arm/boot/dts/wm8650-mid.dts
> index cefd938..7a05dd5 100644
> --- a/arch/arm/boot/dts/wm8650-mid.dts
> +++ b/arch/arm/boot/dts/wm8650-mid.dts
> @@ -33,4 +33,12 @@
> };
> };
> };
> +
> + backlight {
> + compatible = "pwm-backlight";
> + pwms = <&pwm 0 50000>;
> +
> + brightness-levels = <0 4 8 16 32 64 128 255>;
> + default-brightness-level = <5>;
> + };
> };
> diff --git a/arch/arm/boot/dts/wm8650.dtsi b/arch/arm/boot/dts/wm8650.dtsi
> index 83b9467..a25d240 100644
> --- a/arch/arm/boot/dts/wm8650.dtsi
> +++ b/arch/arm/boot/dts/wm8650.dtsi
> @@ -75,14 +75,16 @@
> reg = <0x204>;
> };
>
> - arm: arm {
> + clkpwm: pwm {
> #clock-cells = <0>;
> compatible = "via,vt8500-device-clock";
> - clocks = <&plla>;
> - divisor-reg = <0x300>;
> + clocks = <&pllb>;
> + divisor-reg = <0x348>;
> + enable-reg = <0x250>;
> + enable-bit = <10>;
> };
>
> - sdhc: sdhc {
> + clksdhc: sdhc {
> #clock-cells = <0>;
> compatible = "via,vt8500-device-clock";
> clocks = <&pllb>;
> @@ -94,6 +96,13 @@
> };
> };
>
> + pwm: pwm@d8220000 {
> + #pwm-cells = <2>;
> + compatible = "via,vt8500-pwm";
> + reg = <0xd8220000 0x100>;
> + clocks = <&clkpwm>;
> + };
> +
> timer@d8130100 {
> compatible = "via,vt8500-timer";
> reg = <0xd8130100 0x28>;

Please don't pull Patch 1/3 to any trees. I will include in a
pull-request for arm-soc with other dts updates later on.

Patch 2/3 + 3/3 can be taken now or Ack'd and I'll do a pull-request
later.

Regards
Tony P

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/