From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andy Lutomirski Subject: [PATCH v3 0/4] iMC SMBUS, TSOD hwmon devices, and eeprom modalias Date: Wed, 17 Jul 2013 13:53:04 -0700 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: Sender: linux-i2c-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: lm-sensors-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org, linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Jean Delvare , Guenter Roeck Cc: James Ralston , Andy Lutomirski List-Id: linux-i2c@vger.kernel.org Intel LGA2011 machines have dedicated SMBUS controllers for DIMM socket= s. Because they're dedicated, they can be safely and accurately probed= , since all devices on them are known to be attached to DIMMs. The dev= ices found are: - SPD EEPROMs - TSODs (Temperature Sensor on DIMMs), a JEDEC standard device - Other interesting things, with drivers hopefully to follow... This patch series adds a simple generic layer for probing for DIMMs ove= r SMBUS, an i2c bus driver for the iMC controller found on Intel LGA2011 chips, and a modalias for the eeprom driver so it can be automatically loaded. I've tested this on a Core i7 Extreme and on a Xeon E5 server. With this series applied, sensors shows (on the Xeon E5): TSOD-i2c-1-18 Adapter: iMC socket 0 channel 0 DIMM Temperature: +35.2=C2=B0C =20 TSOD-i2c-1-1c Adapter: iMC socket 0 channel 0 DIMM Temperature: +33.0=C2=B0C =20 TSOD-i2c-3-18 Adapter: iMC socket 1 channel 0 DIMM Temperature: +34.0=C2=B0C =20 TSOD-i2c-3-1c Adapter: iMC socket 1 channel 0 DIMM Temperature: +27.2=C2=B0C=20 with no need for any userspace probing or manual module loading. decode-dimms works on both machines, again without any manual module loading. The whole series is available on git here (against v3.9.7): https://git.kernel.org/cgit/linux/kernel/git/luto/linux.git/log/?h=3Di2= c_imc/patch_v3 Changes from earlier versions: - Dropped changes to core I2C_CLASS_SPD probing - Cleanup up i2c_imc driver - Added dimm-bus, tsod driver, and eeprom modalias Andy Lutomirski (4): i2c: Add DIMM bus code i2c_imc: New driver for Intel's iMC, found on LGA2011 chips tsod: New hwmon driver for Temperature Sensors on DIMM eeprom: Add a MODULE_DEVICE_TABLE drivers/hwmon/Kconfig | 10 + drivers/hwmon/Makefile | 1 + drivers/hwmon/tsod.c | 195 +++++++++++++++ drivers/i2c/busses/Kconfig | 19 ++ drivers/i2c/busses/Makefile | 5 + drivers/i2c/busses/dimm-bus.c | 84 +++++++ drivers/i2c/busses/i2c-imc.c | 548 ++++++++++++++++++++++++++++++++++= ++++++++ drivers/misc/eeprom/eeprom.c | 1 + include/linux/i2c/dimm-bus.h | 24 ++ 9 files changed, 887 insertions(+) create mode 100644 drivers/hwmon/tsod.c create mode 100644 drivers/i2c/busses/dimm-bus.c create mode 100644 drivers/i2c/busses/i2c-imc.c create mode 100644 include/linux/i2c/dimm-bus.h --=20 1.8.1.4 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andy Lutomirski Date: Wed, 17 Jul 2013 20:53:04 +0000 Subject: [lm-sensors] [PATCH v3 0/4] iMC SMBUS, TSOD hwmon devices, and eeprom modalias Message-Id: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: lm-sensors-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org, linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Jean Delvare , Guenter Roeck Cc: James Ralston , Andy Lutomirski SW50ZWwgTEdBMjAxMSBtYWNoaW5lcyBoYXZlIGRlZGljYXRlZCBTTUJVUyBjb250cm9sbGVycyBm b3IgRElNTSBzb2NrZXRzLiAgQmVjYXVzZSB0aGV5J3JlIGRlZGljYXRlZCwgdGhleSBjYW4gYmUg c2FmZWx5IGFuZCBhY2N1cmF0ZWx5IHByb2JlZCwgc2luY2UgYWxsIGRldmljZXMgb24gdGhlbSBh cmUga25vd24gdG8gYmUgYXR0YWNoZWQgdG8gRElNTXMuICBUaGUgZGV2aWNlcyBmb3VuZCBhcmU6 CiAtIFNQRCBFRVBST01zCiAtIFRTT0RzIChUZW1wZXJhdHVyZSBTZW5zb3Igb24gRElNTXMpLCBh IEpFREVDIHN0YW5kYXJkIGRldmljZQogLSBPdGhlciBpbnRlcmVzdGluZyB0aGluZ3MsIHdpdGgg ZHJpdmVycyBob3BlZnVsbHkgdG8gZm9sbG93Li4uCgpUaGlzIHBhdGNoIHNlcmllcyBhZGRzIGEg c2ltcGxlIGdlbmVyaWMgbGF5ZXIgZm9yIHByb2JpbmcgZm9yIERJTU1zIG92ZXIKU01CVVMsIGFu IGkyYyBidXMgZHJpdmVyIGZvciB0aGUgaU1DIGNvbnRyb2xsZXIgZm91bmQgb24gSW50ZWwgTEdB MjAxMQpjaGlwcywgYW5kIGEgbW9kYWxpYXMgZm9yIHRoZSBlZXByb20gZHJpdmVyIHNvIGl0IGNh biBiZSBhdXRvbWF0aWNhbGx5CmxvYWRlZC4KCkkndmUgdGVzdGVkIHRoaXMgb24gYSBDb3JlIGk3 IEV4dHJlbWUgYW5kIG9uIGEgWGVvbiBFNSBzZXJ2ZXIuCldpdGggdGhpcyBzZXJpZXMgYXBwbGll ZCwgc2Vuc29ycyBzaG93cyAob24gdGhlIFhlb24gRTUpOgoKVFNPRC1pMmMtMS0xOApBZGFwdGVy OiBpTUMgc29ja2V0IDAgY2hhbm5lbCAwCkRJTU0gVGVtcGVyYXR1cmU6ICArMzUuMsKwQyAgCgpU U09ELWkyYy0xLTFjCkFkYXB0ZXI6IGlNQyBzb2NrZXQgMCBjaGFubmVsIDAKRElNTSBUZW1wZXJh dHVyZTogICszMy4wwrBDICAKClRTT0QtaTJjLTMtMTgKQWRhcHRlcjogaU1DIHNvY2tldCAxIGNo YW5uZWwgMApESU1NIFRlbXBlcmF0dXJlOiAgKzM0LjDCsEMgIAoKVFNPRC1pMmMtMy0xYwpBZGFw dGVyOiBpTUMgc29ja2V0IDEgY2hhbm5lbCAwCkRJTU0gVGVtcGVyYXR1cmU6ICArMjcuMsKwQyAK CndpdGggbm8gbmVlZCBmb3IgYW55IHVzZXJzcGFjZSBwcm9iaW5nIG9yIG1hbnVhbCBtb2R1bGUg bG9hZGluZy4KZGVjb2RlLWRpbW1zIHdvcmtzIG9uIGJvdGggbWFjaGluZXMsIGFnYWluIHdpdGhv dXQgYW55IG1hbnVhbCBtb2R1bGUKbG9hZGluZy4KClRoZSB3aG9sZSBzZXJpZXMgaXMgYXZhaWxh YmxlIG9uIGdpdCBoZXJlIChhZ2FpbnN0IHYzLjkuNyk6Cmh0dHBzOi8vZ2l0Lmtlcm5lbC5vcmcv Y2dpdC9saW51eC9rZXJuZWwvZ2l0L2x1dG8vbGludXguZ2l0L2xvZy8/aD1pMmNfaW1jL3BhdGNo X3YzCgpDaGFuZ2VzIGZyb20gZWFybGllciB2ZXJzaW9uczoKIC0gRHJvcHBlZCBjaGFuZ2VzIHRv IGNvcmUgSTJDX0NMQVNTX1NQRCBwcm9iaW5nCiAtIENsZWFudXAgdXAgaTJjX2ltYyBkcml2ZXIK IC0gQWRkZWQgZGltbS1idXMsIHRzb2QgZHJpdmVyLCBhbmQgZWVwcm9tIG1vZGFsaWFzCgpBbmR5 IEx1dG9taXJza2kgKDQpOgogIGkyYzogQWRkIERJTU0gYnVzIGNvZGUKICBpMmNfaW1jOiBOZXcg ZHJpdmVyIGZvciBJbnRlbCdzIGlNQywgZm91bmQgb24gTEdBMjAxMSBjaGlwcwogIHRzb2Q6IE5l dyBod21vbiBkcml2ZXIgZm9yIFRlbXBlcmF0dXJlIFNlbnNvcnMgb24gRElNTQogIGVlcHJvbTog QWRkIGEgTU9EVUxFX0RFVklDRV9UQUJMRQoKIGRyaXZlcnMvaHdtb24vS2NvbmZpZyAgICAgICAg IHwgIDEwICsKIGRyaXZlcnMvaHdtb24vTWFrZWZpbGUgICAgICAgIHwgICAxICsKIGRyaXZlcnMv aHdtb24vdHNvZC5jICAgICAgICAgIHwgMTk1ICsrKysrKysrKysrKysrKwogZHJpdmVycy9pMmMv YnVzc2VzL0tjb25maWcgICAgfCAgMTkgKysKIGRyaXZlcnMvaTJjL2J1c3Nlcy9NYWtlZmlsZSAg IHwgICA1ICsKIGRyaXZlcnMvaTJjL2J1c3Nlcy9kaW1tLWJ1cy5jIHwgIDg0ICsrKysrKysKIGRy aXZlcnMvaTJjL2J1c3Nlcy9pMmMtaW1jLmMgIHwgNTQ4ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9taXNjL2VlcHJvbS9lZXByb20uYyAgfCAgIDEg KwogaW5jbHVkZS9saW51eC9pMmMvZGltbS1idXMuaCAgfCAgMjQgKysKIDkgZmlsZXMgY2hhbmdl ZCwgODg3IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2h3bW9uL3Rz b2QuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvaTJjL2J1c3Nlcy9kaW1tLWJ1cy5jCiBj cmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9pMmMvYnVzc2VzL2kyYy1pbWMuYwogY3JlYXRlIG1v ZGUgMTAwNjQ0IGluY2x1ZGUvbGludXgvaTJjL2RpbW0tYnVzLmgKCi0tIAoxLjguMS40CgoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbG0tc2Vuc29ycyBt YWlsaW5nIGxpc3QKbG0tc2Vuc29yc0BsbS1zZW5zb3JzLm9yZwpodHRwOi8vbGlzdHMubG0tc2Vu c29ycy5vcmcvbWFpbG1hbi9saXN0aW5mby9sbS1zZW5zb3Jz