From: "Blacktempel (Florian K.)" <florian.blacktempel@gmail.com>
To: jdelvare@suse.com
Cc: linux-i2c@vger.kernel.org,
"Blacktempel (Florian K.)" <Blacktempel@hotmail.de>
Subject: [PATCH] i2c: allow ddr5 ram page change with active intel spd write protection
Date: Sat, 11 Oct 2025 14:31:53 +0200 [thread overview]
Message-ID: <20251011123154.2020-1-Blacktempel@hotmail.de> (raw)
SPD of most Intel DDR5 systems is write protected.
The write protection also includes changing page, via MR11 register, and prevents reading data.
This patch allows page changing with write protection active via a I2C_SMBUS_READ on PROC_CALL.
That is a, publicly undocumented, Intel specific way to allow page change.
Link: https://github.com/Blacktempel/RAMSPDToolkit/issues/4
Link: https://github.com/Blacktempel/RAMSPDToolkit/blob/9b2aeab9b7637be1874520c74c9873e174fe4947/RAMSPDToolkit/SPD/DDR5AccessorBase.cs#L237
Link: https://github.com/namazso/PawnIO.Modules/pull/19/files#diff-43cf449eaf4b834c447bc85ad039882fbd4fc883be00447908b94eb9cc8a9c36R481
Signed-off-by: Blacktempel (Florian K.) <Blacktempel@hotmail.de>
---
drivers/i2c/busses/i2c-i801.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/i2c/busses/i2c-i801.c b/drivers/i2c/busses/i2c-i801.c
index cba992fa6557..9d8eda8b3287 100644
--- a/drivers/i2c/busses/i2c-i801.c
+++ b/drivers/i2c/busses/i2c-i801.c
@@ -788,7 +788,7 @@ static int i801_simple_transaction(struct i801_priv *priv, union i2c_smbus_data
xact = I801_WORD_DATA;
break;
case I2C_SMBUS_PROC_CALL:
- i801_set_hstadd(priv, addr, I2C_SMBUS_WRITE);
+ i801_set_hstadd(priv, addr, read_write);
iowrite8(data->word & 0xff, SMBHSTDAT0(priv));
iowrite8((data->word & 0xff00) >> 8, SMBHSTDAT1(priv));
iowrite8(hstcmd, SMBHSTCMD(priv));
base-commit: 0739473694c4878513031006829f1030ec850bc2
--
next reply other threads:[~2025-10-11 12:33 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-11 12:31 Blacktempel (Florian K.) [this message]
2025-11-09 20:25 ` [PATCH] i2c: allow ddr5 ram page change with active intel spd write protection Jean Delvare
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=20251011123154.2020-1-Blacktempel@hotmail.de \
--to=florian.blacktempel@gmail.com \
--cc=Blacktempel@hotmail.de \
--cc=jdelvare@suse.com \
--cc=linux-i2c@vger.kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).