From patchwork Thu Dec 15 15:23:15 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fabio Estevam X-Patchwork-Id: 706146 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id 3tfczm4Swyz9t0H for ; Fri, 16 Dec 2016 02:38:44 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 90A4DA75BF; Thu, 15 Dec 2016 16:38:42 +0100 (CET) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id O4x8BfiedDGb; Thu, 15 Dec 2016 16:38:42 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id B7892A75AC; Thu, 15 Dec 2016 16:38:41 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 05D13A75AC for ; Thu, 15 Dec 2016 16:38:38 +0100 (CET) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qMKX7-UsHGoW for ; Thu, 15 Dec 2016 16:38:37 +0100 (CET) X-Greylist: delayed 909 seconds by postgrey-1.34 at theia; Thu, 15 Dec 2016 16:38:32 CET X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0071.outbound.protection.outlook.com [104.47.34.71]) by theia.denx.de (Postfix) with ESMTPS id 364064BDBD for ; Thu, 15 Dec 2016 16:38:32 +0100 (CET) Received: from BN3PR0301CA0061.namprd03.prod.outlook.com (10.160.152.157) by BN6PR03MB2465.namprd03.prod.outlook.com (10.168.223.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.771.8; Thu, 15 Dec 2016 15:23:24 +0000 Received: from BY2FFO11FD028.protection.gbl (2a01:111:f400:7c0c::131) by BN3PR0301CA0061.outlook.office365.com (2a01:111:e400:401e::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.771.8 via Frontend Transport; Thu, 15 Dec 2016 15:23:24 +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; nxp.com; dkim=none (message not signed) header.d=none; 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 BY2FFO11FD028.mail.protection.outlook.com (10.1.15.217) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.771.7 via Frontend Transport; Thu, 15 Dec 2016 15:23:24 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:; UpperCasedChecksum:; SizeAsReceived:719; Count:10 Received: from r49496.am.freescale.net (r49496.am.freescale.net [10.29.244.90]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id uBFFNHeP008386; Thu, 15 Dec 2016 08:23:22 -0700 From: Fabio Estevam To: Date: Thu, 15 Dec 2016 13:23:15 -0200 Message-ID: <1481815395-4277-4-git-send-email-fabio.estevam@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1481815395-4277-1-git-send-email-fabio.estevam@nxp.com> References: <1481815395-4277-1-git-send-email-fabio.estevam@nxp.com> X-IncomingHeaderCount: 10 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131262890045700328; (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)(7916002)(39860400002)(39410400002)(39850400002)(39380400002)(39840400002)(39400400002)(39450400003)(2980300002)(1110001)(1109001)(339900001)(199003)(189002)(92566002)(105606002)(2950100002)(2351001)(106466001)(5003940100001)(48376002)(36756003)(4326007)(189998001)(47776003)(68736007)(86362001)(97736004)(6916009)(626004)(8666005)(104016004)(2906002)(33646002)(85426001)(81156014)(81166006)(6666003)(76176999)(5660300001)(50466002)(50226002)(50986999)(356003)(305945005)(77096006)(110136003)(38730400001)(8676002)(8936002)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BN6PR03MB2465; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD028; 1:6p39Zw/dEzRe7s+jikAocyPLDQy7q5janozH3lmoq6bzSaBwttYjvzhSbBm7069NmL/hWNfdzuPWLlg1J6iEuYFIxCXmHb+cdp850JzHDsOeF6LdZFVQIoqSq5LoGG3bMFYfDDK8+a/LqRALm2nLBsfRgfcCmiN6Ud2xp0NJHlhhBk1MAvcFBhpDos2z9HcASYUF3Iwvovsrxx0AV9BjWHTP6h4Oi+zeKsjmGNJ2vAyNcCZB4SNNRiSKJa+YeezoPQ0n3qH3TkgZxxdcqNvL0kW7Z7cYl0fgRBITTdMk6WYGqbxRSGQ8AI0F44R2Gzi1k9ObKKt9uv2QZJOJ1cjEiIt0iFudKkW3ZrfIRVr2T81wVJnPpi2/lMR5cCiENKKllXt67p9wAULUgoCyKpIi/cccTL+d1oiomQrQGskuaHCBFBjJntQWxK1YhTl2nc6dwq6L2acYAoXrSd0x0Wl5We9PZVEMvMKlV+pomvcZFcnvVLYWdJCPBQL/vnvYRPAmbZ3RQ3m1nfzOjoKmZvR22yUEK+JmNa0OkKjPJITEHJlFfgUr+VZXbL71QSeYK1D11mqZ6cpr9R6zKA6//3CMUkRnru+o3XQDY+R4riQZYxxTnmvaC2dCrxYYU7btsb3Fy+L02MWaP9GoX1TnoyC7v4gWnRrghQm2uSuzBUvqR+CeYV+QivfKkOlf0k4UldGZ/sVJrasBm0D3qDU00aTqGT31K+I6ZKmMeN6U5om/AbE= MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 5c6d076f-c432-474a-6de0-08d424fe4fc1 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BN6PR03MB2465; X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2465; 3:8lW1ZEBOpB2KuaY95Gix7q7CkDJQGO0uWiN5Z75oZQhqPeAZZgtRM/6SFAorhmtRpEkWrPUL7Jy2GYAZwmaVh+WfsV7qWSYP1Po+a+xHmdKihEDrXD05LgfjT8yBFxGBIlFs9KO4UIA0DFV6N6/L5q12F8l5iClzEGvZm9pOsZlmd/12w/+BQG8X67SDlztkVkibG0Icv14/Y2xjklDsTY4irHiYB/7GexjqYTUWFgYfyXZkHoPnVUCg7FSyulCn6G06bNcehZ7FntHRHTfPBdFM3koebIzUnNohyEni8TPXBq9M2TSWhXU8mkf/BtIaPnehEt7GOGMR19Yyw94Ee54n/qipF8Wl6IHxrMYVxri9hqTTj3nP08kQ4trH9kXr; 25:EHrSCvqgpR1Cltk8y2sH1VIb1WXPGUJRt1Y2xkbcTkvWMVVu+UfnnGKoi2sXaa6X8I1BuWmTo3AXvoPcZwtHxW2TlS0X0RfeIPIHs3MFaFgBBtM0AK+yS+UMiF5MHJRpbbCuJ3YcRI6oQhQqMre2Y8klHWQSWYdyol4xlw4xamcv/kKvxryEV0zZoKzHArzk6Cr/5/nx2gBRS0B5zxrLZIUjUCiSM/J9z1ucRFGYywuN0Z6cjCZLNC4fteeN8xbxTlTbN/X1BmWqDbn8WdETudjUobWaPRx1mOYZAoYC1S1wA57ZD1cU/jZlJwtGFsLLINdhtWnwXOyMRWaElwWREnm9TbpcQWPutMQyd/8qG7f0cbsnO6xWVrSMVApIBTI+6PxqROptZ6UWTIt5lz9K88Z+zImHZEctHef1QW+5GVs2Z/qx+fk4OyjV4MyX3PSEobd7XMvNcMCbJvIcJF+H4w== X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2465; 31:rXruAexoaHdhESdYk4pSnx9Ha7srZ6rjhmc64ajxluiqBuOMK0efiYS2sCYTGnLurvACZYuF8ubHmkv9QkV67XUC85kg+Pxsk9J3846JWpZhDpUTYj9K2xO4YvN3ZbTOb2ecaJVK5EbbEwMcLbA1ZDG6O6VPSdfnY0UVcUaHyuQ+sIotvX7siyrH/Oo6ez+dHrIkdMw227G17dL4R7aGrjeHTVG9Xv7Sx3yOSXR5Dns+qXAhkm3yInewLcZlRQR9OHCgeuvcqey92GTJjzZIkhhRXWrwx5YuebaVWUB30zbjhqCNPpaLYJeQ4jUrCG7q X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095060)(601004)(2401047)(13017025)(8121501046)(5005006)(13018025)(13023025)(13024025)(13015025)(10201501046)(3002001)(6055026)(6096035)(20161123565025)(20161123563025)(20161123556025)(20161123561025)(20161123559025); SRVR:BN6PR03MB2465; BCL:0; PCL:0; RULEID:(400006); SRVR:BN6PR03MB2465; X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2465; 4:DxWP5Nukrs+a9h/j6FYC6SPIHS75LtJyFlkP5hd/T/b9VBpzaVvxJwT5sqlzhcukpE8MCkB4MI35pccjZQhyOAtZUx3fsQEHuSkRaw8N/30ZRXFASYlNZ1eyf1eKgb2Ms8Il5k0tfqMON7KbxClza4qBxTmGY4GuF5JPKLFr8PQh2pOZPfzI1YDcIzYboGX61jpdeUcvxcIDO5jB/sW27zY1CQxA7joXHE825TJ6NDfbsWWy7p3E7OayK0ymee7kyRFnxeCK5/CutKjBDs/4WDmS43y6yLNYOMM+9npRbGs+Cr572IddPimzfDnfkD/VXUlx+GB9EvPgP+AQlOrIVd1yrJc4xnRY2BbDLnyq37VacCP9QrfnnDn/TZ0r6dTIUno/0Cy5thKbgqDGvGzE1IDGietUVgEomA0G4K9KZ4LbkDsJO+tcd74vMVswKOGG77I4pMclNMOuwu6QvZ4HEU0gHOluN42rxt2fTDKFJngZPYL1njCSY8pBkO2jqg2TyRxU+HnQ69T1rK+LtODUQyc2sL0/TWseIosBZnWdMRt5uokXLuU9Y5OZIOC8Xug92zn9koxc7ShHoDxhXiFaCfbGktK6P9MzWdsWbpR8s6+kmIf4lBNHSVhNMK0YG5scp56ToNTP39GImd7ZR4C3LFO6B+I148S/xbSFdKps1ZFdgmUQl88aQUR5vEUnbI2I9QuagLpaFjjsZPFS3eMU01rNGFOIje/xeb/8tkyjg8gru3ROROw/E8bQN4l1YzFj X-Forefront-PRVS: 0157DEB61B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN6PR03MB2465; 23:OCJX0+NL+NNb0iEECo0aldpT/S4y1O6uIBLqfy6ZN?= =?us-ascii?Q?FFf7FkzMScnD+DqPF/1wJeGvsBoNbmVo30NEpAbdQDRllYMa2SmLfQbd7OQf?= =?us-ascii?Q?n53/5cHGbTaL/PcROqtxYS1Ukdx/rzEFvxB43Fi8P2eJp8gnM3T3FLwVhfmj?= =?us-ascii?Q?Dxam9QutQnzuc3ONCFX7SN18rmaMhCVcxVkNeWKCEkE2F6AcY4CFS8XLZcTT?= =?us-ascii?Q?f36d6NcZhNm0XXIIYY7bvg2LrUo9JsT+DNBCIntzaG20V+jmLBT6wHsVFjcB?= =?us-ascii?Q?/XYvWaauaXZ59jKUG8pP4WImyK0n/tus/qP3RmFxuykYMgjhXDceoRfwKq38?= =?us-ascii?Q?WbHU7iF4MPwpagShdAoqfIA26jx3gE+fjvgEFsqB0upVvdxP25dILNioWl+e?= =?us-ascii?Q?cGX6dZ2fnXpg10ozrQW4e+5UZOA1HkmPfusqU/TWM0kVBhUhDPyhDsvYuGoL?= =?us-ascii?Q?9A8+iVaTgAKEeLJKDvYZcklTLnw20LUyaDFEK3Bct5UUGBjfmpuZWLSeXqJT?= =?us-ascii?Q?1Z2hOribWgo2+WvO0dZY/2UlBROtoTX0k8BNp4kYBvuvqseecG2VD9Z8KjfK?= =?us-ascii?Q?dX2N30JiGnkarcn0R5hOpSWPdnGMVgbSpA73+JpkaUZAo3WlSmFvrE0Mztds?= =?us-ascii?Q?rIhKNfjiYCHxnu75osRylXY/7hEKFL8V3zXMEt+Ku/39MxaUsx9i1h6+yp7v?= =?us-ascii?Q?gtc/koCe7ccEENlxh0JTOKX7OeyABpDAwu4X1koXm+nOxwBXqOG2bvlB8Xfn?= =?us-ascii?Q?wE2vcgaMPEgfI6ufeSvj7vJlOjgOWk4Es4D+RbOvErALVN3o0Vo89sgmJ+lg?= =?us-ascii?Q?IRuYCbF3IhxQS4z15Gfze74J2AO2DMaFLJrXMJBcqdUVJjg85Sgf0AeW3eLA?= =?us-ascii?Q?Hc9Ecrdo89Kz1bknU7ZyQyOFeF5OcuFOiRadzo4g1G6r/3UgAv0nG6+lUJQy?= =?us-ascii?Q?D9mZtDfPsL1/prX4luYsYgleloX9lwRFn/KlEVwGc0SB+CsQNGvb89Tv4rG6?= =?us-ascii?Q?Eg61wzzoW69we5cDJ9OnKA4EkggJTRT+EQ5Pdw0V7nEy7erVTZ4yo6yvYtMA?= =?us-ascii?Q?fkIB9Y/tSQJ9P8SAsFyMR0uLrl0cUXH9r/rdEwK5iOnucD4x8KPFECHT6R7T?= =?us-ascii?Q?LDlSGumqKwkW/drys8zm0SoLBg6c4HYEnW/44dU5m8Y4AnJ6/3jm/v9Ikt/V?= =?us-ascii?Q?M1OXhk0Y4yen9KhVCuGrsCuqZdQvnt3JVv6l816vYfLDITl1vJ09d7vjcBAU?= =?us-ascii?Q?NrMpfIBiJp9aayv8zIitlNJRWH5j7fSsMQuVTEaLnxxCj2gfeSKs9b0oinon?= =?us-ascii?B?dz09?= X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2465; 6:/Kgbd0HuaoI2HWScwwGZaTwkzUHQPeEPy631b7r2MmhKh4RG5zjWQrmtnf1zkeOGSozbP12lWo6DIFQKQgcjveYDang+KBEezMssbULgajBHt8ZP7BfC7rSzRuDFolA/mXvO++QJBPdeRn9nhYVhsep3cyUJrwDW1Mnk7qA63vxGq4HFxmorXvxnBtNy1dsYPwwN/NIUTiem5hFepCmAxv4WnmUsb5xWwIzhXIfGoCslVwH88Qr3OKBtIasE48IyEsdsq0RDBoHiQv676Af7l0wGXb0KcrhXLZx8+i7pSaTMuswIL2zjV2/KvOeoegwZPLZZ5WzFuHRVSh0c2/i9xwVfgU4nis5vC3OAgKod+x+0he1/I1vps76OWMt1ME0U9SvCL2YYSZKYzC/uZg+OdxEJAGosefbFE1gekHMCIUMSFQmJ6aMURSy1T6HHpsg5; 5:AFpocSk57aV7IBy7pGq21JzH5v0hCYn0YOoQSeUQQ+4/nYRZn5Vl4fXzVcrSey0PH9c/0XfXsWg7poeZ4hjhXqzE8mAAAI12GyaM2zadgNd26RXa3RXAsM7lARZvFjVobwC3Nvxs+XmkrhRFm7vrMljq+ojOBNJLc/cdQ/hcZEfKRPheGMlAhUiPSZVqiE2o; 24:aVt3KoaF5HcRmJ87R5yXtbxqSQlU/8klbChmrZj35UZuWd/+Znz4P02fcw5ocGPOaQP1Z99G7yoq0nfAudc4Zv3xEHMnUQvk3PndXIIwwyo= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2465; 7:VpesBq6ao8R/ocTFFHz/3bpO7s9KD5vqwcxNEj25zDEkD4Yu4LfYtbkoYw3Ie7TszsILMd9xCqko0wlYWC35qMQp6AASgs4Ve+a7/AcuRnejYfNjsrdPMyoo4XHkB56g5bhAcszvcl+wC9B8IYsuTNwMer9y+dz8qgAHizGgkjHnSrri6Vk4TMq2T87vQoARscb1R1Q4ciy9FPu8mecO5FwMxn9+hGMMAFsMjZHp1zSR/dH9V2cGXq9de6e9CjgNUZ0JVEQn/b83mRDXp4El5vqPUuSbPABhP6pZ7q8BwISHwNVBTi4M+LHSB+/bDDRr/EtyGV8X5X6AfkgLFHTPRp0X/BogJIfbfufZs/aXWJHKR3/QqtQs+kWKWRjK8F2zGcVNHTgk5+ouksxLIFj3EF9m0FYHRtzsGIv92+wfRnYm6gGfId2SJnfz68SPw1OPR9gZk+BzJoKo3xtvASQp4Q== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Dec 2016 15:23:24.2580 (UTC) 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: BN6PR03MB2465 Cc: Fabio Estevam , trini@konsulko.com, u-boot@lists.denx.de Subject: [U-Boot] [RFC] cmd: mem: Allow 'cp' to use the optimized memcpy X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.15 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" If CONFIG_USE_ARCH_MEMCPY is selected, let's use the assembly optimized memcpy implementation for the 'cp' command. Currently only Blackfin uses memcpy for the 'cp' command, so extend this to the CONFIG_USE_ARCH_MEMCPY users. Tested on a mx6qsabreauto board where a 5x gain in performance is seen when reading 10MB from the parallel NOR memory. Signed-off-by: Fabio Estevam --- Sending as RFC as I don't know if any extra checks would be required here, so I appreciate any feedback. cmd/mem.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cmd/mem.c b/cmd/mem.c index a690957..c1d9a7c 100644 --- a/cmd/mem.c +++ b/cmd/mem.c @@ -465,6 +465,11 @@ static int do_mem_cp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) } #endif +#ifdef CONFIG_USE_ARCH_MEMCPY + memcpy((void *)dest, (void *)addr, count * size); + return 0; +#endif + bytes = size * count; buf = map_sysmem(dest, bytes); src = map_sysmem(addr, bytes);