Hi Sourav,

On 10/22/2012 09:29 AM, Sourav Poddar wrote:
> Currently, omap4 keypad mux settings are done in the board file.
> Populate the mux settings in the dts file for the keypad to
> work via dt.

Have you changed the driver to handle properly the dependency with the
pinctrl and thus return EPROBE_DEFER if this is not ready?

Seb Guiriec has just sent a patch to do that for the omap-i2c driver
([PATCH] i2c: omap: adopt pinctrl support).

> Cc: Felipe Balbi <ba...@ti.com>
> Tested on omap4430 sdp with 3.7-rc1.
> 
> Signed-off-by: Sourav Poddar <sourav.pod...@ti.com>
> ---
>  arch/arm/boot/dts/omap4-sdp.dts |   26 ++++++++++++++++++++++++++
>  1 files changed, 26 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/omap4-sdp.dts b/arch/arm/boot/dts/omap4-sdp.dts
> index 5b7e04f..5efb059 100644
> --- a/arch/arm/boot/dts/omap4-sdp.dts
> +++ b/arch/arm/boot/dts/omap4-sdp.dts
> @@ -194,6 +194,27 @@
>                       0xbc 0x100      /* abe_mcbsp2_fsx.abe_mcbsp2_fsx INPUT 
> | MODE0 */
>               >;
>       };
> +
> +     keypad_pins: pinmux_keypad_pins {
> +             pinctrl-single,pins = <
> +                     0x24 0x4119   /* gpmc_a18.kpd_row6 OMAP_PULL_ENA | 
> OMAP_PULL_UP | OMAP_WAKEUP_EN | OMAP_MUX_MODE1 | OMAP_INPUT_EN */
> +                     0x26 0x4119   /* gpmc_a19.kpd_row6 OMAP_PULL_ENA | 
> OMAP_PULL_UP | OMAP_WAKEUP_EN | OMAP_MUX_MODE1 | OMAP_INPUT_EN */
> +                     0x2c 0x4001   /* gpmc_a22.kpd_col6 OMAP_WAKEUP_EN | 
> OMAP_MUX_MODE1 */
> +                     0x2e 0x4001   /* gpmc_a23.kpd_col7 OMAP_WAKEUP_EN | 
> OMAP_MUX_MODE1 */
> +                     0x13c 0x4001  /* kpd_col0.kpd_col0 OMAP_WAKEUP_EN | 
> OMAP_MUX_MODE1 */
> +                     0x13e 0x4001  /* kpd_col1.kpd_col1 OMAP_WAKEUP_EN | 
> OMAP_MUX_MODE1 */
> +                     0x140 0x4001  /* kpd_col2.kpd_col2 OMAP_WAKEUP_EN | 
> OMAP_MUX_MODE1 */
> +                     0x142 0x10F   /* kpd_col3.kpd_col3 OMAP_WAKEUP_EN | 
> OMAP_MUX_MODE1 */

Alway use lower case for hexa value.

> +                     0x144 0x4001  /* kpd_col4.kpd_col4 OMAP_WAKEUP_EN | 
> OMAP_MUX_MODE1 */
> +                     0x146 0x4001  /* kpd_col5.kpd_col5 OMAP_WAKEUP_EN | 
> OMAP_MUX_MODE1 */
> +                     0x148 0xc119  /* kpd_row0.kpd_row0 OMAP_PULL_ENA | 
> OMAP_PULL_UP | OMAP_WAKEUP_EN | OMAP_MUX_MODE1 | OMAP_INPUT_EN */
> +                     0x14a 0x4119  /* kpd_row1.kpd_row1 OMAP_PULL_ENA | 
> OMAP_PULL_UP | OMAP_WAKEUP_EN | OMAP_MUX_MODE1 | OMAP_INPUT_EN */
> +                     0x14c 0x4119  /* kpd_row2.kpd_row2 OMAP_PULL_ENA | 
> OMAP_PULL_UP | OMAP_WAKEUP_EN | OMAP_MUX_MODE1 | OMAP_INPUT_EN */
> +                     0x14e 0x4119  /* kpd_row3.kpd_row3 OMAP_PULL_ENA | 
> OMAP_PULL_UP | OMAP_WAKEUP_EN | OMAP_MUX_MODE1 | OMAP_INPUT_EN */
> +                     0x150 0x4119  /* kpd_row4.kpd_row4 OMAP_PULL_ENA | 
> OMAP_PULL_UP | OMAP_WAKEUP_EN | OMAP_MUX_MODE1 | OMAP_INPUT_EN */
> +                     0x152 0x4119  /* kpd_row5.kpd_row5 OMAP_PULL_ENA | 
> OMAP_PULL_UP | OMAP_WAKEUP_EN | OMAP_MUX_MODE1 | OMAP_INPUT_EN */
> +             >;
> +     };
>  };
>  
>  &i2c1 {
> @@ -406,3 +427,8 @@
>  &mcbsp3 {
>       status = "disabled";
>  };
> +
> +&keypad {
> +        pinctrl-names = "default";
> +        pinctrl-0 = <&keypad_pins>;
> +};

Otherwise that looks good.

Thanks,
Benoit
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to