From: Sky Huang <SkyLake.Huang@mediatek.com>
To: Matthias Brugger <matthias.bgg@gmail.com>,
Miquel Raynal <miquel.raynal@bootlin.com>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@collabora.com>,
Richard Weinberger <richard@nod.at>,
Vignesh Raghavendra <vigneshr@ti.com>,
Daniel Golle <daniel@makrotopia.org>,
Chia-Lin Kao <acelan.kao@canonical.com>,
Mika Westerberg <mika.westerberg@linux.intel.com>,
Cheng Ming Lin <chengminglin@mxic.com.tw>,
<linux-kernel@vger.kernel.org>, <linux-mtd@lists.infradead.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-mediatek@lists.infradead.org>
Cc: Steven Liu <Steven.Liu@mediatek.com>,
Sky Huang <skylake.huang@mediatek.com>
Subject: [RFC PATCH nand/next 0/4] mtd: nand: spi: Add CASN page support
Date: Sun, 20 Oct 2024 21:27:18 +0800 [thread overview]
Message-ID: <20241020132722.20565-1-SkyLake.Huang@mediatek.com> (raw)
From: "Sky Huang" <skylake.huang@mediatek.com>
Hi, this is Qi-Ze Huang(Sky Huang) from MediaTek. On our router platforms
chips, we have to quality lots of SPI-NAND devices and are eager for
a standard so that we don't need to maintain trivial flash ID table
anymore. I also noticed a talk in 2019 Embedded Linux Conference,
Memory Technology Devices: what's new, which mentioned "ONFI for
SPI-NANDs? Maybe, maybe not".
So earlier this year, I proposed a bold idea, CASN page (Common Attributes
for SPI-NAND). I worked together with top 3 SPI-NAND market share flash
vendors and other vendors to integrate CASN page on their SPI-NAND devices
including but not limited to:
[ESMT]
F50L1G41LB
F50L2G41KA
[Etron]
EM73C044VCF-H
EM73D044VCO-H
EM73E044VCE-H
EM73F044VCA-H
[GigaDevice]
GD5F1GM7UE
GD5F1GQ5UEYIG
GD5F2GM7UE
GD5F2GQ5UEYIG
GD5F4GM8UE
GD5F4GQ6UEYIG
[Macronix (MXIC)]
MX35LF1GE4ABZ4IG
[Winbond]
W25N01GV
W25N01KV
W25N02KV
W25N04KV
A document of CASN is hosted on github(https://github.com/mtk-openwrt/
doc/blob/main/CASN%20Page%20Introduction.pdf) So I'll try to keep it
simple here.
With CASN page, we don't need to maintain SPI-NAND flash ID table anymore.
Currently, it's integrated in 3.3V SPI-NANDs of small density and it's not
JEDEC standard yet. But it should be able to handle 1.8V and can be easily
integrated by flash vendors.
I believe this idea and implementation have room for improvement. Hope to
hear you open source community's comments soon.
Signed-off-by: Sky Huang <skylake.huang@mediatek.com>
---
Sky Huang (4):
mtd: nand: Create param.c to do CRC check and bitwise majority for
Parameter & CASN page
include: mtd: Add CASN page definition and related structs.
include: mtd: spinand: Add CASN page related macros and flags.
mtd: nand: spi: Add CASN page support
drivers/mtd/nand/Makefile | 2 +-
drivers/mtd/nand/param.c | 52 +++
drivers/mtd/nand/raw/nand_onfi.c | 43 +-
drivers/mtd/nand/spi/core.c | 741 ++++++++++++++++++++++++++++++-
include/linux/mtd/casn.h | 191 ++++++++
include/linux/mtd/param.h | 20 +
include/linux/mtd/spinand.h | 100 ++++-
7 files changed, 1094 insertions(+), 55 deletions(-)
create mode 100644 drivers/mtd/nand/param.c
create mode 100644 include/linux/mtd/casn.h
create mode 100644 include/linux/mtd/param.h
--
2.45.2
next reply other threads:[~2024-10-20 13:27 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-20 13:27 Sky Huang [this message]
2024-10-20 13:27 ` [RFC PATCH nand/next 1/4] mtd: nand: Create param.c to do CRC check and bitwise majority for Parameter & CASN page Sky Huang
2024-11-18 10:55 ` Miquel Raynal
2024-10-20 13:27 ` [RFC PATCH nand/next 2/4] include: mtd: Add CASN page definition and related structs Sky Huang
2024-11-18 10:58 ` Miquel Raynal
2024-10-20 13:27 ` [RFC PATCH nand/next 3/4] include: mtd: spinand: Add CASN page related macros and flags Sky Huang
2024-11-18 13:06 ` Miquel Raynal
2024-10-20 13:27 ` [RFC PATCH nand/next 4/4] mtd: nand: spi: Add CASN page support Sky Huang
2024-10-28 15:25 ` [RFC PATCH nand/next 0/4] " SkyLake Huang (黃啟澤)
2024-11-06 15:20 ` Miquel Raynal
2024-11-18 10:53 ` Miquel Raynal
2024-11-20 7:24 ` SkyLake Huang (黃啟澤)
2024-11-20 10:13 ` Miquel Raynal
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241020132722.20565-1-SkyLake.Huang@mediatek.com \
--to=skylake.huang@mediatek.com \
--cc=Steven.Liu@mediatek.com \
--cc=acelan.kao@canonical.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=chengminglin@mxic.com.tw \
--cc=daniel@makrotopia.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-mtd@lists.infradead.org \
--cc=matthias.bgg@gmail.com \
--cc=mika.westerberg@linux.intel.com \
--cc=miquel.raynal@bootlin.com \
--cc=richard@nod.at \
--cc=vigneshr@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®