Skip to content

Commit 9906761

Browse files
committed
i2c: smbus: Support up to 8 SPD EEPROMs
JIRA: https://issues.redhat.com/browse/RHEL-47257 commit 13e3a51 Author: Jean Delvare <jdelvare@suse.de> Date: Tue Nov 14 15:13:28 2023 +0100 i2c: smbus: Support up to 8 SPD EEPROMs I originally restricted i2c_register_spd() to only support systems with up to 4 memory slots, so that we can experiment with it on a limited numbers of systems. It's been more than 3 years and it seems to work just fine, so the time has come to lift this arbitrary limitation. The maximum number of memory slots which can be connected to a single I2C segment is 8, so support that many SPD EEPROMs. Any system with more than 8 memory slots would have either multiple SMBus channels or SMBus multiplexing, so it would need dedicated care. We'll get to that later as needed. Signed-off-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Wolfram Sang <wsa@kernel.org> Signed-off-by: David Arcari <darcari@redhat.com>
1 parent 7dacee5 commit 9906761

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

drivers/i2c/i2c-smbus.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -310,8 +310,8 @@ EXPORT_SYMBOL_GPL(i2c_free_slave_host_notify_device);
310310
* target systems are the same.
311311
* Restrictions to automatic SPD instantiation:
312312
* - Only works if all filled slots have the same memory type
313-
* - Only works for DDR2, DDR3 and DDR4 for now
314-
* - Only works on systems with 1 to 4 memory slots
313+
* - Only works for DDR, DDR2, DDR3 and DDR4 for now
314+
* - Only works on systems with 1 to 8 memory slots
315315
*/
316316
#if IS_ENABLED(CONFIG_DMI)
317317
void i2c_register_spd(struct i2c_adapter *adap)
@@ -356,9 +356,9 @@ void i2c_register_spd(struct i2c_adapter *adap)
356356
dev_info(&adap->dev, "%d/%d memory slots populated (from DMI)\n",
357357
dimm_count, slot_count);
358358

359-
if (slot_count > 4) {
359+
if (slot_count > 8) {
360360
dev_warn(&adap->dev,
361-
"Systems with more than 4 memory slots not supported yet, not instantiating SPD\n");
361+
"Systems with more than 8 memory slots not supported yet, not instantiating SPD\n");
362362
return;
363363
}
364364

0 commit comments

Comments
 (0)