From patchwork Tue Nov 28 12:31:47 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 842117 X-Patchwork-Delegate: sbabic@denx.de 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=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="LTvxoaaF"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3ymNVn6mssz9t2x for ; Tue, 28 Nov 2017 23:38:08 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 87291C21E78; Tue, 28 Nov 2017 12:37:32 +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_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,T_DKIM_INVALID 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 853CCC21E26; Tue, 28 Nov 2017 12:34:15 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id D07D9C21DA0; Tue, 28 Nov 2017 12:34:08 +0000 (UTC) Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0078.outbound.protection.outlook.com [104.47.0.78]) by lists.denx.de (Postfix) with ESMTPS id 4F72AC21EA5 for ; Tue, 28 Nov 2017 12:33:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=0NlNd0qBY23//TdWUot8lW9X7yNV1CgSctLloU9ZgrY=; b=LTvxoaaFOqBjDgYYreZ7VqJ9tk1//eLTf0iZsRdPS/+Y10hruQ6psP/edo3hO6mxS5K5KMkD1Y9a97Y1S64Udwbltl/ORTKYMi3nKY1ue1Rz5Zh/QGzgdVVtKwl7szhBazFD4BITYYQtd/kGNgTJU5PR+zokYvYgYNjAGUGNsus= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=peng.fan@nxp.com; Received: from linux-u7w5.ap.freescale.net (199.59.231.64) by HE1PR04MB3227.eurprd04.prod.outlook.com (2603:10a6:7:1b::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.282.5; Tue, 28 Nov 2017 12:33:03 +0000 From: Peng Fan To: sbabic@denx.de, fabio.estevam@nxp.com Date: Tue, 28 Nov 2017 20:31:47 +0800 Message-Id: <20171128123205.12610-6-peng.fan@nxp.com> X-Mailer: git-send-email 2.14.1 In-Reply-To: <20171128123205.12610-1-peng.fan@nxp.com> References: <20171128123205.12610-1-peng.fan@nxp.com> MIME-Version: 1.0 X-Originating-IP: [199.59.231.64] X-ClientProxiedBy: PS1PR0401CA0047.apcprd04.prod.outlook.com (2603:1096:803::15) To HE1PR04MB3227.eurprd04.prod.outlook.com (2603:10a6:7:1b::27) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: e76468d4-d93d-4f7f-3323-08d5365c2da1 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(48565401081)(5600026)(4604075)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(2017052603199); SRVR:HE1PR04MB3227; X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB3227; 3:4fi/CzfD2KLfvkKYCUzvcs+qDLZJf9eEVw2JdouLrDVTzYcda/rLUmZ40XKzdxMtRAfHkzvEgQN2W0sR+QYfddyNyLJVootxdSkYrn8atxmUPBqAe1lEPt3m8vtgD9hC/p/RqHnvEtzg+RApRRB75TSchwZ6+Zu6nzOSXdVvaWoj6Ce7kduIJiJRdnQ3z0evl5l+gEBMDJil+N21TaAFizSiI/pWRJkRZUoYLo68Hp/zqT8XtWvr1WF40nowrlRG; 25:3Vj8mCoPUV2+t72sre8pWDFlkuYOj6PziCa4t0fJ/sac3rSMR62wOy0btP5++5w6pGjS+MgYr3T+LrrYuBftHkxKxCaFyQYZplaOSCUkifqy3dft+jcowOLUu+ZsIBKOFE6h8I2y1Zod2Bb5IdaDTRmrU+XPR6lpTjg594J5oaBZ6KJqCHoA3d7Rz9XDiziLCBqQwJRYg2toytUImY674YZV0pcDksV1zhFVarylQvaP+xkL7HHxS6G3jgrasp2zfQKSdRvToZbNLIMMeRbKmVie2eThS0zkHl7iCE7GLmt8HVv0Q69kuxY65dDsGWbCpqqb/MOb1zxbj1d/aRc7K3nqtGmbI1NfowZjhSGCY+E=; 31:9FhHNJlkkvT/lM917vTX0qJsQ/qIDmmc/HOnf6Fh2FCF7scTo5wM3nzzEfTfusAJxd+lbkMyZ69lI7iXkdbdx8J/tiO3e5pw8vVEkOIHkw/lv/I4+0KVrIgdpJ3serv0zpsDfaLDqCvlWij2pYRc30OdJ1yM+uAY+SfmlGfV8hG5HtD7v5v5EA8t/PA1/aencUbURmuM7Q9LgcQFfgR5svpdEW4wfep8GRFRHUY54JI= X-MS-TrafficTypeDiagnostic: HE1PR04MB3227: X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB3227; 20:yjpWcKDfV7uegWEMTV2sy0FeAArG0SPpGrSxMJu9bWPuCiuuToc4ZShqK/tuuB3l5HXFL1Oiu3n0cMgb9gk6NXBlCpwx1pKPREDSTbAk538HFJBTy5axKM2k1S7xT5mxdpUdP4krzj1SGpWD6Qw11u9MSZudpFAlpRAAVNATN2wMWqwS0etLlao9fs3wgn4bOnfimpjLyq4Le8mYb14hWZZ/3A39ExakjSh5EpaTIvgt4BB1FQ1vDBvlqki/7SZ17h3qaRahzys/M6bdt4Ad/glEpC7nj0U/od0rT6dzMyY8anl0iqBzlDUqHJkaR3jKWFpaGjMNqvgWyWYhPr3Tvv33CYfrpGgYhjZMgNHdq2NfsA+KJKEwyJKCv52jC9t1lq3rAgJ/EGfCNNsbEhHq8+SfHHl4c+/+BiRAvnSLVwCRfIolvpn4uvuEPolrd56QdogFdYNeGTVJph0gkZCdZyWzFiJRlpdH5tBhCFFG1C3Kscbxw5/N7Sgz1WeOO8Ri; 4:j7zMMlG0FY15Gmb7mzyYG7d1H+Vi37NG2t3AOET+c2luGGk5Np7mVOjOXfbzCIQO/0Siv140t0f4HCYWtnqw6bhdNxGUee9IAViDNMneoMJ4GME93BOtU3nXCYuuX66tslc1FP7RCvJXLnGZtP4cEbpO8myKiHdWJ6PZHYdrBKslDgUuTKTe6xO35MI7P1F8KhGxMnox6xA8MTiLDoCOnT3tV/vB4oQIHg5jFbu3eBgI92t/Og85uXI/Ke336OS1hgyNFl81O/TsW6C6QFQImaRGs5Fpt9pCXcRqLj9j9jGmh4xwZOn8C1nxZTmds3tg X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(2401047)(8121501046)(5005006)(10201501046)(93006095)(93001095)(3002001)(3231022)(6055026)(6041248)(20161123558100)(20161123562025)(20161123555025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(6072148)(201708071742011); SRVR:HE1PR04MB3227; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:HE1PR04MB3227; X-Forefront-PRVS: 0505147DDB X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(376002)(346002)(39860400002)(366004)(189002)(199003)(6506006)(5660300001)(6636002)(6666003)(6486002)(2950100002)(76176999)(101416001)(50986999)(48376002)(50466002)(3846002)(2906002)(1076002)(6116002)(81166006)(81156014)(8676002)(478600001)(305945005)(52116002)(7736002)(51416003)(16526018)(316002)(16586007)(97736004)(68736007)(189998001)(50226002)(86362001)(66066001)(8936002)(106356001)(36756003)(33646002)(47776003)(4326008)(25786009)(39060400002)(105586002)(53936002)(6512007); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR04MB3227; H:linux-u7w5.ap.freescale.net; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR04MB3227; 23:AtPfTdDFvmGAIgIoyTZ0L5NwypArguft3e+0g/30B?= lcNABFN8NfUPdcbbOLCp1vaw4rbUg3MTt4t2fw4iPO7xzsl5fLonNlxTAhHrZn8PdUDLa6fvvYOjM5RIAwTfK8yXsXPxFODbOsAlXIVo4Ar8tynT1Xm5pANWgXYJ7I0UB7Rx3uE3E+1Iq+m9M8t/Euuh8eks3J3c6AuWG6h5MUi7p9hulP7SXujlIkwDNPrxP6mb0BtZEr/4blhb1bRJ3u+9EmF311jfDxdk7VXbBSr3U5pmU2qkodMHkiyfCIOX81UFWB5SXW0P+kbH+htsVsiC+pyUqpiBY4EGmxTgjudEk+orhUtRm/qiFsHIx1PSBo4jKkO8da/LHQg466D2jI1YXF07pv7v4NPt6IMtqI9gArDvP99Ww2iShaz1Nm6MTipO9eybq9a1Q53/SWPu0SDG7oRjI1w5+ZHggdZVjOuxOSCpbRuh0AChejufij9FE0xr/ES31FRsMY3DHKpEgctPH9OYKI0lQ0GSqOHBH+E0r6xA6sDzKju27ctJ8nwh+oyLjYWj7Pttl2Z+ZV435L2Ne/SgPNKTnZiEQpF5Z9CAkacgKz4kjzC4NfQ3dSR8n/XQQd/DNpo69n7QTIxJZbMYafhUNjp4PtWeqkMo6JK5J2R41ZCNFTeUV+2TroTExgu8sUbCsgsfdh1txvGFOwzNIJzyzarBSL+/Z+tXzPXU8OBlhnosbtVVY0N9xpatFtS87tjyGXSoljIiIAPuhs81E1eG4foig20BdoJdVjqhBraQ7FmMmAOq1WwkLe9bL1FtrMms3WtAViS4vy0wfJSntR9Tyg2IaiLHJ6HcGz+zUpJ57Az5wHl6fe4zl5830YJcwtagqt9SVdBRe/6VVH08tkm3qT8LIDm8obamSsB6g5gNotyV8Rz89ZBxPDcQiuJLKncSQnoi8P7rm4D+NbDEYYs1a0pRfiBt6nVG0Cq+fnA+scROjswTiT8QeqSKQE2scNBOIes+DBj+7ISxxQj0HJz4q2sDlgdB4AcxZPqfxThn2rOfxFIluxPgyaweef4SZarbePjMo9Kf+05rzt96jg8Hf13ifbBEQNoETBt6QEVmZiOLFl3P88w4V0okA0FAwLJWhmABpk0e5Xo82WGnwHGx1TLitUD+2CX++eozA== X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB3227; 6:3ONfOB8kBHYQVgScA3FhmLKA/xfeRbPWxYOroTpNqpVwRTuUSt6vrxPqlAxvmpLngvdGicIVk1WsHgQ5qSiNiAlOUTjUO21ZXwYxlwR+M9WZ2y56v0OQEOHwNSBPE3wqpzTJ1CDqqYzYZsS+PST19B5f3usV5G0U6FRvQeR2vnvDPBL3ViyqVbW11E9PKQgrHPETTOhxCYKnA0CL16xs0HXA5nQt6ebj/+Lna+FhDBQ72EfVgWO4IlsAb9nN7QHwq8eiu+fbPujjm6AHd+sQRA27CrkX+i4ZjRyuDBvn4814tsvPeovMyouqgCdQBEtGN1X6wDMFifPA+/CnnWDdKA5mTYlr0AfqWOvIoWbfjZU=; 5:jv7wBYB5JbCB0Pol4qJvsJh4GnYYA4ch/MhbGbNjP7s16z19cfMUp6FLNa8SUHi//ciIyJ0GTjkSvvxj3PLoWUAXS3kW8cG2h62JNdHFPHlY6tiAdIY05O8VUVBYywQsNAk+ZXizUQeA0XqGNSBO59bbClg4ddZRwvkS+cMgdRo=; 24:/wQ85O+XvtkHARb8U/oDOTUH6wOq+UIY+iPd1/tX3aR8kFo1wI3+07WvdTQ1bc4f8IxyNZ2rFoMJM2bwlF/wwrMksX0uKPP1MwXxHSebjIc=; 7:Y/lMZT93n1cYb1QnRVE6n3LSni335br0UGRUw5hBsH6hnwBoc8Raa7SxYwD+lJxX9erP9Grw6v8RLT1qflq1+xpTKWo9M+r6bEz72+VadLX4m/0wtdemnr33WCo90BG89d2YO7MjIsYDAS9W4trzO66KMrx1Ok0D/tyYQXpddJB+P2wB1pPiCa0+H0yI+7AQAdVSCBsgWbpmOkMgrl/JpbSVpEpVt3nj7r7CcVwHz08qK5+NXw2NwYD/naNCxgjd SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Nov 2017 12:33:03.9316 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e76468d4-d93d-4f7f-3323-08d5365c2da1 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR04MB3227 Cc: u-boot@lists.denx.de Subject: [U-Boot] [PATCH 05/23] imx: add sip function 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" Add SIP function to issue SMC call to Arm Trusted Firmware. Signed-off-by: Peng Fan --- arch/arm/include/asm/mach-imx/sys_proto.h | 3 +++ arch/arm/mach-imx/Makefile | 2 ++ arch/arm/mach-imx/sip.c | 23 +++++++++++++++++++++++ 3 files changed, 28 insertions(+) create mode 100644 arch/arm/mach-imx/sip.c diff --git a/arch/arm/include/asm/mach-imx/sys_proto.h b/arch/arm/include/asm/mach-imx/sys_proto.h index a80a392a73..2d8afed406 100644 --- a/arch/arm/include/asm/mach-imx/sys_proto.h +++ b/arch/arm/include/asm/mach-imx/sys_proto.h @@ -122,4 +122,7 @@ void lcdif_power_down(void); int mxs_reset_block(struct mxs_register_32 *reg); int mxs_wait_mask_set(struct mxs_register_32 *reg, u32 mask, u32 timeout); int mxs_wait_mask_clr(struct mxs_register_32 *reg, u32 mask, u32 timeout); + +unsigned long call_imx_sip(unsigned long id, unsigned long reg0, + unsigned long reg1, unsigned long reg2); #endif diff --git a/arch/arm/mach-imx/Makefile b/arch/arm/mach-imx/Makefile index d77c10e176..c807174363 100644 --- a/arch/arm/mach-imx/Makefile +++ b/arch/arm/mach-imx/Makefile @@ -121,6 +121,8 @@ spl/u-boot-nand-spl.imx: SPL FORCE targets += $(addprefix ../../../,$(IMX_CONFIG) SPL u-boot.uim spl/u-boot-nand-spl.imx) +obj-$(CONFIG_ARM64) += sip.o + obj-$(CONFIG_MX5) += mx5/ obj-$(CONFIG_MX6) += mx6/ obj-$(CONFIG_MX7) += mx7/ diff --git a/arch/arm/mach-imx/sip.c b/arch/arm/mach-imx/sip.c new file mode 100644 index 0000000000..b724330d35 --- /dev/null +++ b/arch/arm/mach-imx/sip.c @@ -0,0 +1,23 @@ +/* + * Copyright 2017 NXP + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include +#include + +unsigned long call_imx_sip(unsigned long id, unsigned long reg0, + unsigned long reg1, unsigned long reg2) +{ + struct pt_regs regs; + + regs.regs[0] = id; + regs.regs[1] = reg0; + regs.regs[2] = reg1; + regs.regs[3] = reg2; + + smc_call(®s); + + return regs.regs[0]; +}