From patchwork Thu Mar 28 14:19:05 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jonas Gorski X-Patchwork-Id: 1068245 Return-Path: X-Original-To: incoming-dt@patchwork.ozlabs.org Delivered-To: patchwork-incoming-dt@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=devicetree-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="ZcL9IbHx"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 44VRnb0HKlz9sRR for ; Fri, 29 Mar 2019 01:19:15 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726098AbfC1OTN (ORCPT ); Thu, 28 Mar 2019 10:19:13 -0400 Received: from mail-wm1-f67.google.com ([209.85.128.67]:51917 "EHLO mail-wm1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726059AbfC1OTN (ORCPT ); Thu, 28 Mar 2019 10:19:13 -0400 Received: by mail-wm1-f67.google.com with SMTP id 4so3782522wmf.1 for ; Thu, 28 Mar 2019 07:19:12 -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; bh=kxi9Xw0rPP9E+6rF5Q2Up/hUyZzAdi6u3y6OfYt/pFE=; b=ZcL9IbHxWTKpH4iBWcXifyLWGngLEXBIJBpMHQpfTrbV+ux22Fh/FSQK03PTXhtgNR Wh36u7zA79B+CFma8aWq3OgHcRVDRV3waDne/n47SXujRhPKJLzvXKgDMsuYw9zhamn3 1g84ptwmxd9cRibhSQF+sulUXi1ofmMdPkt6ys3S4J7z0AnaTt8ysk36OXpFQtD9i7hk xMRiMmHRmQVIKQrGuo1WvMlEvpnKomt2EyDgu5QtqueMMlJMG+yh7+JmtU6H544nS1g3 SN8pAtemmgh6fvt+ZXadeDrA41uRVyM9TTWevxFjfA67IvUt6GfhzTO4L0+SNYb7YYoM o+rQ== 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; bh=kxi9Xw0rPP9E+6rF5Q2Up/hUyZzAdi6u3y6OfYt/pFE=; b=Ty5TjyzqvixjvrnqQu35kQdq0NgX9DPXGbUVQrTe07loO1A/X7/LrLF5kk0DgU+Ww0 stYZUMvGQZOaU81tiTxrbw85hnWpfLrXrgHXZJX+CTw60egXaNsQbsJMjojhWJHTFVNk DFcP34f6eK6/Bv9armNnC2SYOZDVBR4/AN6REbzqQAKLzLkC3Ua1ZFYZtn0USwHXkQf/ RtCPRibZeyXacz53pCFY9JTz16QqsitADZtfrYsKfn3JKIA/Ce4oOK/6MhUT0w/MDhTi gPwOhY/st9xR1HjxATji82aBlr9RuGZ/JYflCyBe/9NgTsfRT/UP7qfMYDlJDlxMzqp9 5rGA== X-Gm-Message-State: APjAAAVJtWG9YMf30XN8L/7RtSsCsZhh8RjFMdFHrsnX+lP3Yf4Xstoe LsiyISLaLer7Fz1UppJgWQZQTg40 X-Google-Smtp-Source: APXvYqzIvoq0AsB1NwJuqv3ddxHk7iF+FoX+SAYHKTUrvjxkdNfgaDvkeLoAC0sxx/+AwqqHm2n6KA== X-Received: by 2002:a7b:c382:: with SMTP id s2mr176966wmj.56.1553782751578; Thu, 28 Mar 2019 07:19:11 -0700 (PDT) Received: from localhost.localdomain ([2001:470:9e39::64]) by smtp.gmail.com with ESMTPSA id t2sm51802879wra.9.2019.03.28.07.19.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 28 Mar 2019 07:19:10 -0700 (PDT) From: Jonas Gorski To: devicetree@vger.kernel.org, linux-mtd@lists.infradead.org Cc: David Woodhouse , Brian Norris , Boris Brezillon , Marek Vasut , Richard Weinberger , Rob Herring , Mark Rutland , Florian Fainelli , bcm-kernel-feedback-list@broadcom.com Subject: [PATCH V2 0/5] mtd: bcm63xxpart: add device tree support Date: Thu, 28 Mar 2019 15:19:05 +0100 Message-Id: <20190328141910.5723-1-jonas.gorski@gmail.com> X-Mailer: git-send-email 2.13.2 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org This patchset adds appropriate bindings for parsing various bcm963xx NOR flash layouts found in the wild. The image header is quite limited, and only has fixed fields for the offsets and sizes of the kernel and rootfs partitions. If any additional partitions exist, they need to be described externally, e.g. through fixed partition layouts. The first two patches add the bindings for the full flash parser for the "common" case: first erase block bootloader, last erase block nvram, reminder available for firmware. The third patch splits out the image header parsing into its own parser. Then patches four and five add bindings for the split out parser, to support non-trivial cases with additional partitions, or a non-standard offset of the firmware partition. These patches have been in used since a while in OpenWrt. Changes V1 -> V2: * dropped the second example from brcm,bcm963xx-imagetag.txt * added reviewed bys from Rob Herring Jonas Gorski (5): dt-bindings: mtd: describe the simple BCM963XX NOR flash layout mtd: bcm63xxpart: add of_match_table support mtd: bcm63xxpart: move imagetag parsing to its own parser dt-bindings: mtd: describe BCM963XX ImageTag format and usage mtd: parser_imagetag: add of_match_table support .../brcm,bcm963xx-cfe-nor-partitions.txt | 24 +++ .../mtd/partitions/brcm,bcm963xx-imagetag.txt | 45 +++++ drivers/mtd/Kconfig | 1 + drivers/mtd/bcm63xxpart.c | 163 ++------------- drivers/mtd/parsers/Kconfig | 11 + drivers/mtd/parsers/Makefile | 1 + drivers/mtd/parsers/parser_imagetag.c | 222 +++++++++++++++++++++ 7 files changed, 320 insertions(+), 147 deletions(-) create mode 100644 Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-cfe-nor-partitions.txt create mode 100644 Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt create mode 100644 drivers/mtd/parsers/parser_imagetag.c Reviewed-by: Florian Fainelli Reviewed-by: Florian Fainelli Reviewed-by: Florian Fainelli