b10d604459
Signed-off-by: Felix Fietkau <nbd@nbd.name>
80 lines
2.7 KiB
Diff
80 lines
2.7 KiB
Diff
From patchwork Thu Feb 6 17:19:41 2020
|
|
Content-Type: text/plain; charset="utf-8"
|
|
MIME-Version: 1.0
|
|
Content-Transfer-Encoding: 7bit
|
|
X-Patchwork-Submitter: Daniel Golle <daniel@makrotopia.org>
|
|
X-Patchwork-Id: 1234465
|
|
Date: Thu, 6 Feb 2020 19:19:41 +0200
|
|
From: Daniel Golle <daniel@makrotopia.org>
|
|
To: linux-mtd@lists.infradead.org
|
|
Subject: [PATCH v2] mtd: spi-nor: Add support for xt25f128b chip
|
|
Message-ID: <20200206171941.GA2398@makrotopia.org>
|
|
MIME-Version: 1.0
|
|
Content-Disposition: inline
|
|
List-Subscribe: <http://lists.infradead.org/mailman/listinfo/linux-mtd>,
|
|
<mailto:linux-mtd-request@lists.infradead.org?subject=subscribe>
|
|
Cc: Eitan Cohen <eitan@neot-semadar.com>, Piotr Dymacz <pepe2k@gmail.com>,
|
|
Tudor Ambarus <tudor.ambarus@microchip.com>
|
|
Sender: "linux-mtd" <linux-mtd-bounces@lists.infradead.org>
|
|
Errors-To: linux-mtd-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org
|
|
|
|
Add XT25F128B made by XTX Technology (Shenzhen) Limited.
|
|
This chip supports dual and quad read and uniform 4K-byte erase.
|
|
Verified on Teltonika RUT955 which comes with XT25F128B in recent
|
|
versions of the device.
|
|
|
|
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|
Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|
---
|
|
drivers/mtd/spi-nor/spi-nor.c | 4 ++++
|
|
1 file changed, 4 insertions(+)
|
|
|
|
--- a/drivers/mtd/spi-nor/Makefile
|
|
+++ b/drivers/mtd/spi-nor/Makefile
|
|
@@ -17,6 +17,7 @@ spi-nor-objs += sst.o
|
|
spi-nor-objs += winbond.o
|
|
spi-nor-objs += xilinx.o
|
|
spi-nor-objs += xmc.o
|
|
+spi-nor-objs += xtx.o
|
|
obj-$(CONFIG_MTD_SPI_NOR) += spi-nor.o
|
|
|
|
obj-$(CONFIG_MTD_SPI_NOR) += controllers/
|
|
--- /dev/null
|
|
+++ b/drivers/mtd/spi-nor/xtx.c
|
|
@@ -0,0 +1,15 @@
|
|
+// SPDX-License-Identifier: GPL-2.0
|
|
+#include <linux/mtd/spi-nor.h>
|
|
+
|
|
+#include "core.h"
|
|
+
|
|
+static const struct flash_info xtx_parts[] = {
|
|
+ /* XTX Technology (Shenzhen) Limited */
|
|
+ { "xt25f128b", INFO(0x0B4018, 0, 64 * 1024, 256, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
|
|
+};
|
|
+
|
|
+const struct spi_nor_manufacturer spi_nor_xtx = {
|
|
+ .name = "xtx",
|
|
+ .parts = xtx_parts,
|
|
+ .nparts = ARRAY_SIZE(xtx_parts),
|
|
+};
|
|
--- a/drivers/mtd/spi-nor/core.c
|
|
+++ b/drivers/mtd/spi-nor/core.c
|
|
@@ -2024,6 +2024,7 @@ static const struct spi_nor_manufacturer
|
|
&spi_nor_winbond,
|
|
&spi_nor_xilinx,
|
|
&spi_nor_xmc,
|
|
+ &spi_nor_xtx,
|
|
};
|
|
|
|
static const struct flash_info *
|
|
--- a/drivers/mtd/spi-nor/core.h
|
|
+++ b/drivers/mtd/spi-nor/core.h
|
|
@@ -398,6 +398,7 @@ extern const struct spi_nor_manufacturer
|
|
extern const struct spi_nor_manufacturer spi_nor_winbond;
|
|
extern const struct spi_nor_manufacturer spi_nor_xilinx;
|
|
extern const struct spi_nor_manufacturer spi_nor_xmc;
|
|
+extern const struct spi_nor_manufacturer spi_nor_xtx;
|
|
|
|
int spi_nor_write_enable(struct spi_nor *nor);
|
|
int spi_nor_write_disable(struct spi_nor *nor);
|