From patchwork Fri May 11 03:22:25 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yoshihiro Shimoda X-Patchwork-Id: 911710 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-gpio-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=renesas.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=renesasgroup.onmicrosoft.com header.i=@renesasgroup.onmicrosoft.com header.b="kZVqx1QW"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40hwQy0pNkz9s02 for ; Fri, 11 May 2018 13:23:22 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752087AbeEKDXT (ORCPT ); Thu, 10 May 2018 23:23:19 -0400 Received: from relmlor3.renesas.com ([210.160.252.173]:53609 "EHLO relmlie2.idc.renesas.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751258AbeEKDXL (ORCPT ); Thu, 10 May 2018 23:23:11 -0400 Received: from unknown (HELO relmlir4.idc.renesas.com) ([10.200.68.154]) by relmlie2.idc.renesas.com with ESMTP; 11 May 2018 12:23:06 +0900 Received: from relmlii2.idc.renesas.com (relmlii2.idc.renesas.com [10.200.68.66]) by relmlir4.idc.renesas.com (Postfix) with ESMTP id D15998230A; Fri, 11 May 2018 12:23:06 +0900 (JST) X-IronPort-AV: E=Sophos;i="5.49,387,1520866800"; d="scan'208";a="280661455" Received: from mail-ty1jpn01lp0182.outbound.protection.outlook.com (HELO JPN01-TY1-obe.outbound.protection.outlook.com) ([23.103.139.182]) by relmlii2.idc.renesas.com with ESMTP/TLS/AES256-SHA256; 11 May 2018 12:23:06 +0900 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=renesasgroup.onmicrosoft.com; s=selector1-renesas-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=eWB1NCo2q9SBGPN9dNAteU1MiSpgse9w7DtYRCjyiWw=; b=kZVqx1QWeeonexEtLkwGEBozJyLEOCp+p5r7RhgpDanSSO+mH+NASKXi/sPt3N94/DhBpLQy7cb5vPfsyrt3e5TKy/Ydh4vtHZCXrqk7tmsZi3B9sxaq+Yi6ylECBt6eR1yHJ/dVcqh5HEJmGP+GkBjncRvglEHVcmTAj3N+qps= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=<>; Received: from localhost.localdomain (211.11.155.138) by OSBPR01MB2294.jpnprd01.prod.outlook.com (2603:1096:603:26::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Fri, 11 May 2018 03:23:04 +0000 From: Yoshihiro Shimoda To: laurent.pinchart@ideasonboard.com, geert+renesas@glider.be, linus.walleij@linaro.org, robh+dt@kernel.org, mark.rutland@arm.com Cc: linux-renesas-soc@vger.kernel.org, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, Takeshi Kihara , Yoshihiro Shimoda Subject: [PATCH 4/6] pinctrl: sh-pfc: r8a77990: Add SCIF pins, groups and functions Date: Fri, 11 May 2018 12:22:25 +0900 Message-Id: <1526008947-26667-5-git-send-email-yoshihiro.shimoda.uh@renesas.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1526008947-26667-1-git-send-email-yoshihiro.shimoda.uh@renesas.com> References: <1526008947-26667-1-git-send-email-yoshihiro.shimoda.uh@renesas.com> MIME-Version: 1.0 X-Originating-IP: [211.11.155.138] X-ClientProxiedBy: TY1PR01CA0187.jpnprd01.prod.outlook.com (2603:1096:403::17) To OSBPR01MB2294.jpnprd01.prod.outlook.com (2603:1096:603:26::15) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(5600026)(48565401081)(2017052603328)(7153060)(7193020); SRVR:OSBPR01MB2294; X-Microsoft-Exchange-Diagnostics: 1; OSBPR01MB2294; 3:hovNg1tx0kEEeoxGPbmDg0VJloSwHjr4EmosD0xaTVzZyKzWdiM1GJFrW1iooOmNekqn8nOQhV5ONOa7t+HhfBbRnGf3zyX1LNl52vwioRBCP4i5pDCJwq/whRRQtsBoqO2s+f1qiGE7nyLPbj1LuuAcJ8apUztnvW5k2SpOnJznTEanLSeaWElOk8rHB/z8Xx8tE8clLdhA2yUSOCuqqT3HGNfygW7rvTZbS4ndtFNQXt/M+kF8twxcvGPb9iiM; 25:ZSBTH/FI+9BxowKfohaiBVQzXBtO6UvYb5pZEL5AOSjDut3Q5gvyDl9ulakAdZCahlg8RQL2ikaIOSvPbPAeZveAJovqkFkFzndQrLCqIhhNSip0vDc03/PLTHbWGe/mykaI2cSJqy9o0g1aP1SIJzmAoxFzT9TbwIShsLO/592r0Gx3mb8wJaYvKtNpRZNJJ5TMk8+qxDWmnXsVWjwVd/P/dJ+YL2cpVXhTwrm+568g7MAUvN1PsMOTWPdXSwNo+WjJOGUh0ag7/deS4MuIqfegNKDoxBwftnpN0DON2SFxjGvIwL0DHrS8s6B0gXN09jGQ9tBXa6R4NaC/GzEPQA==; 31:TN/gYcdf8eoctBOi1E/coIrCQ8ZRpNBm7oiO0mAyVq0weuzw7H4D8m7ItqaB8oFZPKuUVqemBDa2/4VEgD+CA9ZjkSPM/ytiWNC1d3jmOOaXZfmpSKtQ92kWE1ok1eETT44Vh25iYssmrR/nXmFYoFuH6llwuGTHYVU1OHIh6jTg0ARk2XtTAI9N3u8MQl/Z6ql73XWFpfDlDt5LJx8PKRaWyv+5F0wPksxieo+kvYA= X-MS-TrafficTypeDiagnostic: OSBPR01MB2294: X-Microsoft-Exchange-Diagnostics: 1; OSBPR01MB2294; 20:AZkrJ2fRNPBdQGgs8zqaF/HbVOScgwmOZZ8XTBs0RG0yEQGldo4FSQUZ1qp3/V7Fakokl4QUDVVG9w2dsLTiPfKpu7XidRTkdy1BA+nPf5n2GAK7eimdUxh7f/QNg2h9LHyPiFwVPqWbO58MmkjDeX47c6Ac/ZhtAkoXyAitKWp4K7UiBJIv3vxQvZU2IKeaPuJe3mznBbhn7e6w9hgHVmY6ZgML5WTZl+6GGb8m8zw20Cq0jYX07kx0Q2GEWSzPFYUxG5SpxosSvoxqqjjfevkJjeBFUea9MeRWwUnpzccueY5ToCYUcy6Kb/VXkGP1rR+YeAd89lI5KKltnpMPvu0blw7yRX1P6SCpFvaPOZZzsJPrsAxPJ9lev1I8k+uV8FQ49PsqzmOcsvCvUWNVhg3YZq3rRSln93fkvjyWf4XfnL6BdNkpfqxK+BqDOe8H17E3Rr+tgn/LW544btMW4zHTlNz+KTPfXScN7YfeqP5DmCsZJKjtHvx6OsNADo3y; 4:BAWOgz6Gz3JL38uiJyz57hW94+wTrZtKu8AQMKOgXb18CYvgVDQ2AVLMiwBuqe9MPnFQlCCkOwXfbtty4IZQsq5gvBQs9BXLu1M0BHpfJh4mCYNobzafKOn0pIvnVaVQ8/NL+t8cVbWZNy2dVKptBT6DWM34FDHz/1G5QMckzchm5EGLRDhqKm7XRElHzjmWPrvbpgMBAUPBltnsK4/3ifs/c0c7TGn1e8o51127nqNCwEXxEDfzSiO2w6y+U7RyeuHDYHwDFTvCejo9oZMKjg== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(93006095)(10201501046)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123562045)(20161123560045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061750153)(6072148)(201708071742011); SRVR:OSBPR01MB2294; BCL:0; PCL:0; RULEID:; SRVR:OSBPR01MB2294; X-Forefront-PRVS: 06691A4183 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(6069001)(1496009)(366004)(376002)(39380400002)(39860400002)(346002)(396003)(199004)(189003)(81156014)(81166006)(3846002)(78352004)(305945005)(7736002)(6116002)(6486002)(48376002)(8676002)(68736007)(316002)(16526019)(50466002)(54906003)(498600001)(16586007)(5660300001)(6666003)(36756003)(26005)(76176011)(11346002)(97736004)(51416003)(446003)(476003)(486006)(6506007)(386003)(2616005)(42882007)(25786009)(2906002)(66066001)(53936002)(107886003)(105586002)(52116002)(8936002)(4326008)(106356001)(47776003)(50226002)(6512007)(956004)(3720700003); DIR:OUT; SFP:1102; SCL:1; SRVR:OSBPR01MB2294; H:localhost.localdomain; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:0; MX:0; Received-SPF: None (protection.outlook.com: localhost.localdomain does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; OSBPR01MB2294; 23:SvLB48QL6X03DYjj1lPXTOxtBvolC83kyZevEySbuJN82Q24TY+9a+PjcXZWjLNYwgXH797WwKADzQqEJmIpxQpFX0oVEIJaNFVThVSktZjkWqq03Vuc+R38mfvmhqZwSeFmcLe9+MDBsab0IllgNCKC+qG3gveWsyQyo0i3u01ltS6d0yWmvUU/xl1+SAYi7Ovvas8KFjl0UAi+MAHudIw6qTJmX/lgebOmA4/X9g/u8mNWmImYS50hpzWhNeprMtxG1I1AluHP8VA/gzWbgXDBGTHf+4RPKIqfuEw/2b8ggwsUFULFfmjQLbvw8M+xX8NJFHqDmaCi9VUvH7tncoH6OROTBk7RBEIArM/hnsc5zFve897ZWAFlM8sJHRe40rpmbuU7UOB+w/lX0iLVVSuLGEBAo/uNLESHjyTy/R2nLqu9eCXXFqltSDqzkO/agp/sRcRf/9hQypvz4sWAjym5JPV/Q0lj9yrm2S9akRm0zblk7jPBLwB4oZAsBR7SDaxYDKeAk3ZSMliaBqNc8eFJ3WjLZo+LyTT5cSgyDg9XK9WWqUgcbEkAofXZuqg4bfb9J0XD4kbR0qes1+xky8IMnm3Wh2+lLpiZi8v3BqSLuiaPa5Zf9/1LTkiamXd8Sp/V28gffwlYAYpGZEROQ5rBydrp13bETLRFOfK6J9x9TGDkTL+LwYEfb8uopgQ2ymYmgLuIRBfq7q7QRGL3XC7TjOZaRC0bhEFt36dhXVMdbS08PyarKXWNIxaha+0W3Es7dtPbygrL7YYy5PZpfEp+N1cB7uWsEkhPXhfrjQq84eoHzlz2rKIv/9WWldWbnmNasHTmTjN4kHeVoO9zEh8/wAqKhT0kxfxfojPn8wWSXtHB6ZRUI7w9v+o33z6lW6d85s65nBI8/lKnrYRp/N42UKaKB36qXM914dneLeYj9ftHSce0AA/QBg7mRpNG2zaWyOURorPiuUH+DlWmnDHBRF2L9xF3c7WZA9YWR3hG8syIBR1v11gNXIT/iiGzi4V9rXKmamavNNsDVJkLVjfwRi2mNrY0atNxMVwi/xop5zH1qTFdsikGlfuJl84KFnG3HKZjPl6sB+KkhHUsiJArd1hajQ1tevir9lFwRAKJOhb4ZQeOXMyRShXxs9qkzX3D7mOI+PogAYiOx1btEthAQwbdGwaQh4p9QKRTyoX2guaejS+b/4cHTy83YizvvnjfFAHyVnP/jWoILQp+khDCUWIJByekCyw+zxm/ksiIcZunoMPFkBW2zhPKckB2 X-Microsoft-Antispam-Message-Info: Kz/WAPxio2oXrWNtFz2wxnBOkZllg10t6B/peF66gYmc+XZiEdbHfmCIyfs4TCv8J1rZE8KV2u07LSizW0eAL3Pa1VsOWLazMGFU1qqiqm6Ebq29yHij8z5ovI6IhBu+ztu/61SaZAMfgIkf0xz01VINazYbFRY/JwNfoBIo2JwA4AZU0LNO8Y/K8n+nNDcz X-Microsoft-Exchange-Diagnostics: 1; OSBPR01MB2294; 6:FpzPjiEmo4of6QHFdqtCPFfJPZw7wHsITMqNQJCFZR3AGNELUnadDHpkLuRGsGQa1MaILXh4ur/WVziEe4ctsu3vffZsYpTqOM7yOiL2BRfKM1w3a01iic1y4ahci2Tc9jJmVCOFgu7hMUbspH3vR7DhO6E5LqAAJAdyVBPrD6cesRBiTdS2WEw/WCIUgeNqFcZplAVLfQXoKi2ChMrr+x1Tvx7WnGLcjbTSlZy+kOhFDJAnwIOGgHILD2f2WFFRO9SPwnP3rLWggOtqtmr7Gz92QgeEeUTb3v0G+DJLRyKU2WmGlM50hHAEguf0eg+6cV982R1/C8Ajv+BTU3xF9BWNbSe2Llxld9604GJVH3V9v5rrxOlsZG2a9iEWyVift+61QkynoM6UAYjhDh8slcPaL48iYnGmOYKfnHegcIY4yscS8ULgs71otwv7zMnn8ChvC2bTm7AW6WMilaYpAw==; 5:oErcs3hfPWg0zQSS38yA/pdYeWDnRVJSSm5EX89Gq1GtmTmotj74hICLzxpNQuwXvTbPXkn2qaGPBHd1AcUAoBkmP70uQGVt2SCvuopcnrrvURGILs0HhcVTH21NzILadZCftT5khfW1FD/mG7HjeyqkC1+gyHCFTh4nhrBrvcs=; 24:ZO84Rgy2dRS2Jxtz0LwRfdd5a7HZCjRj5TjqMRXEFjP1rh4haWAc8i724oj9XFtvQ33hJEIIp20SxQ3lAzrGXWIIwHBThHR0KsK+86xqLQM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; OSBPR01MB2294; 7:cogadnZ1g+veIjmqdleBZjL86X4ee6+mONddFhZaaXAlmhIKtdeKVSiHtE1qWYFJ068+sLEJ89o8gRwzE+PIZqw3eh2lQmbvjEQA6I4dILjR2SO+/OlfK41s4kMIKWzid8cE619fC+MoR5L/tqrYtmgE2QfGq2ysE3+cSTMGnTmVxZZJnyg2+jdzvEVxy6sxdRUgls+CsF2kW1JplBZ4wN1uTgU9CXe3k8//jchdwkMPSOzL92KSt/KkL7y/Ug5c; 20:NHzb+cyw3JwrDE5gJGDy3EPzHLzt2V+rSF7bzmYSugUxQV/XKw5rIdQJM0f2yFLaHE6nUFp0I1ZaYPFNEZUpXQrTMrsELKLMt8s5hoRxK2JjvgdvfaNH/9oBjWYEdPezpwhGHYRV68kLaT3G+cgYK5JyKlQ2WlmWLIAcARgZ2rU= X-MS-Office365-Filtering-Correlation-Id: 05819f1f-ddd0-4992-f56e-08d5b6ee825e X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2018 03:23:04.6338 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 05819f1f-ddd0-4992-f56e-08d5b6ee825e X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSBPR01MB2294 Sender: linux-gpio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org From: Takeshi Kihara This patch adds SCIF{0,1,2,3,4,5} pins, groups and functions to R8A77990 SoC. Signed-off-by: Takeshi Kihara Signed-off-by: Yoshihiro Shimoda Reviewed-by: Geert Uytterhoeven --- drivers/pinctrl/sh-pfc/pfc-r8a77990.c | 365 ++++++++++++++++++++++++++++++++++ 1 file changed, 365 insertions(+) diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a77990.c b/drivers/pinctrl/sh-pfc/pfc-r8a77990.c index 1fe8aee..96779a0 100644 --- a/drivers/pinctrl/sh-pfc/pfc-r8a77990.c +++ b/drivers/pinctrl/sh-pfc/pfc-r8a77990.c @@ -1299,10 +1299,375 @@ enum { SH_PFC_PIN_NAMED_CFG(ROW_GROUP_A('D'), 3, PRESETOUT_N, CFG_FLAGS), }; +/* - SCIF0 ------------------------------------------------------------------ */ +static const unsigned int scif0_data_a_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(5, 1), RCAR_GP_PIN(5, 2), +}; + +static const unsigned int scif0_data_a_mux[] = { + RX0_A_MARK, TX0_A_MARK, +}; + +static const unsigned int scif0_clk_a_pins[] = { + /* SCK */ + RCAR_GP_PIN(5, 0), +}; + +static const unsigned int scif0_clk_a_mux[] = { + SCK0_A_MARK, +}; + +static const unsigned int scif0_ctrl_a_pins[] = { + /* RTS, CTS */ + RCAR_GP_PIN(5, 4), RCAR_GP_PIN(5, 3), +}; + +static const unsigned int scif0_ctrl_a_mux[] = { + RTS0_N_TANS_A_MARK, CTS0_N_A_MARK, +}; + +static const unsigned int scif0_data_b_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(5, 17), RCAR_GP_PIN(5, 19), +}; + +static const unsigned int scif0_data_b_mux[] = { + RX0_B_MARK, TX0_B_MARK, +}; + +static const unsigned int scif0_clk_b_pins[] = { + /* SCK */ + RCAR_GP_PIN(5, 18), +}; + +static const unsigned int scif0_clk_b_mux[] = { + SCK0_B_MARK, +}; + +/* - SCIF1 ------------------------------------------------------------------ */ +static const unsigned int scif1_data_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(5, 5), RCAR_GP_PIN(5, 6), +}; + +static const unsigned int scif1_data_mux[] = { + RX1_MARK, TX1_MARK, +}; + +static const unsigned int scif1_clk_pins[] = { + /* SCK */ + RCAR_GP_PIN(5, 16), +}; + +static const unsigned int scif1_clk_mux[] = { + SCK1_MARK, +}; + +static const unsigned int scif1_ctrl_pins[] = { + /* RTS, CTS */ + RCAR_GP_PIN(5, 0), RCAR_GP_PIN(5, 7), +}; + +static const unsigned int scif1_ctrl_mux[] = { + RTS1_N_TANS_MARK, CTS1_N_MARK, +}; + +/* - SCIF2 ------------------------------------------------------------------ */ +static const unsigned int scif2_data_a_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(5, 9), RCAR_GP_PIN(5, 8), +}; + +static const unsigned int scif2_data_a_mux[] = { + RX2_A_MARK, TX2_A_MARK, +}; + +static const unsigned int scif2_clk_a_pins[] = { + /* SCK */ + RCAR_GP_PIN(5, 7), +}; + +static const unsigned int scif2_clk_a_mux[] = { + SCK2_A_MARK, +}; + +static const unsigned int scif2_data_b_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(5, 12), RCAR_GP_PIN(5, 11), +}; + +static const unsigned int scif2_data_b_mux[] = { + RX2_B_MARK, TX2_B_MARK, +}; + +/* - SCIF3 ------------------------------------------------------------------ */ +static const unsigned int scif3_data_a_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(0, 5), RCAR_GP_PIN(0, 6), +}; + +static const unsigned int scif3_data_a_mux[] = { + RX3_A_MARK, TX3_A_MARK, +}; + +static const unsigned int scif3_clk_a_pins[] = { + /* SCK */ + RCAR_GP_PIN(0, 1), +}; + +static const unsigned int scif3_clk_a_mux[] = { + SCK3_A_MARK, +}; + +static const unsigned int scif3_ctrl_a_pins[] = { + /* RTS, CTS */ + RCAR_GP_PIN(0, 4), RCAR_GP_PIN(0, 7), +}; + +static const unsigned int scif3_ctrl_a_mux[] = { + RTS3_N_TANS_A_MARK, CTS3_N_A_MARK, +}; + +static const unsigned int scif3_data_b_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(1, 8), RCAR_GP_PIN(1, 11), +}; + +static const unsigned int scif3_data_b_mux[] = { + RX3_B_MARK, TX3_B_MARK, +}; + +static const unsigned int scif3_data_c_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(2, 23), RCAR_GP_PIN(2, 22), +}; + +static const unsigned int scif3_data_c_mux[] = { + RX3_C_MARK, TX3_C_MARK, +}; + +static const unsigned int scif3_clk_c_pins[] = { + /* SCK */ + RCAR_GP_PIN(2, 24), +}; + +static const unsigned int scif3_clk_c_mux[] = { + SCK3_C_MARK, +}; + +/* - SCIF4 ------------------------------------------------------------------ */ +static const unsigned int scif4_data_a_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(1, 6), RCAR_GP_PIN(1, 7), +}; + +static const unsigned int scif4_data_a_mux[] = { + RX4_A_MARK, TX4_A_MARK, +}; + +static const unsigned int scif4_clk_a_pins[] = { + /* SCK */ + RCAR_GP_PIN(1, 5), +}; + +static const unsigned int scif4_clk_a_mux[] = { + SCK4_A_MARK, +}; + +static const unsigned int scif4_ctrl_a_pins[] = { + /* RTS, CTS */ + RCAR_GP_PIN(1, 4), RCAR_GP_PIN(1, 3), +}; + +static const unsigned int scif4_ctrl_a_mux[] = { + RTS4_N_TANS_A_MARK, CTS4_N_A_MARK, +}; + +static const unsigned int scif4_data_b_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(0, 13), RCAR_GP_PIN(0, 12), +}; + +static const unsigned int scif4_data_b_mux[] = { + RX4_B_MARK, TX4_B_MARK, +}; + +static const unsigned int scif4_clk_b_pins[] = { + /* SCK */ + RCAR_GP_PIN(0, 8), +}; + +static const unsigned int scif4_clk_b_mux[] = { + SCK4_B_MARK, +}; + +static const unsigned int scif4_data_c_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(0, 2), RCAR_GP_PIN(0, 3), +}; + +static const unsigned int scif4_data_c_mux[] = { + RX4_C_MARK, TX4_C_MARK, +}; + +static const unsigned int scif4_ctrl_c_pins[] = { + /* RTS, CTS */ + RCAR_GP_PIN(0, 1), RCAR_GP_PIN(0, 0), +}; + +static const unsigned int scif4_ctrl_c_mux[] = { + RTS4_N_TANS_C_MARK, CTS4_N_C_MARK, +}; + +/* - SCIF5 ------------------------------------------------------------------ */ +static const unsigned int scif5_data_a_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(1, 12), RCAR_GP_PIN(1, 9), +}; + +static const unsigned int scif5_data_a_mux[] = { + RX5_A_MARK, TX5_A_MARK, +}; + +static const unsigned int scif5_clk_a_pins[] = { + /* SCK */ + RCAR_GP_PIN(1, 13), +}; + +static const unsigned int scif5_clk_a_mux[] = { + SCK5_A_MARK, +}; + +static const unsigned int scif5_data_b_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(2, 25), RCAR_GP_PIN(2, 24), +}; + +static const unsigned int scif5_data_b_mux[] = { + RX5_B_MARK, TX5_B_MARK, +}; + +static const unsigned int scif5_data_c_pins[] = { + /* RX, TX */ + RCAR_GP_PIN(0, 2), RCAR_GP_PIN(0, 3), +}; + +static const unsigned int scif5_data_c_mux[] = { + RX5_C_MARK, TX5_C_MARK, +}; + +/* - SCIF Clock ------------------------------------------------------------- */ +static const unsigned int scif_clk_a_pins[] = { + /* SCIF_CLK */ + RCAR_GP_PIN(5, 3), +}; + +static const unsigned int scif_clk_a_mux[] = { + SCIF_CLK_A_MARK, +}; + +static const unsigned int scif_clk_b_pins[] = { + /* SCIF_CLK */ + RCAR_GP_PIN(5, 7), +}; + +static const unsigned int scif_clk_b_mux[] = { + SCIF_CLK_B_MARK, +}; + static const struct sh_pfc_pin_group pinmux_groups[] = { + SH_PFC_PIN_GROUP(scif0_data_a), + SH_PFC_PIN_GROUP(scif0_clk_a), + SH_PFC_PIN_GROUP(scif0_ctrl_a), + SH_PFC_PIN_GROUP(scif0_data_b), + SH_PFC_PIN_GROUP(scif0_clk_b), + SH_PFC_PIN_GROUP(scif1_data), + SH_PFC_PIN_GROUP(scif1_clk), + SH_PFC_PIN_GROUP(scif1_ctrl), + SH_PFC_PIN_GROUP(scif2_data_a), + SH_PFC_PIN_GROUP(scif2_clk_a), + SH_PFC_PIN_GROUP(scif2_data_b), + SH_PFC_PIN_GROUP(scif3_data_a), + SH_PFC_PIN_GROUP(scif3_clk_a), + SH_PFC_PIN_GROUP(scif3_ctrl_a), + SH_PFC_PIN_GROUP(scif3_data_b), + SH_PFC_PIN_GROUP(scif3_data_c), + SH_PFC_PIN_GROUP(scif3_clk_c), + SH_PFC_PIN_GROUP(scif4_data_a), + SH_PFC_PIN_GROUP(scif4_clk_a), + SH_PFC_PIN_GROUP(scif4_ctrl_a), + SH_PFC_PIN_GROUP(scif4_data_b), + SH_PFC_PIN_GROUP(scif4_clk_b), + SH_PFC_PIN_GROUP(scif4_data_c), + SH_PFC_PIN_GROUP(scif4_ctrl_c), + SH_PFC_PIN_GROUP(scif5_data_a), + SH_PFC_PIN_GROUP(scif5_clk_a), + SH_PFC_PIN_GROUP(scif5_data_b), + SH_PFC_PIN_GROUP(scif5_data_c), + SH_PFC_PIN_GROUP(scif_clk_a), + SH_PFC_PIN_GROUP(scif_clk_b), +}; + +static const char * const scif0_groups[] = { + "scif0_data_a", + "scif0_clk_a", + "scif0_ctrl_a", + "scif0_data_b", + "scif0_clk_b", +}; + +static const char * const scif1_groups[] = { + "scif1_data", + "scif1_clk", + "scif1_ctrl", +}; + +static const char * const scif2_groups[] = { + "scif2_data_a", + "scif2_clk_a", + "scif2_data_b", +}; + +static const char * const scif3_groups[] = { + "scif3_data_a", + "scif3_clk_a", + "scif3_ctrl_a", + "scif3_data_b", + "scif3_data_c", + "scif3_clk_c", +}; + +static const char * const scif4_groups[] = { + "scif4_data_a", + "scif4_clk_a", + "scif4_ctrl_a", + "scif4_data_b", + "scif4_clk_b", + "scif4_data_c", + "scif4_ctrl_c", +}; + +static const char * const scif5_groups[] = { + "scif5_data_a", + "scif5_clk_a", + "scif5_data_b", + "scif5_data_c", +}; + +static const char * const scif_clk_groups[] = { + "scif_clk_a", + "scif_clk_b", }; static const struct sh_pfc_function pinmux_functions[] = { + SH_PFC_FUNCTION(scif0), + SH_PFC_FUNCTION(scif1), + SH_PFC_FUNCTION(scif2), + SH_PFC_FUNCTION(scif3), + SH_PFC_FUNCTION(scif4), + SH_PFC_FUNCTION(scif5), + SH_PFC_FUNCTION(scif_clk), }; static const struct pinmux_cfg_reg pinmux_config_regs[] = {