From patchwork Fri Sep 18 01:53:33 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 519089 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id CA119140273 for ; Fri, 18 Sep 2015 11:53:40 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752484AbbIRBxk (ORCPT ); Thu, 17 Sep 2015 21:53:40 -0400 Received: from relmlor3.renesas.com ([210.160.252.173]:16802 "EHLO relmlie2.idc.renesas.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752415AbbIRBxi (ORCPT ); Thu, 17 Sep 2015 21:53:38 -0400 Received: from unknown (HELO relmlir4.idc.renesas.com) ([10.200.68.154]) by relmlie2.idc.renesas.com with ESMTP; 18 Sep 2015 10:53:37 +0900 Received: from relmlac4.idc.renesas.com (relmlac4.idc.renesas.com [10.200.69.24]) by relmlir4.idc.renesas.com (Postfix) with ESMTP id B44DF40E90; Fri, 18 Sep 2015 10:53:37 +0900 (JST) Received: by relmlac4.idc.renesas.com (Postfix, from userid 0) id 83C8B480A3; Fri, 18 Sep 2015 10:53:37 +0900 (JST) Received: from relmlac4.idc.renesas.com (localhost [127.0.0.1]) by relmlac4.idc.renesas.com (Postfix) with ESMTP id 7B77548014; Fri, 18 Sep 2015 10:53:37 +0900 (JST) Received: from relmlii1.idc.renesas.com [10.200.68.65] by relmlac4.idc.renesas.com with ESMTP id LAG27197; Fri, 18 Sep 2015 10:53:37 +0900 X-IronPort-AV: E=Sophos;i="5.17,550,1437404400"; d="scan'";a="194699832" Received: from mail-sg2apc01lp0239.outbound.protection.outlook.com (HELO APC01-SG2-obe.outbound.protection.outlook.com) ([65.55.88.239]) by relmlii1.idc.renesas.com with ESMTP/TLS/AES256-SHA; 18 Sep 2015 10:53:36 +0900 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kuninori.morimoto.gx@renesas.com; Received: from morimoto-PC.renesas.com (211.11.155.144) by HK2PR06MB0595.apcprd06.prod.outlook.com (10.161.187.146) with Microsoft SMTP Server (TLS) id 15.1.268.17; Fri, 18 Sep 2015 01:53:33 +0000 Message-ID: <87r3lw1opu.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto Subject: [PATCH 1/3 v2] pinctrl: sh-pfc: r8a7795: add I2C pin support User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") To: Simon , Linus Walleij , Laurent CC: "linux-gpio@vger.kernel.org" , Wolfram Sang , Magnus , Linux-SH , Geert Uytterhoeven In-Reply-To: <87si6c1org.wl%kuninori.morimoto.gx@renesas.com> References: <87twqs1osz.wl%kuninori.morimoto.gx@renesas.com> <87si6c1org.wl%kuninori.morimoto.gx@renesas.com> Date: Fri, 18 Sep 2015 01:53:33 +0000 X-Originating-IP: [211.11.155.144] X-ClientProxiedBy: KAWPR01CA0011.jpnprd01.prod.outlook.com (25.161.24.21) To HK2PR06MB0595.apcprd06.prod.outlook.com (25.161.187.146) X-Microsoft-Exchange-Diagnostics: 1; HK2PR06MB0595; 2:AdrVdAd5uWpm6754brj1Qpx3IDDzXtds78uD5NnLYERscHVq6vfoS1io5FxxWdF54G89Rv9RNmF4E5gh1M2V8soJgzisPUWkNkm+15xSDPq4z1s+O2QUGZoZc9S+nqAEeTWupDA7fbk12tVQovjrjdAAbY+jKgoQV+U5wzlwJ7o=; 3:xIFG+l/R+aiiS4CESGz0xxkgsEiyrhpfZaW2eeldKjrJuWt6aiEv1EfcbkYZ/ntzj1TTIS5Sp18ugE+46SSiytsSs85vjjTZbx6Cv6x/uS56N8pWKv5CVtvcoJzO3CC4DZfDLnCT/DSv7vVMt/IXpQ==; 25:64g8TpLI7G+EAR9Sluwe4w0deW8Cv435I6R9BitTa0cK/0PcjNL+09rZmmJaylWTGirBHGflH/khdDms+akIu8G7M5ZM3xBEEScQnCSZv6peNLBChHaxirv62Zt624Y8vGck5BRxY5k9c7BskQazF3bNq1BzH00eUTpIJ/pzgclF9vNhixypQrUICJTvVej0MQtb+Bm88w6EwmKzohogIrFCRqs5Fvdnbhue68pYcAoyYvMBrVpUZJ1px/MdD6Fl X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:HK2PR06MB0595; X-Microsoft-Exchange-Diagnostics: 1; HK2PR06MB0595; 20:8sv/yOMnHGN2VT6Tm8E/H4ms7IlJBYhJ6elfcKbUIuoFXktWTE9K+yHJljwnBYW8T9yXQ0TzN6oO7qXSEs5+zWFWTb82Z9sicycNGx2TLufSFBO61wwY9FwD/GSFUKOEFmIgvn8oTO9Q3ZxXgO6AnCP1z9FX4Iw95GL+bEG4Pc/upTta42lTGDh0AfCv32NKVt9BrxH5eU3QkuBmMY96NX0nHwd9TKziGEcHOJ7w1JGaZVzA42P3TOiYcWJ7v0Xh6P+bXFTTnA1JrvpodzW5J3yqRnEQZDmsjuOPALXTUCVyY7XDbszFo7w2TGAOgqyxRdjwiH434g1FaLcgVN/xpv9NJmwfrtHhJaz4ZcHGVSK70sFBsc+/two+2OVA/yI2bwJ0oEsxmi9M23Kn46/8bYyXkW9acrvyP/syJqoI6zXusc84xfBb8HC433LwRamTGn5Avju+97z0w1icbHBsPw305qxoVWK29FLzOyecsBY4pKshE1U+TWLPOUlq8ahg; 4:9qYexqUMJykPu6vkxb4AW+QBFhzMqY1xhXX209t+bk8Uo9E3WCLwM08629e/pn7Vd7JzcE/CLDJ/7rtxEU+25pjXNw7wvPpBuBqnqOmz5uND0XkrNYvSQqo994fOJsu6kcjsFIcJ2HRr0QGgJhsy+3VJI2loDwFAPmkLj+1+kpn/8jMc7g+nw8Bt4/Fj6YtkaoVDkeg1D2Ma4yWnb2RGIKcs/6yOvA2war09tI5Lu/HlfGteNxWC5sPM1pcdSLqA+BSxa1QKuAk/RqakOQGo9ZcuF6YLinbwryvtfFvJK0EbWz7YqeXWoDjsPK6ITg0vXTBTBSkm3KzxVHBb7UzkxA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(5005006)(8121501046)(520078)(3002001); SRVR:HK2PR06MB0595; BCL:0; PCL:0; RULEID:; SRVR:HK2PR06MB0595; X-Forefront-PRVS: 0703B549E4 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(6009001)(189002)(199003)(77156002)(5001860100001)(4001350100001)(5004730100002)(77096005)(5001830100001)(46102003)(53416004)(5001960100002)(229853001)(36756003)(62966003)(68736005)(189998001)(23726002)(106356001)(105586002)(2950100001)(5001770100001)(50986999)(5007970100001)(97736004)(81156007)(19580395003)(50466002)(92566002)(46406003)(76176999)(66066001)(83506001)(33646002)(4001540100001)(42186005)(69596002)(122386002)(40100003)(19580405001)(64706001)(86362001)(87976001)(47776003)(54356999)(101416001); DIR:OUT; SFP:1102; SCL:1; SRVR:HK2PR06MB0595; H:morimoto-PC.renesas.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HK2PR06MB0595; 23:noKlXed1mw5eq8EEL5R13aHazmF50ugEBgQKC3Lk9?= =?us-ascii?Q?lNW4egW0QfxLkmqSlPjUgu4H6IZXbgYaczJ14PGyDrvFbeM/vLfL6clF1eAm?= =?us-ascii?Q?BVSir06S8iPp1zftxVlRjMOwCLG0tlMXhe33Oqg14PlZPqT8acJN7g7RIBc4?= =?us-ascii?Q?aqwkOYWy2DFA7qDV6uFc77WHnBkRu1hbQ4BQioikWjJvZrcc2Z13GjkIZfic?= =?us-ascii?Q?D4fGAe/I8tNaB+LOmrtOTDBhKtOKoQ8R8Mis+FCRTe9RIFgA/TOub6UMomW+?= =?us-ascii?Q?jRLAHQGazLPtoDaZCxbwMRxZmYhVUeNBxKuSnrj0KQKv+IPKuleoel75tW5a?= =?us-ascii?Q?YnyEAWLvBq8imFCLOWgBCuWrQZRUdWb/aCJZrZjqcXTDh65CnW82up/fWNm9?= =?us-ascii?Q?S/0wtA1Ng9xuXc4Ir6Hexwy/aZD1s8jDTqVUisTHD5HO/s2REJsS5gMRsv/o?= =?us-ascii?Q?vGEXA4NR7KI9GYQ1ViVU9eVnx+ve1Gsatq4gtEucSI5+usN0MT3UCT8tvgtQ?= =?us-ascii?Q?3CVwoVReK90kv5qdzTHMKDfVqAojiIfMH2+jC+T0hVNcX+1cF/B6LgQxBTtG?= =?us-ascii?Q?Xfh6hQHEm7XHYyVfHWOxr80s4jIAnQyS0X9wHuLrSxpb7HqG6KV5PDW2cD/N?= =?us-ascii?Q?ed53VUmzpziqFCSR/AMoS4VhTGgOLkd031MoAazn2AJcElj0DvB3R7BCJRaY?= =?us-ascii?Q?NVGxemeKVl9OJcUfhJkdn8gOAUD5f6H6fPNtbh4SEve7oWtCxzcCso9Mlajz?= =?us-ascii?Q?Ytn3/VSByBSMB2VVkViRJRyNPbCSjdO8usFaKur0AUHgDIDFVM0/7y1gWSXf?= =?us-ascii?Q?acCHcDe/xWbwtW+jum30iTlQdADRJSzOPmxnDrjfwtNO/z05WYMt0230Bwkg?= =?us-ascii?Q?AylVS/YdSba7QcUgxXl468js/J+yIA+j006dEyWzJieVujALDjtdDpWiMFt1?= =?us-ascii?Q?nlfdIrpGmJ/aD+R5+dy68u3o54ldUtf+8gHokgb0YLBC10m8oDC+Unx8xodO?= =?us-ascii?Q?XLdciJR5pqCcUxYgHMRay9ofkKNrE+GHv+vgMzpbWpiv6LNr27JoQhwiUz+/?= =?us-ascii?Q?lWo27vWYEZuJT7Byq3W3tDJsZ4lqZ+XMCItiEiJA82bl0W9oSZ92CDt4k6KN?= =?us-ascii?Q?ICIicbkHK6WJlEN15hVfS08Tb9JMR7L9jnYQ4a90NsWz1c2dn4zD1Pue/ij6?= =?us-ascii?Q?hWfEKCJirFgJ4uLjzmppzmuE+QAgVJ/MTNKpzwaT44m6iaiO0z+NStOniXYr?= =?us-ascii?Q?3r5KrsHcCetUAr3uhs=3D?= X-Microsoft-Exchange-Diagnostics: 1; HK2PR06MB0595; 5:ZueLwmxNBVvIlgNiTZRAjOasbqqguQIgYTQualqz4bQ9cXV8xNwm5w3IVx4niHz2WKKxbqBBp5FEHjjNxSwLKpi0k2wwm+kKmc/y0fkOEetjiPk1//m/w4sTgJURyJJiVvIxGoYTQ6egNCxkCNcwOg==; 24:s1flqIJyib4vsDdyzJaKJMwgrDF0kbDXlU7pTSmBoSGiKlgHzymtLNtsBQN4obdfZfMp+NK47dxqK1adguOET7Iuy6AzIN5htDhxrPvNs4M=; 20:HjHVPyWVzirge4ZM3Ui3OZeDpUqzygb8z/ILXXLGgKDeQLsOm9XZz1JO1VXYmuQnG+d8xQIfym1c55efs2/1+UKj5UluUcK1wffr9Q7U3vsWjiwDZblkRHgA4+32o/dS0S8DHSCkgxzYxAtA1IGcPCmpaInxuNr7KBFRi9QRLAg= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2015 01:53:33.6662 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HK2PR06MB0595 Sender: linux-gpio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org From: Kuninori Morimoto Signed-off-by: Kuninori Morimoto Reviewed-by: Geert Uytterhoeven --- v2 -> v3 - add Geert's Reviewed-by drivers/pinctrl/sh-pfc/pfc-r8a7795.c | 77 ++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a7795.c b/drivers/pinctrl/sh-pfc/pfc-r8a7795.c index aff3895..f6afe71 100644 --- a/drivers/pinctrl/sh-pfc/pfc-r8a7795.c +++ b/drivers/pinctrl/sh-pfc/pfc-r8a7795.c @@ -1426,6 +1426,57 @@ static const struct sh_pfc_pin pinmux_pins[] = { PINMUX_GPIO_GP_ALL(), }; +/* - I2C -------------------------------------------------------------------- */ +static const unsigned int i2c1_a_pins[] = { + /* SDA, SCL */ + RCAR_GP_PIN(5, 11), RCAR_GP_PIN(5, 10), +}; +static const unsigned int i2c1_a_mux[] = { + SDA1_A_MARK, SCL1_A_MARK, +}; +static const unsigned int i2c1_b_pins[] = { + /* SDA, SCL */ + RCAR_GP_PIN(5, 24), RCAR_GP_PIN(5, 23), +}; +static const unsigned int i2c1_b_mux[] = { + SDA1_B_MARK, SCL1_B_MARK, +}; +static const unsigned int i2c2_a_pins[] = { + /* SDA, SCL */ + RCAR_GP_PIN(5, 0), RCAR_GP_PIN(5, 4), +}; +static const unsigned int i2c2_a_mux[] = { + SDA2_A_MARK, SCL2_A_MARK, +}; +static const unsigned int i2c2_b_pins[] = { + /* SDA, SCL */ + RCAR_GP_PIN(3, 13), RCAR_GP_PIN(3, 12), +}; +static const unsigned int i2c2_b_mux[] = { + SDA2_B_MARK, SCL2_B_MARK, +}; +static const unsigned int i2c6_a_pins[] = { + /* SDA, SCL */ + RCAR_GP_PIN(1, 8), RCAR_GP_PIN(1, 11), +}; +static const unsigned int i2c6_a_mux[] = { + SDA6_A_MARK, SCL6_A_MARK, +}; +static const unsigned int i2c6_b_pins[] = { + /* SDA, SCL */ + RCAR_GP_PIN(1, 26), RCAR_GP_PIN(1, 25), +}; +static const unsigned int i2c6_b_mux[] = { + SDA6_B_MARK, SCL6_B_MARK, +}; +static const unsigned int i2c6_c_pins[] = { + /* SDA, SCL */ + RCAR_GP_PIN(0, 15), RCAR_GP_PIN(0, 14), +}; +static const unsigned int i2c6_c_mux[] = { + SDA6_C_MARK, SCL6_C_MARK, +}; + /* - SCIF0 ------------------------------------------------------------------ */ static const unsigned int scif0_data_pins[] = { /* RX, TX */ @@ -1610,6 +1661,13 @@ static const unsigned int scif5_clk_mux[] = { }; static const struct sh_pfc_pin_group pinmux_groups[] = { + SH_PFC_PIN_GROUP(i2c1_a), + SH_PFC_PIN_GROUP(i2c1_b), + SH_PFC_PIN_GROUP(i2c2_a), + SH_PFC_PIN_GROUP(i2c2_b), + SH_PFC_PIN_GROUP(i2c6_a), + SH_PFC_PIN_GROUP(i2c6_b), + SH_PFC_PIN_GROUP(i2c6_c), SH_PFC_PIN_GROUP(scif0_data), SH_PFC_PIN_GROUP(scif0_clk), SH_PFC_PIN_GROUP(scif0_ctrl), @@ -1637,6 +1695,22 @@ static const struct sh_pfc_pin_group pinmux_groups[] = { SH_PFC_PIN_GROUP(scif5_clk), }; +static const char * const i2c1_groups[] = { + "i2c1_a", + "i2c1_b", +}; + +static const char * const i2c2_groups[] = { + "i2c2_a", + "i2c2_b", +}; + +static const char * const i2c6_groups[] = { + "i2c6_a", + "i2c6_b", + "i2c6_c", +}; + static const char * const scif0_groups[] = { "scif0_data", "scif0_clk", @@ -1681,6 +1755,9 @@ static const char * const scif5_groups[] = { }; static const struct sh_pfc_function pinmux_functions[] = { + SH_PFC_FUNCTION(i2c1), + SH_PFC_FUNCTION(i2c2), + SH_PFC_FUNCTION(i2c6), SH_PFC_FUNCTION(scif0), SH_PFC_FUNCTION(scif1), SH_PFC_FUNCTION(scif2),