Dnia środa, 10 października 2012 11:12:53 Tony Lindgren pisze: > * Stephen Warren <swarren@xxxxxxxxxxxxx> [121010 09:36]: > > On 10/10/2012 01:26 AM, Linus Walleij wrote: > > > On Mon, Oct 8, 2012 at 10:39 AM, Tomasz Figa <t.figa@xxxxxxxxxxx> wrote: > > >> Seuqential patches from this series introduce SoC-specific data > > >> parsing > > >> from device tree. > > >> > > >> This patch removes legacy GPIO bank nodes from exynos4210.dtsi and > > >> replaces them with nodes and properties required for these patches. > > > > > > So to be clear: > > >> + pinctrl-bank-types { > > >> + bank_off: bank-off { > > >> + samsung,reg-names = "func", "dat", "pud", > > >> + "drv", "conpdn", > > >> "pudpdn"; + samsung,reg-params = <0x00 4>, > > >> <0x04 1>, <0x08 2>, + > > >> <0x0C 2>, <0x10 2>, <0x14 2>; + }; > > > > > > This is starting to look like a firmware language, I have mixed > > > feelings about this. Shall this be read: > > > > > > "Poke 4 into 0x00, poke 1 into 0x04, poke 2 into 0x08" etc? > > > > > > We really need to discuss this, Grant has already NACK:ed > > > such approaches once. > > > > Well, I don't think he NACK'd Tony Lindgren's generic pinctrl driver, > > which is doing this exact same thing. I did raise the same point about > > Tony's driver when he posted it, but nobody seemed inclined to NACK it > > based on that at the time, IIRC... > > To summarize, using reg value pairs in DT makes sense if the amount > of data is huge. Otherwise we'll be describing indidual hardware bits > as properties in DT, or have to have huge amounts of static data in > the kernel. > > Where it does not make sense is if there's a sequence of reads > and writes with test loops in between.. But that's does not look > to be the case here. > > The reg value pairs will be readable when the DT preprocessing is > available, and that allows the values to be orred together while > DT properties don't. The alternative is to describe hardware register > bits as DT properties, which is very bloated. > > But considering all this.. Are the samsung,reg-names really needed > by the kernel? They are used to specify which registers are defined in reg-params property and in which order. Most of the registers are not mandatory and this is needed to be able to specify only those that are present. At least I couldn't think of a better solution for this. Do you have some suggestions? Best regards, Tomasz Figa -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html