Re: [PATCH] pinctrl: msm: Add support for MSM TLMM pinmux

From: Hanumant Singh
Date: Tue Jul 30 2013 - 20:13:10 EST

On 7/30/2013 5:08 PM, Stephen Warren wrote:
On 07/30/2013 06:01 PM, Hanumant Singh wrote:
On 7/30/2013 2:22 PM, Stephen Warren wrote:
On 07/30/2013 03:10 PM, hanumant wrote:
We actually have the same TLMM pinmux used by several socs of a family.
The number of pins on each soc may vary.
Also a given soc gets used in a number of boards.
The device tree for a given soc is split into the different boards that
its in ie the boards inherit a common soc.dtsi but have separate dts.
The boards for the same soc may use different pin groups for
accomplishing a function, since we have multiple i2c, spi uart etc
peripheral instances on a soc. A different instance of each of the above
peripherals, can be used in different boards, utilizing different
or subset of same pin groups.
Thus I would need to have multiple C files for one soc, based on the
boards that it goes into.

The pinctrl driver should be exposing the raw capabilities of the HW.
All the board-specific configuration should be expressed in DT. So, the
driver shouldn't have to know anything about different boards at

I agree, so I wanted to keep the pin grouping information in DT, we
already have a board based differentiation of dts files in DT, for the
same soc.

That's the opposite of what I was saying. Pin groups are a feature of
the SoC design, not the board.

Sorry I guess I wasn't clear.
Right now I have a soc-pinctrl.dtsi containing pin groupings.
This will be "inherited" by soc-boardtype.dts.
The pinctrl client device nodes in soc-boardtype.dts will point to pin groupings in soc-pinctrl.dtsi that are valid for that particular boardtype.
Is this a valid design?

that are valid for that

Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at