From patchwork Mon Nov 21 02:24:20 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: tang yuantian X-Patchwork-Id: 697148 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 3tMdYQ6w2Hz9t1h for ; Mon, 21 Nov 2016 17:12:25 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 41BAAA7550; Mon, 21 Nov 2016 07:12:22 +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 wD881lIUHYbX; Mon, 21 Nov 2016 07:12:22 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id C68A44BF90; Mon, 21 Nov 2016 07:12:21 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id C9A5A4BF90 for ; Mon, 21 Nov 2016 07:12:18 +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 oo2DVEIGV5M9 for ; Mon, 21 Nov 2016 07:12:18 +0100 (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 NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0045.outbound.protection.outlook.com [104.47.41.45]) by theia.denx.de (Postfix) with ESMTPS id 112B74BA35 for ; Mon, 21 Nov 2016 07:12:13 +0100 (CET) Received: from CY4PR03CA0020.namprd03.prod.outlook.com (10.168.162.30) by BN1PR0301MB0738.namprd03.prod.outlook.com (10.160.78.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.734.8; Mon, 21 Nov 2016 02:37:32 +0000 Received: from BN1AFFO11FD029.protection.gbl (2a01:111:f400:7c10::149) by CY4PR03CA0020.outlook.office365.com (2603:10b6:903:33::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.734.8 via Frontend Transport; Mon, 21 Nov 2016 02:37:32 +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 BN1AFFO11FD029.mail.protection.outlook.com (10.58.52.184) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.734.4 via Frontend Transport; Mon, 21 Nov 2016 02:37:26 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:; UpperCasedChecksum:; SizeAsReceived:608; Count:8 Received: from titan.ap.freescale.net ([10.192.208.233]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id uAL2bNrm009411; Sun, 20 Nov 2016 19:37:23 -0700 From: To: Date: Mon, 21 Nov 2016 10:24:20 +0800 Message-ID: <1479695060-27892-1-git-send-email-yuantian.tang@nxp.com> X-Mailer: git-send-email 2.1.0.27.g96db324 X-IncomingHeaderCount: 8 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131241694519177904; (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)(7916002)(2980300002)(1109001)(1110001)(339900001)(336004)(199003)(189002)(86362001)(86152002)(8676002)(8666005)(305945005)(5003940100001)(7846002)(356003)(50226002)(8936002)(81166006)(104016004)(81156014)(97736004)(105606002)(2351001)(106466001)(47776003)(68736007)(92566002)(33646002)(36756003)(50466002)(48376002)(189998001)(77096005)(110136003)(5660300001)(85426001)(6916009)(38730400001)(87936001)(2906002)(2876002)(626004)(50986999)(4326007)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BN1PR0301MB0738; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD029; 1:i4O7e0HKL4MiHoeAlLnDNZMF8lGDrRcqiPGeHdIfWDRCcTe0Zc2px8wuBjEUu2Ix+l3YJY7D0JpY0dPOrg13TT0ztWWeedX+wsVVqG1YA8IR/8Ybl5dmx7kzPyFB3uSUQTb/ZfpRz5xKhwbATcXizZxqXRWhTsMPgoeVZaOCjTwUqR4Howwty/5LxAb2bZXQzsylFBnLdFFBzcT2bq3uqB8pZFTnKXtVj5JDP450po6Q6vv0xjOPehSWAH5uiURoPvo6PjDVmNQ3zSLklo1+MD1m04MUYA1WSycpDsmwBM/3IKA4CGoAoV7JWhNPKu+SFh5NUHqWbDT5mdrini6hDg4jadvFNEAvsM0JvB2qUtWdGw5MbbibvdLDP03Qq5TiUTW9C3v1JI0QSBagYumLuqiVSG0P2oxRq9UnWrfD6A/wJ3wlpjab9vcIWh4mOrzS1mi+DQDtpT0f/Uejh25RYB/E7e73KjiEYO15hS9Ko5z1YpcVkupU/MCDlT0Pt5S2o3RMYKyYHywdJntg9rMqh1GoiMPa8uNU1yJZHt8v1Xpqjt5WrHXfUr98DbPaoQps9akBlD5o4psBk/IrwQV6wk3fAgcLAKmQKnEsTSP2Gs4fjsZzSUp7KHm6lfTWES9S6lNBMVp5BlSpF/oVwYMuoUBhc8UbUUSySzt+20tbSEDS+0Z9eijyz6L5nTGKjoxZhZGCETfjNB1FYxS15mryzgCDjyEI3Flu0uRNjFdGt8E= MIME-Version: 1.0 X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 2:JCZHfnXRX3GiB+jOERafuhhhW+T/Jhct3bn8hvIq4PQxUSdTKV5LDgD4llYwXm+/9TZsBPL2NpwZUEGl8/MQk6mqXDMnpBr/dVEt8j74fJ1cB2+5yj4mBtlEIlVmsjaplrr4m5RivwvmERX0wWIEPZh+E4j2xEYvX8JYd3WH2Kw=; 3:lqvB0lb+1BByzvma9x9odD9wQjrKcshFOpf0/dUcOmJKOVJ59UzJwR+6pQEpQq04iIf/O0kIoagqr16rQL7F7omNowQekr2eqY6sUF/6AE5Dh2y3GgWxvylropz9ldguiO3slNXgFjI7Zm58wihT7yNjbdtTL8XBdTD6pz3oae0Y/XYiQah0Vi8m8qG5ocOKmkg6kP+mOIIqVErzgdNKiuKr48CAwk2zjj3VsUk8L7ULHFUPIOeNSyOP8R4j9u+/5zPI4vDR+v4ZSvOX2x/IXA== X-MS-Office365-Filtering-Correlation-Id: 5e7a3a1d-4bc6-41d5-d14f-08d411b757fd X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BN1PR0301MB0738; X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 25:rcUTCZw0QOUsfvCGgJEcnGwYiGNT6x/Ho/Sn7LCQvmMsZlEzH/zYoHXAvknSldnXcMvBtIEkcmur35UvbBCUFawRIBMNzwLvVv0SiywZrv7svgT1x1Md1n+rJbD2Ws6ONMSM4ucwggMrXZ2+OMb20UylT7bhwNqqtZlThdwrxfaK7n/iJbk+eDb3FLCxVBADul8nsSyA3t0yfF+uZZnu61C64P+pHoolQCoQZVUF+e/jeJxlQH9o6X3QtZlfsWmlYcY6Dwp9NoCXMbFl76WU4wnTsEJ7KUt7x+OYkPfJFsj3wL40G8sOF9lhVsGuKZYuyviEM1zdRMxB1PuJ7zsd2QruehphMC4soiG4l17oN1IilXYgI9rAEenfuWSMZPBN/8n5PRMzyvv/yZc6pCw3cJEdqtz8/Yt59Xv/dbxvyeBtEqW3eUB82ll/YxArHl6sW+BQATyzgYNEHpf93y6DgMMzfbD8+Jkilxarb0dEhWUvsy2Nm+8+wltBZPytrWs6MIWVd1+sYsqQHNnZdHX0JSai1b7Ou1/gsc73sSB6cYk2Bxyxis/0GxhflAYAI2C2ru+mijn116lZXUOwlG7zDQ1XR99K+rHvT0VaORqbvyU5mkFWjY01p2mLCHAA+EwxlxLsbAWa+GT/WYjQtWuMUw0EdBWtYsZwVpfENB05KwJCUIsvtgIj0dD1gkF5gNBv94DaK+Ld4XuYcW5Xbgc1vZ4XkiNJmbiuGqH636CFM1xaw7ozPlt2s2IBm0gYo3Fk X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 31:tmyUnYPDSWr1rdex/T+znvKGAKYWTTlTQg9H+e4kZIYB0uz2ttxYRm+6gGxKDXAKL4kjTt/GhsMKEtL0sPNtbBbYnyzq+H7Kkrw2vkr50v4YY3LSN5c+6dveI18UFGJIc/2Mv43Ma+VjJRJLvWgJ2PezSJtaz+4zb5FcBLgqFgCpXYSIsYV61tsxYw+d8cx423XbXXY/Tei6P9/sMMFPchkG+eH6wpa6P/f54ZDjLlI6BQoUlkwCCZ8MQruN4o0tIMShlCY+dCWb8TPq5X0eRA==; 4:8p8F3wsmdxXRzLggP8ynDIJl4JlThWZ2WUw62PfG7py4j4AIeXpu3thriodzYn4WiklX8gI4QZLSjmoqmb3mr/39yodAPtH39DVsbylMXxYlM9MqZbt/+rKyGV17EBsoeAHHMswZQ3cOpMG9jsfHAJ21KJLGiXe1IcCyqcOq/W4SUHWkA2FkmSxMJpAlnaapIWBgNl++GIFZv9WuVs9bMOVOhsN/Sb/cN4RpOW/U2MnFb1QPzxsrWk+Ff2Je8qqQY4Xkvt5tuB2EFDnBhBoAM8ZDk+4t7wYjtRFjn5yrremtVCBidkf/FrVla95uzCr1oogzgiHqGq2ZH5AlTw1B0BZZCPa/Y/o7g6v44G3Xtg4THsDhpneCUf6RZgg7Rmv0IyGuAaqSXqxjNQysy0k/wyhUYVWvZkP+u2QcjZvFWwh2Lauua3JvSUTbiuBAZyWqK2Ef6XmPNe1C9/arUaDriXz+QlQOskWtkJSUOrzmncIonEArlmKGesiM9TaqPY3Z0PQ96sJJ4TfxQ1VB/lOHhdCs+TlqfOGazfspr2fprWiQ/js/pHK1fCg9KedDnbkFr53WtnSeasny8dfUID9vwQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095035)(601004)(2401047)(13024025)(13015025)(13018025)(13023025)(8121501046)(5005006)(13017025)(3002001)(10201501046)(6055026)(6096035); SRVR:BN1PR0301MB0738; BCL:0; PCL:0; RULEID:(400006); SRVR:BN1PR0301MB0738; X-Forefront-PRVS: 01334458E5 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN1PR0301MB0738; 23:6si/D2ZRMTalszIDWyUp7nABmDSm9snDHlg0taa?= =?us-ascii?Q?dMBXBLtUA1+YUj3s7Ugc9RPta+Q/o5pjT0TIOa5fDl8830WK2aMXIsMuMkok?= =?us-ascii?Q?f1bxKcLJCQshce7CCsikhFZ0YQNMrVCgIyMTF821LdMaXhV/kfAcN3OL4I2u?= =?us-ascii?Q?+Yw/+u9NAEw1EeA2oUj181zpAAM4H80s2dNIFxdOvg2fgVmuKua4KZe72iCy?= =?us-ascii?Q?fhnSY73s4arn4KfvC/R65ImQ+v6ebxL9ujmhrw/2jF7976P6peHsIWgiVIAX?= =?us-ascii?Q?LD5Y4zeea2OlTFaQaxO0/Wpn76uKCYtdqn56pPs+ZC6biD0JLpBkjHMYnyXE?= =?us-ascii?Q?UF9LjvuaDofuvPdMq0WJZaHu9ONK0AxXs+mhCGZbjlJfw0AWJ5hZ2+sBbPYI?= =?us-ascii?Q?Fy3WONmTWbWSCg8RW8JIICEQQXRDrdUbF8mCRvZ/hi2BgPKQOJSwbdnhR7rG?= =?us-ascii?Q?9SUoTAeaUWABrKBuE6bFYGKHDGoSamsvtTAWqPfQEpes/QfjcVyZREGJhy+A?= =?us-ascii?Q?LZaXABdthk0TZEi9X8d04DFBHrUI+5xO9DXmjvLoTq9YzbFSj73pxdv64j4G?= =?us-ascii?Q?caNO1zf2RXDYCkw5BzTplupZZOYpu7YD4xewA7+5f57bi68uufe3MGbzp90+?= =?us-ascii?Q?ht0kF5xJh5agGOyGXCAB+jkgruoCJPdW+KsYq+vRfl05mUw4C0AOfRFpv1+a?= =?us-ascii?Q?telkLdQSIYBoe9cqilaxHaUVaNK0miL5+tDMdGVl9eTUqYVt95shWqEqh9X8?= =?us-ascii?Q?rRyTPQ+LlBi7HtVwsa+wZVLELMC4KQWKHpxZRYITWb53GUk6BIDM3Q91BUGd?= =?us-ascii?Q?rTMmRgUQX3Dmr4bAeIrF0jPkGxQN4wmciNI+hfU5HbLpVuYudOnwqTWFTMDu?= =?us-ascii?Q?5Gohg5rTSTQjkzV9NIT93xPwtiI9me/Vvp78HvAMl9gYsaT0fK0IfOIAs+9b?= =?us-ascii?Q?k6q+Wk4fZtVPBTCdEMSgVxpIP+paeTHW2YrpC6Uh7DxicLAnqm98abimJKR8?= =?us-ascii?Q?oeqjU84cBqOATrSecaIv1ViJmmJYDzqMVRWR11+Sqf8+i+O/HMHyA63XRHmv?= =?us-ascii?Q?jZ3NwlHpJfIDD0WD1dBV2UJ1OrObkGVOnHIpCIzUOKfIA3wuvtQRnLKeVjob?= =?us-ascii?Q?vFBBTtiWlkAs=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 6:qT6Zx8kn2wcoT0eFib5xnf5bcLNxI9QBcNsoedt4scA5+LRgphgGc+hn1DKJfamyziIE4oNvRFUJHce5WK4Fx8hZN4CpiIyPq06SMBEfz/KkE1Knp0UjypFOzt6tLUOl/P2WdsgakLfCiD2B+IycXuyEzK0ryvQXJasSYMF1afiapSEd+OzSQx0t3dBpnkZ3RDfyBUZBsGu5ukLuloxyWmD4WuGDUm8wYwADo3pjMYUmYTisN5Fdwab4s2F3C13kDXFetQ+iJ2gg3tW6nItFSLBzmSkEzZzeUZCsXprWbk+X54+rcrjhLF2lEI9JVjDt0/+S/o/81/LpuWJYTSsu9Q==; 5:HHCdoJJ1Xvt5KxiHLPZI/CzCWYlFKYTysMqZ3Iqm9v+xHi2uJB5aCj8acm7HvmI5t8X9jn8eIC+o3tlCPkpXowoL/90K0uk1cl8F6JSTrAAgGjuLR5Vwd/EQtckIIXg+Xtx/Ueh3g8UgMQMqmJ6BnBB7y9279krn1qhbNN8r5RGL1vHmNUm8fiOfZG9K2rN7; 24:meTC6uL6wbvhH500L2NoyFJeD37vqbSHSxxczQdtmHSxcYauUCj3G65w+6bZ6NXVOlapH0Umz2QFINMTcUMMfJBzLW8PqWgfVP6POZIuboI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0738; 7:etrMwp/sosvbcgX5Tp8JlA9QpWXTdR0UAYhejSjnEzHt8+kxqCU2kJk2yEbR5mmZuXiYDGyKi+Ikq3gI8AFUhcvc4Xiub37d3KcTu1BJDr8AtoqY1vikNhMLX/VLnKZvXkspIJyj6EcNs4igQEtdjUHVfY5CEscShD98LhANq4oSb8iOvkkjXW4m101t8/35CQgfAe2IULL9+d+oIZ8zEYpwZ4RDJDEr5yx8mjVfi4heB/gjm1/X1lB83aoG4tzHeoXq1XhDzc4+ie0psEkQG7loCwkMpiBeY/EWP3N6zfMJi7GchnQuyziE8P0FpwkWdl+MAQu8InX7u2zvsJ4t4XrUd+HuJb5KHcheFDGVAH0= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Nov 2016 02:37:26.7697 (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: BN1PR0301MB0738 Cc: u-boot@lists.denx.de Subject: [U-Boot] [PATCH] sata: fix sata command can not being executed bug 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" From: Tang Yuantian Commit d97dc8a0 separated the non-command code into its own file which caused variable sata_curr_device can not be set to a correct value. Before commit d97dc8a0, variable sata_curr_device can be set correctly in sata_initialize(). After commit d97dc8a0, sata_initialize() is moved out to its own file. Accordingly, variable sata_curr_device is removed from sata_initialize() too. This caused sata_curr_device never gets a chance to be set properly which prevent other commands from being executed. This patch sets variable sata_curr_device properly. Fixes: d97dc8a0 (dm: sata: Separate the non-command code into its own file) Signed-off-by: Tang Yuantian Reviewed-by: Simon Glass --- v3: - refine the commit message v2: - refined this patch and updated the commit title and message cmd/sata.c | 9 ++++++--- common/sata.c | 8 +++++--- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/cmd/sata.c b/cmd/sata.c index d18b523..f56622a 100644 --- a/cmd/sata.c +++ b/cmd/sata.c @@ -32,9 +32,12 @@ static int do_sata(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) } /* If the user has not yet run `sata init`, do it now */ - if (sata_curr_device == -1) - if (sata_initialize()) - return 1; + if (sata_curr_device == -1) { + rc = sata_initialize(); + if (rc == -1) + return rc; + sata_curr_device = rc; + } switch (argc) { case 0: diff --git a/common/sata.c b/common/sata.c index 88f08c9..42ff5c7 100644 --- a/common/sata.c +++ b/common/sata.c @@ -51,7 +51,7 @@ static unsigned long sata_bwrite(struct blk_desc *block_dev, lbaint_t start, int __sata_initialize(void) { - int rc; + int rc, ret = -1; int i; for (i = 0; i < CONFIG_SYS_SATA_MAX_DEVICE; i++) { @@ -71,12 +71,14 @@ int __sata_initialize(void) if (!rc) { rc = scan_sata(i); if (!rc && sata_dev_desc[i].lba > 0 && - sata_dev_desc[i].blksz > 0) + sata_dev_desc[i].blksz > 0) { part_init(&sata_dev_desc[i]); + ret = i; + } } } - return rc; + return ret; } int sata_initialize(void) __attribute__((weak, alias("__sata_initialize")));