From patchwork Mon Nov 27 07:40:17 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yangbo Lu X-Patchwork-Id: 841511 X-Patchwork-Delegate: yorksun@freescale.com 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=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3ylfN25dCMz9s03 for ; Mon, 27 Nov 2017 18:59:46 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 6AECBC21E32; Mon, 27 Nov 2017 07:59:24 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAD_ENC_HEADER, RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 14098C21DB2; Mon, 27 Nov 2017 07:59:09 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id D947CC21E26; Mon, 27 Nov 2017 07:59:01 +0000 (UTC) Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0054.outbound.protection.outlook.com [104.47.32.54]) by lists.denx.de (Postfix) with ESMTPS id 67858C21E37 for ; Mon, 27 Nov 2017 07:58:57 +0000 (UTC) Received: from BN3PR03CA0100.namprd03.prod.outlook.com (10.174.66.18) by BN3PR03MB2354.namprd03.prod.outlook.com (10.166.74.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.260.4; Mon, 27 Nov 2017 07:58:55 +0000 Received: from BY2FFO11OLC016.protection.gbl (2a01:111:f400:7c0c::190) by BN3PR03CA0100.outlook.office365.com (2603:10b6:400:4::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.260.4 via Frontend Transport; Mon, 27 Nov 2017 07:58:55 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BY2FFO11OLC016.mail.protection.outlook.com (10.1.15.61) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.218.12 via Frontend Transport; Mon, 27 Nov 2017 07:58:55 +0000 Received: from titan.ap.freescale.net ([10.192.208.233]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id vAR7wqUx032552; Mon, 27 Nov 2017 00:58:53 -0700 From: Yangbo Lu To: , York Sun Date: Mon, 27 Nov 2017 15:40:17 +0800 Message-ID: <20171127074017.15374-1-yangbo.lu@nxp.com> X-Mailer: git-send-email 2.14.1 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131562431352931737; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(346002)(39380400002)(376002)(39860400002)(2980300002)(1109001)(1110001)(339900001)(199003)(189002)(356003)(68736007)(97736004)(305945005)(8676002)(81156014)(81166006)(51416003)(86362001)(85426001)(110136005)(316002)(16586007)(50986999)(50466002)(47776003)(2906002)(5660300001)(575784001)(36756003)(498600001)(33646002)(53936002)(48376002)(104016004)(4326008)(6636002)(6666003)(1076002)(77096006)(8936002)(50226002)(105606002)(106466001)(8656006)(189998001); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR03MB2354; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11OLC016; 1:ln/VJhbDlW8/vTW6PsSL4WEU25wuO7PuhwGfwXZXauIeAiMMuLw1z2y1lFbSVr9S/cFE+zJh3f6otEfTsBsfWc7+sm8fZUBkw2J0Gjr3W/67WcwXXHPc7db3TPN+4p70 MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 8b1ea238-2337-4b6b-0599-08d5356cb50b X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(4534020)(4628075)(201703131517081)(5600026)(4604075)(2017052603199); SRVR:BN3PR03MB2354; X-Microsoft-Exchange-Diagnostics: 1; BN3PR03MB2354; 3:Xo1xgZwxRUDEqyxivCHGJW5UE2F5Lx2WoPK3ZPRU1zuD2BMpFgRHQafXj70eU9eGh1O2n0dILOgDmBSiqpw1VBweSqPZhkxOeBkdip9R47nrowAQ8AyRRRn4dFqvzlIEkWy8bi7vrW80jhZxmHZUaIxq1uF0KeZf62yUZZUbYuWVwDGPL6Jy/8YR3REo3Aez/4NRDFv4S+7XT7LI0d2dh3Ntbi4GR7dXISp/S3IEqcpLePbf7hOFBJNnOAUoTnhUWsfvjSccMV1AS3471FuxRQM0hESVHwrT4+Iy0Fql3kXx/Pan28G5jT25W+DtqUK2I9goTFKFYEYhpVLEz08ovwtr+2Op+hERJSoOTPeZ2w0=; 25:PGZF73c7OF16i4iYKXc9DfsvUuzaAKpjKhDMaSCuRDfuQvFy/ip9YG7/HGE/hsE9DTlRb9nZ6RPy02P8zvTF6JIs2+y91Ffce0F2dvwOo+cnm0mjkSG8rbnj8RyyVkWWCSDncwk0u41CAfKWnhejUP+orgg5NnkePkDkqHm06oGs9khJZ3eWGyICy1fGg3sfa/FZC9BPmoDPPMPf+nWYEivWsFDyS9hFzdYcBGREXmCk8UEuiUnGbXK7RIETd9lRpU84vuS/VzevpJrB/1nIGciYbBVCJ5y1Iz+4MoP80g0GlOU+HC5qBM6lKlhpo7LsqAh/yAOBqDd3DxzmYO1C0g== X-MS-TrafficTypeDiagnostic: BN3PR03MB2354: X-Microsoft-Exchange-Diagnostics: 1; BN3PR03MB2354; 31:a15tWaEkcv18LuqX6qeTrq0HA+Dqi5VMrNNcuSniFb3acabq5rd+2v+8pPtsWIqzQPXdEC9xED4sUDL8jv02O8iamIcrrDe6Rk1g5RNFAdriUjyYlduLgHGpQmrXlGggKVGBC0SEs+zWEEojdKwyJUAA05sVmLSpn/8HM4AR4jKiodgtncsDP5EXPRKkqNDCnApSS/cI+rI7POS3p/8jlMHXrXnCpzWJRsF/Ozu7m4A=; 4:X3a65Qu1GIorWDjNoc0dy5vjXYqrLj+v7c+hqsopz94Jm2b5mPQpIdxapNv4RF1vfJ7Hk3WfMwROIZWcYlMwSFFXcJ1Ae2JlYPzlnMSy28vI7shvaErRM7jI1JCAoOh5IQxEIchfQQYINcw5nyab7C+yCJnRuBxg+d5mZT6XL5ZDRjoapqu0BpA6Z8o9I28bQJAnoVgMt4omozhTQ3D26XKUetNE45DkEQ0yZq9/MYWLBJPmQv8jJlLL6bvLmjAvkDLIyjSsYgz4SjsGOBfJlVsD2O+gnh4TUPxAHukAadp4nvdtdzTBGZ3hKvNhhgbX X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(2401047)(5005006)(8121501046)(3002001)(93006095)(93001095)(3231022)(10201501046)(6055026)(6096035)(201703131430075)(201703131433075)(201703131448075)(201703161259150)(201703151042153)(20161123559100)(20161123565025)(20161123561025)(20161123556025)(20161123563025)(201708071742011); SRVR:BN3PR03MB2354; BCL:0; PCL:0; RULEID:(100000803101)(100110400095)(400006); SRVR:BN3PR03MB2354; X-Forefront-PRVS: 0504F29D72 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR03MB2354; 23:+B4ywYqh6kTpIvy6wjeHXCqIYfiLD5DsirNaPrDLV?= t2pQWMO7+y/CM1s81inLP8oh3Z6RJziEKCJBZqSc9bIrTXWGB+UmnmOUvl3I52Qwdz0bY32Y9S/TNSIfEqBewoG3YvBYSnghX3UlXFi3sCIZDsXkkAsjqSDSOqbOeJzOZSbQA0ln4ux/sBTNB4WhExycUrmoope0GxhPa2eXR99SQBPlD/PujtnbVC82LDKNxb7mC/IdR4sWUgJkYlc2ELC4DwuGKEoTHDEXuZW+Zr7nY+/s0bzs0FgNGiPzfWy0QCUofPXU28NXzxgAEO/96h85caJ6Mxp1SmCrYfY8By1WYICKYSpjEd1Ern8dTh4SBMLPiwH9DL4jx6GPZbcLeAJnZ71JflxdwoWIHHaJKmil+r3GZ0b394xI3JXOCK69AWZpq1J2BNJhbiT3LWJ4mV/4DVjYbfSNXZgoYiw14nXersFLop80dehgTVQ1GywZaaOcDWcQLeRqE1BuHwJ0yAP4Kd+O8jF4lHCOKto//9adYhz4t4LKuzKbybxwZ4wCeEXE/EuoRckzrak6u9fidukRdmeeD2rANs/It/3QFAB0l10YZs5pPuCQWAYuoh4kacmOPqAwZ1n+J8qVB48PAcpVqN7Pt82JBtHKynmToWwThwrBl5Wm/d9IIUfUB8TqI7z8DGdgqPYwh+L0wtYbpwTHqaK8FSqBjqh2znGD5IvmnaHiM4VOGW/un/3f5uojOJMcYDNQbQDAXFTRpq6JRxFzHyFJPvdSm8xTMln9BPOnppTAtWVsUikxcy068R8wLtcPk4hTFWYbM+sQJBrf1sQ+w37L1hEGdJaaxHMgacQPJlK081h8SaNhuSLfErYKJj/oUtKjp0izJ0XHPAD8N2K3io5f306dT/j0jcgliu718MS9Cg1Q+kP0z8uPqz04UaQESlfndE1oi8TNLC9fjM3g8BH73vq3KlCRz0JhqMhIRzrIbWkVyGk8aKK+jhXJJw92yB20A9wy5HY3XMjJOFItAm470/Ol8FC0uQUyuVkEjRnJ2MBCdonIqzC/fczCZUvt6lDhAvQfkin/VZwYuHlf/FeBMjrInQqEM8KB+nrr2YKoFjevTCEh0gx/CCABYU= X-Microsoft-Exchange-Diagnostics: 1; BN3PR03MB2354; 6:E81cVyFxNd3sNthfQ3W+YxQgoVWAJMk0Gl/j8JltxiNtCx3u0n0OuXw2/Vdryb/1oiBccKcITixxHgUeuS3hGsgoFe8YpuWVnnjRv6DVoF0q9hYXPYdZxeVdtwW5ZuGHayJ9CPxBXOUa9iE3mNU65hpLv6xcZmflIgFUo6zqTzK0Uyw2OHgcNNzVANYRr7CJKfuvXaDYIj07+0n0dS/v+nZbQaMp2EGFVpNP5XaG84h4bYCnNDh7P+U2dxNzhYeMZlKL3WWrgQJEwBzUzTgF7uX9gLIlnQoubIKjTtLm0WJ3b7Xfv4NZvX3TtBQomNu+NT6Syw//ZzXO2AG4/MnLWcvGrY13FxKdEkB7F5NYVRQ=; 5:Ewm5kEyiaDT9CEj8wWKF3kbAaptCRzjyRTlrTtCzKd9qU8L1nY2XLgV+39UyhGDW2JCvJJUQiBKUgy2M1t6eMcrE/pVHK+FsiRefQVlpBIUGcvt617AsTP/IhGQPoK/Vhg9vpxQNs3a2gMebLUctKukk7aOdDT0ZGbVL0StPEKs=; 24:npSOxDx3qSaRjAC+PQ4rzr4eEpWVp/DMb0Q6jeFjb3jUZ9eFJ/GWOHEoNF3OComfdaUgNz4q4jWVc4LJG99KDhbdvdFPWL61pwqYUYnW2mo=; 7:GdZrgTwYsf3e4Kizu6UCTFD0z6HDG2lXT8kkL6FMH5v2HICKr9YFdGg4IKQ0lQxI17YPKgj2DVaoSjmySrJiqh72Ma0nrIvIyQZGN2JBV9PBvrvJ5+tPSDrSeim39DLvfKIWGJN3FbTme52KcV7jhS60OUd+9zO7l7kzu6cODwFJM3nT08x3LL6bVUoorw6E5ffbnPK4NgyoYPQDKaBPqlhZJR+pYGzdmbrnVBQhbhldQfAEe7vjfEO3r2dyISkP SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Nov 2017 07:58:55.0903 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8b1ea238-2337-4b6b-0599-08d5356cb50b X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB2354 Subject: [U-Boot] [PATCH] armv8: ls1088ardb: support force SDHC mode by hwconfig X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" The BRDCFG5[SPISDHC] register field of Qixis device is used to control SPI and SDHC signal routing. 10 = Force SDHC Mode - SPI_CS[0] is routed to CPLD for SDHC_VS use. - SPI_CS[1] is unused. - SPI_CS[2:3] are routed to the TDMRiser slot. 11 = Force eMMC Mode - SPI_CS[0:3] are routed to the eMMC card. 0X = Auto Mode - If SDHC_CS_B=0 (SDHC card installed): Use SDHC mode described above. - Else SDHC_CS_B=1 (no SDHC card installed): Use eMMC mode described above. In default the hardware uses auto mode, but sometimes we need to use force SDHC mode to support SD card hotplug, or SD sleep waking up in kernel. This patch is to support force SDHC mode by hwconfig. Signed-off-by: Yangbo Lu --- board/freescale/ls1088a/ls1088a.c | 18 ++++++++++++++++++ board/freescale/ls1088a/ls1088a_qixis.h | 6 ++++++ include/configs/ls1088ardb.h | 2 ++ 3 files changed, 26 insertions(+) diff --git a/board/freescale/ls1088a/ls1088a.c b/board/freescale/ls1088a/ls1088a.c index 96d9ae7f1d..60f40edb5a 100644 --- a/board/freescale/ls1088a/ls1088a.c +++ b/board/freescale/ls1088a/ls1088a.c @@ -18,6 +18,7 @@ #include #include #include +#include #include "../common/qixis.h" #include "ls1088a_qixis.h" @@ -296,6 +297,23 @@ void board_retimer_init(void) select_i2c_ch_pca9547(I2C_MUX_CH_DEFAULT); } +#ifdef CONFIG_MISC_INIT_R +int misc_init_r(void) +{ +#ifdef CONFIG_TARGET_LS1088ARDB + u8 brdcfg5; + + if (hwconfig("esdhc-force-sd")) { + brdcfg5 = QIXIS_READ(brdcfg[5]); + brdcfg5 &= ~BRDCFG5_SPISDHC_MASK; + brdcfg5 |= BRDCFG5_FORCE_SD; + QIXIS_WRITE(brdcfg[5], brdcfg5); + } +#endif + return 0; +} +#endif + int board_init(void) { init_final_memctl_regs(); diff --git a/board/freescale/ls1088a/ls1088a_qixis.h b/board/freescale/ls1088a/ls1088a_qixis.h index 4790461b47..6cad396cff 100644 --- a/board/freescale/ls1088a/ls1088a_qixis.h +++ b/board/freescale/ls1088a/ls1088a_qixis.h @@ -36,4 +36,10 @@ #define BRDCFG9_SFPTX_MASK 0x10 #define BRDCFG9_SFPTX_SHIFT 4 +/* Definitions of QIXIS Registers for LS1088ARDB */ + +/* BRDCFG5 */ +#define BRDCFG5_SPISDHC_MASK 0x0C +#define BRDCFG5_FORCE_SD 0x08 + #endif diff --git a/include/configs/ls1088ardb.h b/include/configs/ls1088ardb.h index e6bf2b8d87..f7b502d1b0 100644 --- a/include/configs/ls1088ardb.h +++ b/include/configs/ls1088ardb.h @@ -11,6 +11,8 @@ #define CONFIG_DISPLAY_BOARDINFO_LATE +#define CONFIG_MISC_INIT_R + #if defined(CONFIG_QSPI_BOOT) #define CONFIG_ENV_SIZE 0x2000 /* 8KB */ #define CONFIG_ENV_OFFSET 0x300000 /* 3MB */