Pinmux bindings proposal

Shawn Guo shawn.guo at linaro.org
Wed Jan 18 09:30:28 EST 2012


On 18 January 2012 22:13, Tony Lindgren <tony at atomide.com> wrote:
> Hi,
>
> * Grant Likely <grant.likely at secretlab.ca> [120116 09:55]:
>> On Fri, Jan 13, 2012 at 12:39:42PM -0800, Stephen Warren wrote:
>> >                 pinmux =
>> >                         <"default" &pmx_sdhci_active>
>> >                         <"suspend" &pmx_sdhci_suspend>;
>> >
>> >                 /* 1:n example: */
>> >                 pinmux =
>> >                         <"default" &pmx_sdhci_mux_a>
>> >                         <"default" &pmx_sdhci_pincfg_a>
>> >                         <"suspend" &pmx_sdhci_mux_a>
>> >                         <"suspend" &pmx_sdhci_pincfg_a_suspend>;
>>
>>
>> Yeah, don't do this.  Mixing phandle, string and cell values in a
>> property gets messy and could become troublesome to parse.  I've
>> backed away from it in the clk binding.
>
> Yup, that's because the string is embedded directly into the mixed
> mode array and will likely make the following data unaligned. That
> means it's extremely flakey to parse, and will lead into horrible
> errors if you have typos in the .dts file.. Tried that and gave up
> on it.
>
> I think I've found a way to avoid using names at all, assuming we set
> each pin as a phandle for the drivers to use :)
>
The problem with doing that is we will have to represent each pin as a
node in device tree.  For imx6q case, we have 197 pins.  Doing so will
bloat the device tree.

-- 
Regards,
Shawn



More information about the linux-arm-kernel mailing list