From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lee Jones Subject: Re: [PATCH 3/7] gpio: mvebu: Add limited PWM support Date: Sun, 18 Jan 2015 10:04:38 +0000 Message-ID: <20150118100438.GC3574@x1> References: <1420846493-31647-1-git-send-email-andrew@lunn.ch> <1420846493-31647-4-git-send-email-andrew@lunn.ch> <20150113024256.GH19533@lunn.ch> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: Content-Disposition: inline In-Reply-To: Sender: linux-pwm-owner@vger.kernel.org To: Linus Walleij Cc: Andrew Lunn , Thierry Reding , "linux-pwm@vger.kernel.org" , Samuel Ortiz , Thomas Petazzoni , Imre Kaloz , Gregory Clement , Sebastian Hesselbarth , "linux-gpio@vger.kernel.org" List-Id: linux-gpio@vger.kernel.org On Thu, 15 Jan 2015, Linus Walleij wrote: > On Tue, Jan 13, 2015 at 3:42 AM, Andrew Lunn wrote: >=20 > > So i thought about this some more. What would an MFD based solution > > look like? > > > > First issue is backwards compatibility. There are currently around = 90 > > .dts files using this gpio driver. I could imagine a few of these > > being changed to make use of an MFD based driver to make us of the = new > > features, but the rest expect backwards compatibility. >=20 > Good point. >=20 > > I think the only sensible way to achieve this is that the gpio driv= er > > keeps its existing binding. >=20 > Yup. >=20 > > This does not really describe the hardware. The hardware is more li= ke: > > > > gpio: gpio { > > compatible =3D "marvell,orion-gpio"; > > reg =3D <0xd0018100 0x40>; > > ngpios =3D <32>; > > gio-controller; > > #gpio-cells =3D <2>; > > interrupt-controller; > > #interrupt-cells =3D <2>; > > interrupts =3D <16>, <17>, <18>, <19>; > > clocks =3D <&coreclk 0>; > > > > pwm: pwm { > > compatible =3D "marvell,armada-pwm"; > > reg =3D <0xd00181c0 0x08>; > > #pwm-cells =3D <2>; > > clocks =3D <&coreclk 0>; > > }; > > }; > > > > but i don't think MFD supports that sort of structure? >=20 > No it would have to be some custom DT code in the GPIO driver > spawning the PWM platform device. of_platform_populate()? --=20 Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org =E2=94=82 Open source software for ARM SoCs =46ollow Linaro: Facebook | Twitter | Blog