Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp1685455ybz; Thu, 16 Apr 2020 13:40:17 -0700 (PDT) X-Google-Smtp-Source: APiQypIRNCCJwMYrEnZK8rZmFlLtkRnLXdg6I6wro+vdNltUzzwO9m6H/aGwSB43XGftpTB9A2Ac X-Received: by 2002:a05:6402:2d5:: with SMTP id b21mr19058edx.291.1587069617187; Thu, 16 Apr 2020 13:40:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587069617; cv=none; d=google.com; s=arc-20160816; b=AVNh6MyRwedx6boatQB3PQuw5mBARMyNs4MKI+dukNk562XtZpSn45QQq7M7QR+yYX PX+qyR8Dx14nl6G53oGKjnvJP9e6vSDv4NciyEycqZaSrHzxqHjx3DBfuVlSLQ+jK09Y G/DJOzc2BorTItwhUTPSxFA8l2yXjmYHs2u6Y5Pwjo0qkHQPA3X1Ey/LfglXP6AysrfS iPt4vokqFiuKQmhYd5F/4UvCgjUyFL1l4uYRfzogkbTHTXwSp00JRzruG8+g/jbQqhwS sh53RG17yDEboVgMHrM2Y8VWAFXFp0kYvjK8qpyKwM8nXD+PbSogaxdBxG35kMHLwFEX r9Tw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:to:content-transfer-encoding:mime-version :message-id:date:subject:cc:from:dkim-signature; bh=DH5AjWb5Y/HC4rBu1O6z9vHzFuPiXlFK1AmlrEvjj1A=; b=Sv0McNyAqXSMh6wnUE2nH46SBnVOUcuTvOddfVSZoJ0ciO4FOHmpqMu7D57Q/H9Tg8 gamtz63s+JE1KgYaGUDIBImk/U4cvWr1Uh+a1rhc8LzHB6TYE5+vFImcL5pkkvBY+F8k XsOjiBvWh5mxwr2fc8glW9i/Q1VDYdfgc0pFee4O1v20dx8jZ4FX0PexWNTRVDi8jKeV Qn31NWz66bTlkOutrRznEovatT6ionVf/AkP0e/z4L99ySYkMXTd1RNptMin2BzmnNxW lH292MYiqFdd3HIyNDf95AGqstVilp17HVwbWoOhSlj6cZlngdIn4y6m2HMjdiYGv8Yz g6iA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=WBCZkMhS; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f15si2033467edc.52.2020.04.16.13.39.54; Thu, 16 Apr 2020 13:40:17 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=WBCZkMhS; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2394053AbgDPQ2v (ORCPT + 99 others); Thu, 16 Apr 2020 12:28:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55820 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726458AbgDPQ2s (ORCPT ); Thu, 16 Apr 2020 12:28:48 -0400 Received: from mail-pj1-x1043.google.com (mail-pj1-x1043.google.com [IPv6:2607:f8b0:4864:20::1043]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7E992C061A0C for ; Thu, 16 Apr 2020 09:28:48 -0700 (PDT) Received: by mail-pj1-x1043.google.com with SMTP id np9so1611940pjb.4 for ; Thu, 16 Apr 2020 09:28:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=DH5AjWb5Y/HC4rBu1O6z9vHzFuPiXlFK1AmlrEvjj1A=; b=WBCZkMhS3gdLHak/VSo4Xn0s/nbTSmpk9Jj0cxWCDrvXpC+EtwYAWxrMqTLfbp/mBk lVhRuPFZSZ4YZz9o+xTcibUa4jjgvuNb6GjWx0qXZQy2QWygyA8QlM9ls8a+5LQ3uzaj MdThyYXqnpiDcsja+9uKGNwJE/mGRRDkcCrUFhv6LQ8BZM68dwp1p2pidbzLHaR/7pBq rRdhCQE+ADVVWwV5TOGE3fBEIVE049HgxmWxVIFdF+V6vgHr2LLzNP2gRg7ZeEa7uzyU 1tXqrKcwWHDW5Te5aP9gsil2QL2f2pPEhzmRy2v/GzNDfnzOnN+vpwJVErfbojr2DCF2 dvDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=DH5AjWb5Y/HC4rBu1O6z9vHzFuPiXlFK1AmlrEvjj1A=; b=RE70sp11hzpbTW5Tab4ZT4imDrWKMJm2Y9ZwKnMw2TqY/hAH3hsEqSu39DeihOJtNa KO48RAZeOMg53WCaVpgfvv86PNVNViVzktUFDSrJ3G69ArdtZM5bBatx2Io+9v2q672n evJd4iUgSmngoqISLuJlK/tI+dBNlDyPbHSlGwicC/73dFSYkGe/a+sQMKzig2vjO77u B1uOUw4TodGXE5vcRJZxSqR9kFbhfipwfy/fkTt1LVtNY153uJ9sx1PNYj41+RpfEF9P HynSzHACaI9KWo4xao8Mpx/HHR8rMhazMs4VyXspLJ1q/J6xJCLQJHNtw4/NHK+qhAhl Uv3g== X-Gm-Message-State: AGi0Pua9LH4iYSbSSCNs8c8pULXV6dOVHHzvP+Sc8CzzEy10iPmC+kI7 +xlVl2kxW/3goI0914dOLo8= X-Received: by 2002:a17:90a:10d7:: with SMTP id b23mr6238055pje.111.1587054527623; Thu, 16 Apr 2020 09:28:47 -0700 (PDT) Received: from minnich.svl.corp.google.com ([2620:15c:2c5:3:65f9:fd8e:a0b8:2917]) by smtp.googlemail.com with ESMTPSA id k14sm17411082pfg.15.2020.04.16.09.28.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Apr 2020 09:28:46 -0700 (PDT) From: "Ronald G. Minnich" X-Google-Original-From: "Ronald G. Minnich" Cc: "Ronald G. Minnich" , Tudor Ambarus , Miquel Raynal , Richard Weinberger , Vignesh Raghavendra , Mika Westerberg , Boris Brezillon , Jethro Beekman , Enrico Weigelt , Thomas Gleixner , linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH] mtd: spi-nor: add cmdlineparts to intel-spi Date: Thu, 16 Apr 2020 09:28:28 -0700 Message-Id: <20200416162830.183725-1-rminnich@google.com> X-Mailer: git-send-email 2.26.1.301.g55bc3eb7cb9-goog MIME-Version: 1.0 Content-Transfer-Encoding: 8bit To: unlisted-recipients:; (no To-header on input) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Intel platforms, the usable SPI area is located several MiB in from the start, to leave room for descriptors and the Management Engine binary. Further, not all the remaining space can be used, as the last 16 MiB contains firmware. To make the SPI usable for mtdblock and other devices, it is necessary to enable command line partitions so the middle usable region can be specified. Add a part_probes array which includes only "cmdelineparts", and change to mtd_device_parse_register to use this part_probes. Signed-off-by: Ronald G. Minnich --- drivers/mtd/spi-nor/controllers/intel-spi.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/mtd/spi-nor/controllers/intel-spi.c b/drivers/mtd/spi-nor/controllers/intel-spi.c index 61d2a0ad2131..132129e89d07 100644 --- a/drivers/mtd/spi-nor/controllers/intel-spi.c +++ b/drivers/mtd/spi-nor/controllers/intel-spi.c @@ -894,6 +894,8 @@ static const struct spi_nor_controller_ops intel_spi_controller_ops = { .erase = intel_spi_erase, }; +static const char * const part_probes[] = { "cmdlinepart", NULL }; + struct intel_spi *intel_spi_probe(struct device *dev, struct resource *mem, const struct intel_spi_boardinfo *info) { @@ -941,7 +943,8 @@ struct intel_spi *intel_spi_probe(struct device *dev, if (!ispi->writeable || !writeable) ispi->nor.mtd.flags &= ~MTD_WRITEABLE; - ret = mtd_device_register(&ispi->nor.mtd, &part, 1); + ret = mtd_device_parse_register(&ispi->nor.mtd, part_probes, + NULL, &part, 1); if (ret) return ERR_PTR(ret); -- 2.26.1.301.g55bc3eb7cb9-goog