From patchwork Thu Jan 11 13:23:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fabio Estevam X-Patchwork-Id: 859113 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.infradead.org (client-ip=65.50.211.133; helo=bombadil.infradead.org; envelope-from=linux-mtd-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="DdrPfUyu"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zHRR11g6Yz9sNc for ; Fri, 12 Jan 2018 00:23:41 +1100 (AEDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=OWOUxGEauOE/wWNv1fpin5q67Kq8SLj8kXe5ZJN4i94=; b=DdrPfUyuV3FToh TK1yxY8BPyNe3QhSG93Ef3QTPSP3BRfuZbdxgtm8hKFtg6zztvRK+az9e4o3/gl4Qyjt1XoYFWH6M wZ4NQzUc2/z9GwS1l29tI/bdXEjdUgcN6gHXp9IVUEtM/RkorWcagpCAtzdBq8e6YfFcE/Kt14wSP 0YMEcVv9oSauqGXICCl8lLOqj7jUHsSg6qPMOfi2eF1IVw+p3Mj2D34M0guOWA/TwD0pPjPCK1bl9 17O0ii/+Ti8NkGugZXDk2DiAwueUHS3GSFE2oxhWVjgax/NfboW6o3/YIigV/TkrVgMOpzRGGGSup qtKeHd2jBF5OxOOD7itw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.89 #1 (Red Hat Linux)) id 1eZcpV-00085u-RS; Thu, 11 Jan 2018 13:23:37 +0000 Received: from mail-sn1nam02on0051.outbound.protection.outlook.com ([104.47.36.51] helo=NAM02-SN1-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.89 #1 (Red Hat Linux)) id 1eZcpT-00083d-AJ for linux-mtd@lists.infradead.org; Thu, 11 Jan 2018 13:23:36 +0000 Received: from DM5PR03CA0027.namprd03.prod.outlook.com (10.174.189.144) by CO2PR03MB2359.namprd03.prod.outlook.com (10.166.93.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.386.5; Thu, 11 Jan 2018 13:23:23 +0000 Received: from BN1AFFO11FD048.protection.gbl (2a01:111:f400:7c10::107) by DM5PR03CA0027.outlook.office365.com (2603:10b6:4:3b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.407.7 via Frontend Transport; Thu, 11 Jan 2018 13:23:23 +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 BN1AFFO11FD048.mail.protection.outlook.com (10.58.53.63) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.345.12 via Frontend Transport; Thu, 11 Jan 2018 13:22:47 +0000 Received: from fabio-Latitude-E5450.am.freescale.net (fabio-Latitude-E5450.am.freescale.net [10.29.244.155]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id w0BDNGJu015932; Thu, 11 Jan 2018 06:23:17 -0700 From: Fabio Estevam To: Subject: [PATCH v3] mtd: fsl-quadspi: Distinguish the mtd device names Date: Thu, 11 Jan 2018 11:23:13 -0200 Message-ID: <1515676993-15561-1-git-send-email-fabio.estevam@nxp.com> X-Mailer: git-send-email 2.7.4 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131601505706335704; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(346002)(376002)(39860400002)(39380400002)(396003)(2980300002)(1110001)(1109001)(339900001)(199004)(189003)(54906003)(4326008)(2351001)(97736004)(8656006)(47776003)(68736007)(50466002)(53936002)(105606002)(2906002)(6916009)(104016004)(498600001)(6666003)(51416003)(36756003)(48376002)(106466001)(8936002)(305945005)(5660300001)(356003)(8676002)(59450400001)(50226002)(81166006)(81156014)(316002)(85426001)(16586007)(86362001)(77096006); DIR:OUT; SFP:1101; SCL:1; SRVR:CO2PR03MB2359; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD048; 1:W5UZp1ZO+chdTIhAcZ/JHjdsVYp8NyuxRpHKQ2ugrXdw+pkQYZDfEzvmtwIN4TCutdK3BKvRC1KRi4MH8fr5zWyoo0IWMRJLj/+46iFgfprssME8RwmtBJ9SNw9sCUt9 MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 785ae953-f922-488a-5dd8-08d558f669ff X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(4534020)(4628075)(201703131517081)(5600026)(4604075)(2017052603307); SRVR:CO2PR03MB2359; X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2359; 3:vbKaZdTa/+FJKQiRPpbSG5bKn2sJnk1dPqntSzRxTyQyjTEjSSDNxrjc7aRrqyPI0+n5VyE/0jIBRUyRi0J2wc6U7D9bKVeCYGpEJO99oVVXD2l++vKeNZ/z8JyEzUSdmLKHWjufF/xDx4L0fyUNIzNZRIU1twdoZnLiMQDKAIvy99kQm+4YbJnE9m/Of+8U53m0ao/j+XthyGvswL7lmbm3p4qrd9XRCCYxe8H3e2F7PMHUiiVA/gwKv/4nxyctHe2N06znG1Nx79JioY67h6vNPLAxzLuDb90vqPx3gXBtgUZhIfEXuh8f8Ptge5QvWjoUFhDJXq6e2wBLgG4wJc7HBEbauUl2dNPFdJ56Xcs=; 25:m4UyiWc2ZJBYLTDpbMnl/Lq/z8SLt0draJ3sdLHCShFIhlPvJ2Tvbv4s170VYgfCJXeRzdd9L7CG+gVVb+kkmpjLgz1Q9FlLaQixA7IF/MFvAmVjeWLtF7ccjjNoQvpHLQD93aB4avRXCdOAMS7qk1jJgI2jFNHmxZzxMctTUQLw2wvrpIlNT396732psjth7jBzD7kc+SWqTjOGT6ROEX1g5BBnIhUl6BojIoXfiJzNzvCmPql9VJwQcLUftTLC9GinOFpEpyLMHz+1fy5Ei/RnWL38eKVtXczACHzPgAqYzx+FjJFbhlkOEBGbAvvTJOBYp1BMVU9q5Y0zbCGq4g== X-MS-TrafficTypeDiagnostic: CO2PR03MB2359: X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2359; 31:2VsQp65f06xSrjnfDZPlJ8xkHzIBtnBiKsj1TsDZRKWMjhPb3anGjLVHWonPbc6lIhv8eTU1sAVOybnQacO8nMgtp0EABmwAZRl7MCN/mrT2OY7j3Z1KIkc0UIypi1Inn5qsskvy1QEgeSb5cervOGb80bjEXSFZ82poIZzQJcXtWsP81BrpUV+l2bL+Rhug3p75w0I2MHOb7p5LsooQSiQji1GZGt5G0qKrhPWUtsI=; 4:zvuNq0kgbO87qX8C/wts9y8SzFYaIdXpXpk4qgLJoo3Nbfa/AZrPuAzyBZxqYat2Nzlpn9Dk3n5cJc7xtJodtCxd5cMwzthhlg0jzNjau8YN+A6bFsQe0e9zSorZZmSEAl+x2g2Ij0OFq2s+ixfhh7pPHORzgGSvi1GouDujKDuys6vrR5ajYVkeELw6tot61mPp8QISOj1FOnHZtAVkAn2WlZ4gt5SC72iSHGmNTmdTBUMSX4HIx4utf/pL+d8cZRdaQFduGCatdMqERzvXHjEAhwFYncrxoDA5QiertD4Zj/qvDOxawJ2EVSnhPNVU X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(2401047)(8121501046)(5005006)(3231023)(944510075)(944921075)(946801075)(946901075)(3002001)(93006095)(93001095)(10201501046)(6055026)(6096035)(201703131430075)(201703131448075)(201703131433075)(201703161259150)(201703151042153)(20161123561025)(20161123556025)(20161123563025)(20161123559100)(20161123565025)(201708071742011); SRVR:CO2PR03MB2359; BCL:0; PCL:0; RULEID:(100000803101)(100110400095)(400006); SRVR:CO2PR03MB2359; X-Forefront-PRVS: 0549E6FD50 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CO2PR03MB2359; 23:bg04mKYlzs9VgjgsiJ7HHIc5KzhGR/5Znjb3mCiBp?= HOR5Cct18iKcbG8TVwvoNOfjvYyK4jlGvZHWOfDqBXM7cSTXcuDIImauWwnGy84zDTqzR29K5XM3gBOLxKGpWo+LAHaN3RLBOFWKkHZxjJEI5GmMLk8wSoGiIwWRVMcrHw6dwDpvuIt6f6Cf4ATELtInwOkWq7LpPzWhpNvSbozGO1GJ7iNBrylZUXt2PUt5/xv2Dzfy5zlJWArGbPpCJoJWQi59PidVvgUmt605ob8h3/FRpeCosPdGNeoXrDKOb59HHkg4M6304QxOewrz13mxpl7Q2j/5hVHW4iYVSpgdPNDfVE8tEHRDuLuWxJYvRBuPTjGM6LZ+PItMj9rsoms4RQLwx7/njtO2cnP0DGZARBEZCU9MS5Cjn66BaF2Y+ODFcR7DmG2yeZe9A9K17NzQ8wwhY4yPpLd4Qi+rBeoCu/l1DGl89Ukvy/SmfSpWhPiKHiHMI5qMPrI/0vSn0tsjN5qCKcu9DtIZXNDfA8CKAMzax7b9Q5hVrE43N0AWvt93/BhIpB9ORKiJuPQz3C/ODYxQOpOjdTNepxrLYS4dC6+Jl/e3cUayuaXuH6sDckAOhye/TVNQXgW0KAzyFY/npkPwk453n5qBhGMo60ciIpxXf34HjXG+yJ5V4ZV7cviOPI/st93gV1pDv3yH8clXAzpGUgnAFzbfDM/So3hsvOFa3fWHhGjPXibmhdgvJEt2c0e/9pGG5svmDXX7aLLHkCB4aYpVa6iKVE3fcXvYgOKBt7PFtQfCB+EgSKxrSwbPiDF0wrj7Q74x6D9VvGOBa8JYDl86d5ByC1R1yNpmZxNd1Kx6ZcVo6aryqf263ackCxeqQzlvbqYPz0bop0XEaFBpltuLbNimQeAJOgf6DXrxfSQR3/2Z2oNhWLFzjuxfaAjusD00YTnBMw2LIbu1He39O4G8xmYOLbYbHmiwY3EyOgPyVTJH6jxez/wZssfjn1fzjFjfNlkmKF5DSKRnOmtR8BWSD69J/gZrhHd0FkRyXw+C0/1r+CLW6OH68w= X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2359; 6:NKI+1DMsXgxdkTADCtYFFcB3SRdnUp5PXLGGoEiRZFkzAz1NN7cP32htt2RINxhOe9Q8mIUP20TEwKN3zll2x2lJyfbxyUZd+UCwGV4qp2N3GYwuiOZ8N0uf3aPTF83RvMijl2Bj2djG0dpA/j5Q2mAr6X0LYQt7n9ldB6LGHhYfm2J1Xzl4UjV0obNMpSZcTL7++oZELwZqAiuXaXMLyf0oaelKd/wHImKqZdfkbUkQxa91xhnK8UkRc9/OjGzvj7TP4oAG2pq9M7C0PpVRaLj6IWYMZIewmPtB2mNgux/I9pt5g42SFneVBCyCpA/hyZF7g11yZSWz+MyV+/BzZl51m7u2t62fUggKCWGdNMY=; 5:WnDzMGwe7WjSXXpGYzuSui/X9AVZEf3xgsWyfdkiGvNztORUVgWSpi5AmbKn4o0HDH+Osg9Q25OERg3A0s2jlGN2Fef58KfQbqi//nUR52tJwAbruFfPREt/XU3WlS77dOxOKXKleFm1Dj2l7d66y1FpvACZToA2UpPT6Ckw27c=; 24:33vgTi+tO+wPTSqPASroNJqCOGKCWxiMoM4R/diRcSwQVfb8zKTM9vmgpBdVg6yNLvy1GvKOGhzWSt32jckHDe+ZkGs8XpDp+ATAXxNQsUg=; 7:h5JL5TOMXI/c90CxdFYf9mboJ9sH9B4zGq8RHnCf8RoP/wleNhRwipLVudASZDDBogubp0q+Wt6Vd7dCQcPKXBxMdBXHpPYubgtxmlckZ3y54GxrXcVLXRaEU8LkTnB2pH0vvwGOY4jPRjjZync+ttb87BqFGlAoaJz6pH8DrHpeJoIQT/H2U/yVDm4+6rVxm6dCMLe/jdNYXYPyq/2zBrw76mbYXlWbHCVW6RTqF4AYfMlkF9XefK4IfKbIsL0x SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Jan 2018 13:22:47.9972 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 785ae953-f922-488a-5dd8-08d558f669ff 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: CO2PR03MB2359 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20180111_052335_395778_7A88C64B X-CRM114-Status: GOOD ( 15.97 ) X-Spam-Score: -1.9 (-) X-Spam-Report: SpamAssassin version 3.4.1 on bombadil.infradead.org summary: Content analysis details: (-1.9 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [104.47.36.51 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [104.47.36.51 listed in wl.mailspike.net] -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: boris.brezillon@free-electrons.com, frank.li@nxp.com, linux-mtd@lists.infradead.org, david.wolfe@nxp.com, Fabio Estevam , han.xu@nxp.com Sender: "linux-mtd" Errors-To: linux-mtd-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org Currently on a imx6sx-sdb board, which has two SPI NOR chips connected to QSPI2 the following output from /proc/mtd is seen: # cat /proc/mtd dev: size erasesize name mtd0: 01000000 00010000 "21e4000.qspi" mtd1: 01000000 00010000 "21e4000.qspi" Attempts to partition them on the kernel command line result in both chips with identical (and identically named) partitions, which is an inconvenient behavior. Assign a different mtd->name for each mtd device to avoid this problem. After this change the output from /proc/mtd becomes: # cat /proc/mtd dev: size erasesize name mtd0: 01000000 00010000 "21e4000.qspi-0" mtd1: 01000000 00010000 "21e4000.qspi-1" Reported-by: David Wolfe Signed-off-by: Fabio Estevam --- Changes since v2: - Remove unnecessary EINVAL assignment when of_property_read_u32() fails Changes since v1: - Use 'spiflash_idx' for the variable name - Use the mtd->name in the format 21e4000.qspi-0 - Do not assing the mtd name relying on the dts ordering and use the reg property instead - Call devm_kasprintf() after spi_nor_set_flash_node(). drivers/mtd/spi-nor/fsl-quadspi.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/drivers/mtd/spi-nor/fsl-quadspi.c b/drivers/mtd/spi-nor/fsl-quadspi.c index 2901c7b..c2572be 100644 --- a/drivers/mtd/spi-nor/fsl-quadspi.c +++ b/drivers/mtd/spi-nor/fsl-quadspi.c @@ -967,7 +967,7 @@ static int fsl_qspi_probe(struct platform_device *pdev) struct resource *res; struct spi_nor *nor; struct mtd_info *mtd; - int ret, i = 0; + int ret, i = 0, spiflash_idx; q = devm_kzalloc(dev, sizeof(*q), GFP_KERNEL); if (!q) @@ -1051,6 +1051,21 @@ static int fsl_qspi_probe(struct platform_device *pdev) spi_nor_set_flash_node(nor, np); nor->priv = q; + ret = of_property_read_u32(np, "reg", &spiflash_idx); + if (ret) { + dev_err(dev, "could not get reg property: %d\n", ret); + goto mutex_failed; + } + + if (!mtd->name) { + mtd->name = devm_kasprintf(dev, GFP_KERNEL, "%s-%d", + dev_name(dev), spiflash_idx); + if (!mtd->name) { + ret = -ENOMEM; + goto mutex_failed; + } + } + /* fill the hooks */ nor->read_reg = fsl_qspi_read_reg; nor->write_reg = fsl_qspi_write_reg;