From nobody Mon Feb 9 07:55:53 2026 Received: from relay3-d.mail.gandi.net (relay3-d.mail.gandi.net [217.70.183.195]) (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 517851F9ABF for ; Thu, 9 Jan 2025 20:17:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.70.183.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736453874; cv=none; b=RPhVQXnXOZRNaWWpLx118CrQuZlECgHp3+wt5+Z/tL+TXl5crPdw0E+8k8FE0jlHidq648yD4H8EgMImNjVmwVp7MO7FZ2rAoKgSQrLvShZtyRkYEp6JpzKVdxaLMD1oHPcMWKcrJmLcHBvmd4lJk5tqaVlXMJnn+7nSugucwak= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736453874; c=relaxed/simple; bh=IEAvaqyKUtSK/3hck/my51ixSWDHsCJTG4zOpX0/74A=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=fSqZWgQmIXwF+VHkXNtkGKGbqZ2NaZMq4j9XzUg1WZe5SqumRg0yIPKQSg3DQYB+j82vayDeGbaz6IgqpRZ0Xz0mliIE+yfQMusogxgdWxKtcKF6hV7Z0Sr9iWVVkHVS0U25JycLZoOpol/ipWVvV5MfJ+dLLGHec84ds4XE+Ms= 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=Eg6hUiJI; arc=none smtp.client-ip=217.70.183.195 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="Eg6hUiJI" Received: by mail.gandi.net (Postfix) with ESMTPSA id 2AB5B6000A; Thu, 9 Jan 2025 20:17:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1736453870; 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=+CehoOF6hW64bjE5+JEwZUVzVE68OkxXhgMwuCeOKYo=; b=Eg6hUiJID3Q12wGvJIGmGQkPidclYCfh9W9/RYk4pKHqk8na70IdzWmBfuxOf4Tq3veU9O Eky86Og/zcs9pNS1r6pZ7HlibbNSlwWuvNSUB35llxlSvDL9HC2+F7kkO439DyjwOWS/ub 1I1ipcxyGpEce7AXpKXPx1h6oBjxlhNc8znaH/zOdsrv7Fm3AObD8wo4IRcYfVEs/zRv2Q Js5XcrASutC/Yb2F5O8xvO0fUt3RnVBlI4D+TbwCbogKrDNXBJOagSW54PWYtP6IpPphHU qJcQdhIvswKHJRt1aH9Ow6z72ehDLivNRpldSS0mMTBIvk2OprlRlJp6VHSqqQ== From: Miquel Raynal Date: Thu, 09 Jan 2025 21:17:25 +0100 Subject: [PATCH v2 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: <20250109-winbond-6-12-rc1-nor-volatile-bit-v2-2-e8cd0812fe4e@bootlin.com> References: <20250109-winbond-6-12-rc1-nor-volatile-bit-v2-0-e8cd0812fe4e@bootlin.com> In-Reply-To: <20250109-winbond-6-12-rc1-nor-volatile-bit-v2-0-e8cd0812fe4e@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 --- 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..d82962e0bf7d8e00b305fd83827= 4a58c34dd6c4e 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", + }, { + .id =3D SNOR_ID(0xef, 0x70, 0x22), + /* W25Q02JV */ + .fixups =3D &winbond_nor_multi_die_fixups, }, { .id =3D SNOR_ID(0xef, 0x71, 0x19), .name =3D "w25m512jv", --=20 2.47.0