[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240223034758.13753-1-william.zhang@broadcom.com>
Date: Thu, 22 Feb 2024 19:47:45 -0800
From: William Zhang <william.zhang@...adcom.com>
To: Linux MTD List <linux-mtd@...ts.infradead.org>,
Linux ARM List <linux-arm-kernel@...ts.infradead.org>,
Broadcom Kernel List <bcm-kernel-feedback-list@...adcom.com>
Cc: f.fainelli@...il.com,
kursad.oney@...adcom.com,
joel.peshkin@...adcom.com,
anand.gore@...adcom.com,
dregan@...l.com,
kamal.dasu@...adcom.com,
tomer.yacoby@...adcom.com,
dan.beygelman@...adcom.com,
William Zhang <william.zhang@...adcom.com>,
Andre Przywara <andre.przywara@....com>,
Rob Herring <robh+dt@...nel.org>,
Kamal Dasu <kdasu.kdev@...il.com>,
Conor Dooley <conor+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Miquel Raynal <miquel.raynal@...tlin.com>,
Rafał Miłecki <rafal@...ecki.pl>,
David Regan <dregan@...adcom.com>,
devicetree@...r.kernel.org,
Alexandre TORGUE <alexandre.torgue@...com>,
Vignesh Raghavendra <vigneshr@...com>,
Brian Norris <computersforpeace@...il.com>,
Florian Fainelli <florian.fainelli@...adcom.com>,
Shawn Guo <shawnguo@...nel.org>,
linux-kernel@...r.kernel.org,
Richard Weinberger <richard@....at>
Subject: [PATCH v6 00/13] mtd: rawnand: brcmnand: driver and doc updates
This patch series is an update from the previous version [1] after
exex_op support and fixes (patch 1 to 4 from the previous version.)
It updates all the BCMBCA SoC to support the nand controller and add
functions to handle BCMBCA specific needs on ECC and Write Protection
usage. The device tree document is also updated accordingly with the new
properties needed by the driver.
In addition there is a bug fix for exec_op helper functions, log level
adjustment on uncorrectable ECC error and some coding style fixes.
[1] https://lore.kernel.org/lkml/20230606231252.94838-1-william.zhang@broadcom.com/
Changes in v6:
- Moved style fixes to a separate patch
- Fix style issue
- Add reviewed-by tags
- Add other nand ecc properties to the exclude check list
- Update the brcm,nand-ecc-use-strap property description
- Combine the ecc step size and ecc strength into one get function
- Treat it as error condition if both brcm,nand-ecc-use-strap and nand
ecc dts properties are set
- Add intermediate steps to get the sector size bitfield
Changes in v5:
- Update the commit message
- Add reviewed-by tag
- Update the description of this new property
- Update the description for this ecc strap property
- Add check to make sure brcm,nand-ecc-use-strap and
nand-ecc-strength/brcm,nand-oob-sector-size can not be used at the
same time
Changes in v4:
- Fix the commit id in the fixes tag
- Revert the log level change for correctable ecc error
- Split the yaml changes into three patches. This is the first one
- Move the WP pin property to this separate patch and change it to
boolean type.
- Move ecc strap property to this separate patch and remove some
non-binding related text from the description
- Move the board related dts setting from SoC dtsi to board dts
- Move the board related dts setting from SoC dtsi to board dts
- Update the comments for ecc setting selection
- Use the new brcm,wp-not-connected property based on the dts binding
change
Changes in v3:
- Update brcm,nand-use-wp description
- Revert the description change to BCM63168 SoC-specific NAND controller
- Updated bcmbca_read_data_bus comment
Changes in v2:
- Added to patch series
- Added to patch series
- Revert the new compatible string nand-bcmbca
- Drop the BCM63168 compatible fix to avoid any potential ABI
incompatibility issue
- Simplify the explanation for brcm,nand-use-wp
- Keep the interrupt name requirement when interrupt number is specified
- Add nand controller node label for 4908 so it is consistent with other
SoCs and can be referenced by board dts file
- Drop the is_param argument to the read data bus function now that we
have the exec_op API to read the parameter page and ONFI data
- Remove be32_to_cpu from brcmnand_read_data_bus
- Minor cosmetic fixes
David Regan (2):
mtd: rawnand: brcmnand: exec_op helper functions return type fixes
mtd: rawnand: brcmnand: update log level messages
William Zhang (11):
mtd: rawnand: brcmnand: fix style issues
dt-bindings: mtd: brcmnand: Updates for bcmbca SoCs
dt-bindings: mtd: brcmnand: Add WP pin connection property
dt-bindings: mtd: brcmnand: Add ecc strap property
ARM: dts: broadcom: bcmbca: Add NAND controller node
arm64: dts: broadcom: bcmbca: Add NAND controller node
arm64: dts: broadcom: bcmbca: Update router boards
mtd: rawnand: brcmnand: Rename bcm63138 nand driver
mtd: rawnand: brcmnand: Add BCMBCA read data bus interface
mtd: rawnand: brcmnand: Add support for getting ecc setting from strap
mtd: rawnand: brcmnand: Support write protection setting from dts
.../bindings/mtd/brcm,brcmnand.yaml | 44 +++++-
arch/arm/boot/dts/broadcom/bcm47622.dtsi | 14 ++
arch/arm/boot/dts/broadcom/bcm63138.dtsi | 7 +-
arch/arm/boot/dts/broadcom/bcm63148.dtsi | 14 ++
arch/arm/boot/dts/broadcom/bcm63178.dtsi | 14 ++
arch/arm/boot/dts/broadcom/bcm6756.dtsi | 14 ++
arch/arm/boot/dts/broadcom/bcm6846.dtsi | 14 ++
arch/arm/boot/dts/broadcom/bcm6855.dtsi | 14 ++
arch/arm/boot/dts/broadcom/bcm6878.dtsi | 14 ++
arch/arm/boot/dts/broadcom/bcm947622.dts | 10 ++
arch/arm/boot/dts/broadcom/bcm963138.dts | 10 ++
arch/arm/boot/dts/broadcom/bcm963138dvt.dts | 14 +-
arch/arm/boot/dts/broadcom/bcm963148.dts | 10 ++
arch/arm/boot/dts/broadcom/bcm963178.dts | 10 ++
arch/arm/boot/dts/broadcom/bcm96756.dts | 10 ++
arch/arm/boot/dts/broadcom/bcm96846.dts | 10 ++
arch/arm/boot/dts/broadcom/bcm96855.dts | 10 ++
arch/arm/boot/dts/broadcom/bcm96878.dts | 10 ++
.../bcmbca/bcm4906-netgear-r8000p.dts | 5 +
.../bcmbca/bcm4906-tplink-archer-c2300-v1.dts | 5 +
.../bcmbca/bcm4908-asus-gt-ac5300.dts | 6 +-
.../boot/dts/broadcom/bcmbca/bcm4908.dtsi | 4 +-
.../boot/dts/broadcom/bcmbca/bcm4912.dtsi | 14 ++
.../boot/dts/broadcom/bcmbca/bcm63146.dtsi | 14 ++
.../boot/dts/broadcom/bcmbca/bcm63158.dtsi | 14 ++
.../boot/dts/broadcom/bcmbca/bcm6813.dtsi | 14 ++
.../boot/dts/broadcom/bcmbca/bcm6856.dtsi | 14 ++
.../boot/dts/broadcom/bcmbca/bcm6858.dtsi | 14 ++
.../boot/dts/broadcom/bcmbca/bcm94908.dts | 10 ++
.../boot/dts/broadcom/bcmbca/bcm94912.dts | 10 ++
.../boot/dts/broadcom/bcmbca/bcm963146.dts | 10 ++
.../boot/dts/broadcom/bcmbca/bcm963158.dts | 10 ++
.../boot/dts/broadcom/bcmbca/bcm96813.dts | 10 ++
.../boot/dts/broadcom/bcmbca/bcm96856.dts | 10 ++
.../boot/dts/broadcom/bcmbca/bcm96858.dts | 10 ++
drivers/mtd/nand/raw/brcmnand/Makefile | 2 +-
drivers/mtd/nand/raw/brcmnand/bcm63138_nand.c | 99 ------------
drivers/mtd/nand/raw/brcmnand/bcmbca_nand.c | 126 +++++++++++++++
drivers/mtd/nand/raw/brcmnand/brcmnand.c | 148 ++++++++++++++----
drivers/mtd/nand/raw/brcmnand/brcmnand.h | 2 +
40 files changed, 650 insertions(+), 144 deletions(-)
delete mode 100644 drivers/mtd/nand/raw/brcmnand/bcm63138_nand.c
create mode 100644 drivers/mtd/nand/raw/brcmnand/bcmbca_nand.c
--
2.37.3
Powered by blists - more mailing lists