From nobody Tue Feb 10 05:46:21 2026 Received: from relay9-d.mail.gandi.net (relay9-d.mail.gandi.net [217.70.183.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id ACCB121170A for ; Fri, 10 Jan 2025 14:49:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.70.183.199 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736520578; cv=none; b=tAN+MB/iS06miKzSKP2FZPhBB/zgBJ2z6MDrWlKYBt9e8mx+Y6Yw6tP4Q581r1MU/NmsKZk3t0p5LDHmxnz38QUi6PtSS3av8w4r7AD0tbUFgjnKShaDUiAw7/0Ejp7k6VRPPwF+4HHILsE3p6/BZ5KveHob/ouCogtOYWFL684= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736520578; c=relaxed/simple; bh=Uez1ZkSWx7X9RfaAYg9iz/XONI3Nc58lnMG5sSN6FfM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mPC0m8NNa+7OmxnzXkV1jFeaa7hgt8D0xBmCyrs4VU3+kzI4EXAPqB1r4yqdGDTV96ysikM2TY5bLj5cHJSzv9Qtw/kXcTMuGd+6z5tq5ubA5ln1N5HUpRIMPZ0VXVnnlzTZXdGMdzwZfM6ZP6dusBtN0dbrVVBkmdkEOh9rzCo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com; spf=pass smtp.mailfrom=bootlin.com; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b=XiCTR3JZ; arc=none smtp.client-ip=217.70.183.199 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bootlin.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b="XiCTR3JZ" Received: by mail.gandi.net (Postfix) with ESMTPSA id C92BDFF812; Fri, 10 Jan 2025 14:49:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1736520575; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=kmbL/x83wXuvuhygKjPTmmAlsFIHT9J0+TcXtokeiR8=; b=XiCTR3JZOJwu38OYr1t+v5s6fS7Jb74Rs1enVjcdw/3Ifp6L1h1xl5jVkCxawDXnHVlWoQ k8MRGahNNyPoVkr/6XtLFv6dsRqcPWhOwXn0CWW3rswv+HsGdYdz/JHXAb4rxzHM60AER1 daAeMfGxjZzZaez8mcxlit/CsjEF34RGaDHOzsyR6ZztP9aU09owsDzMxVC5jVTxxqEUoP 6FBWMHsLyQTqw5o3LjtkkQ7lDPmma+nE8REXxSvp+AzySwng+2lVb/lv1uhJHIZFadDr/u 7vFb45ZUF9i4VBRoGHAjllyBC1XIDptkPN8ZZIJiALxVComZQdBcLbVPDoIxjQ== From: Miquel Raynal Date: Fri, 10 Jan 2025 15:49:31 +0100 Subject: [PATCH v3 2/2] mtd: spi-nor: winbond: Add support for w25q02jv Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250110-winbond-6-12-rc1-nor-volatile-bit-v3-2-735363f8cc7d@bootlin.com> References: <20250110-winbond-6-12-rc1-nor-volatile-bit-v3-0-735363f8cc7d@bootlin.com> In-Reply-To: <20250110-winbond-6-12-rc1-nor-volatile-bit-v3-0-735363f8cc7d@bootlin.com> To: Tudor Ambarus , Pratyush Yadav , Michael Walle , Miquel Raynal , Richard Weinberger , Vignesh Raghavendra Cc: Thomas Petazzoni , Steam Lin , linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.15-dev X-GND-Sasl: miquel.raynal@bootlin.com Add support for Winbond w25q02jv spi-nor chip which shares most of w25q01jv's specificities as, this time, the chip is made of 4 different dies. Link: https://www.winbond.com/resource-files/W25Q02JV_DTR%20RevD%2007092024= %20Plus.pdf Signed-off-by: Miquel Raynal Reviewed-by: Pratyush Yadav --- Here is the basic test procedure output: $ cat /sys/bus/spi/devices/spi0.0/spi-nor/jedec_id ef7022 $ cat /sys/bus/spi/devices/spi0.0/spi-nor/manufacturer winbond $ xxd -p /sys/bus/spi/devices/spi0.0/spi-nor/sfdp 53464450060101ff00060110800000ff84000102d00000ff03000102f000 00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffe520fbffffffff7f44eb086b083b42bbfeffffffffff 0000ffff40eb0c200f5210d800003602a60082ea14e2e96376337a757a75 f7a2d55c19f74dffe970f9a5ffffffffffffffffffffffffffffffffff0a f0ff21ffdcff $ md5suum /sys/bus/spi/devices/spi0.0/spi-nor/sfdp 3e7da68579120c32a12517d2b6634c3c /sys/bus/spi/devices/spi0.0/spi-nor/sfdp $ dd if=3D/dev/urandom of=3D./qspi_test bs=3D1M count=3D1 1+0 records in 1+0 records out $ mtd_debug write /dev/mtd0 0 1048576 qspi_test Copied 1048576 bytes from qspi_test to address 0x00000000 in flash $ mtd_debug erase /dev/mtd0 0 1048576 Erased 1048576 bytes from address 0x00000000 in flash $ mtd_debug read /dev/mtd0 0 1048576 qspi_read Copied 1048576 bytes from address 0x00000000 in flash to qspi_read $ hexdump qspi_read 0000000 ffff ffff ffff ffff ffff ffff ffff ffff * 0100000 $ mtd_debug write /dev/mtd0 0 1048576 qspi_test Copied 1048576 bytes from qspi_test to address 0x00000000 in flash $ mtd_debug read /dev/mtd0 0 1048576 qspi_read Copied 1048576 bytes from address 0x00000000 in flash to qspi_read $ sha1sum qspi_test qspi_read c662ae4e6b1268e23d5a5e930995213d2e4044cc qspi_test c662ae4e6b1268e23d5a5e930995213d2e4044cc qspi_read --- drivers/mtd/spi-nor/winbond.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c index a4c0d99dde4fcd2b123eb7ded4f7822110c6a4ae..63a93c9eb9174b073e19c41eead= a33b23a99b184 100644 --- a/drivers/mtd/spi-nor/winbond.c +++ b/drivers/mtd/spi-nor/winbond.c @@ -305,6 +305,10 @@ static const struct flash_info winbond_nor_parts[] =3D= { }, { .id =3D SNOR_ID(0xef, 0x70, 0x19), .name =3D "w25q256jvm", + }, { + /* W25Q02JV */ + .id =3D SNOR_ID(0xef, 0x70, 0x22), + .fixups =3D &winbond_nor_multi_die_fixups, }, { .id =3D SNOR_ID(0xef, 0x71, 0x19), .name =3D "w25m512jv", --=20 2.47.0