Skip to contentSkip to conversation

Intel Lewisburg device IDs for SMBus

PATCH Superseded Alexandra Yates 2 participants 3 messages Nov 4, 2015 – Nov 5, 2015

Subsystems (3)

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 Intel Lewisburg device IDs for SMBus

Adding Intel codename Lewisburg platform device IDs for SMBus.

---
 Documentation/i2c/busses/i2c-i801 | 1 +
 drivers/i2c/busses/Kconfig        | 1 +
 drivers/i2c/busses/i2c-i801.c     | 6 ++++++
 3 files changed, 8 insertions(+)
Documentation/i2c/busses/i2c-i801 +1 -0
index 6a4b1af..1bba38d 100644
@@ -32,6 +32,7 @@ Supported adapters:
   * Intel Sunrise Point-LP (PCH)
   * Intel DNV (SOC)
   * Intel Broxton (SOC)
+  * Intel Lewisburg (PCH)
    Datasheets: Publicly available at the Intel website
 
 On Intel Patsburg and later chipsets, both the normal host SMBus controller
drivers/i2c/busses/Kconfig +1 -0
index e24c2b6..7b0aa82 100644
@@ -126,6 +126,7 @@ config I2C_I801
 	    Sunrise Point-LP (PCH)
 	    DNV (SOC)
 	    Broxton (SOC)
+	    Lewisburg (PCH)
 
 	  This driver can also be built as a module.  If so, the module
 	  will be called i2c-i801.
drivers/i2c/busses/i2c-i801.c +6 -0
index c306751..76fcef4 100644
@@ -62,6 +62,8 @@
  * Sunrise Point-LP (PCH)	0x9d23	32	hard	yes	yes	yes
  * DNV (SOC)			0x19df	32	hard	yes	yes	yes
  * Broxton (SOC)		0x5ad4	32	hard	yes	yes	yes
+ * Lewisburg (PCH)		0xA1A3	32	hard	yes	yes	yes
+ * Lewisburg Supersku (PCH)	0xA223	32	hard	yes	yes	yes
  *
  * Features supported by this driver:
  * Software PEC				no
@@ -181,6 +183,8 @@
 				 STATUS_ERROR_FLAGS)
 
 /* Older devices have their ID defined in <linux/pci_ids.h> */
+#define PCI_DEVICE_ID_INTEL_LEWISBURG_SMBUS		0xA1A3
+#define PCI_DEVICE_ID_INTEL_LEWISBURG_SSKU_SMBUS	0xA223
 #define PCI_DEVICE_ID_INTEL_BAYTRAIL_SMBUS		0x0f12
 #define PCI_DEVICE_ID_INTEL_BRASWELL_SMBUS		0x2292
 #define PCI_DEVICE_ID_INTEL_COUGARPOINT_SMBUS		0x1c22
@@ -864,6 +868,8 @@ static const struct pci_device_id i801_ids[] = {
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_WILDCATPOINT_SMBUS) },
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_WILDCATPOINT_LP_SMBUS) },
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_BAYTRAIL_SMBUS) },
+	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_LEWISBURG_SMBUS) },
+	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_LEWISBURG_SSKU_SMBUS) },
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_BRASWELL_SMBUS) },
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_SUNRISEPOINT_H_SMBUS) },
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_SUNRISEPOINT_LP_SMBUS) },
Signature · 1 line
1.9.1
Reviewed-by on v2 1/1
#1 lore raw

Hi Alexandra,

Quoted 38 lines · Alexandra Yates

Adding Intel codename Lewisburg platform device IDs for SMBus.

---
 Documentation/i2c/busses/i2c-i801 | 1 +
 drivers/i2c/busses/Kconfig        | 1 +
 drivers/i2c/busses/i2c-i801.c     | 6 ++++++
 3 files changed, 8 insertions(+)
Documentation/i2c/busses/i2c-i801 +1 -0
index 6a4b1af..1bba38d 100644
@@ -32,6 +32,7 @@ Supported adapters:
   * Intel Sunrise Point-LP (PCH)
   * Intel DNV (SOC)
   * Intel Broxton (SOC)
+  * Intel Lewisburg (PCH)
    Datasheets: Publicly available at the Intel website
 
 On Intel Patsburg and later chipsets, both the normal host SMBus controller
drivers/i2c/busses/Kconfig +1 -0
index e24c2b6..7b0aa82 100644
@@ -126,6 +126,7 @@ config I2C_I801
 	    Sunrise Point-LP (PCH)
 	    DNV (SOC)
 	    Broxton (SOC)
+	    Lewisburg (PCH)
 
 	  This driver can also be built as a module.  If so, the module
 	  will be called i2c-i801.
drivers/i2c/busses/i2c-i801.c +0 -0
index c306751..76fcef4 100644

drivers/i2c/busses/i2c-i801.c line 66

Quoted 5 lines
drivers/i2c/busses/i2c-i801.c +2 -0
@@ -62,6 +62,8 @@
  * Sunrise Point-LP (PCH)	0x9d23	32	hard	yes	yes	yes
  * DNV (SOC)			0x19df	32	hard	yes	yes	yes
  * Broxton (SOC)		0x5ad4	32	hard	yes	yes	yes
+ * Lewisburg (PCH)		0xA1A3	32	hard	yes	yes	yes
+ * Lewisburg Supersku (PCH)	0xA223	32	hard	yes	yes	yes

It's a bit unfortunate that you used upper-case letters for the hexadecimal numbers when all other entries used lower-case letters.

drivers/i2c/busses/i2c-i801.c line 187

Quoted 9 lines
drivers/i2c/busses/i2c-i801.c +2 -0
  *
  * Features supported by this driver:
  * Software PEC				no
@@ -181,6 +183,8 @@
 				 STATUS_ERROR_FLAGS)
 
 /* Older devices have their ID defined in <linux/pci_ids.h> */
+#define PCI_DEVICE_ID_INTEL_LEWISBURG_SMBUS		0xA1A3
+#define PCI_DEVICE_ID_INTEL_LEWISBURG_SSKU_SMBUS	0xA223

Same here. Plus, why are you adding the IDs at the top of the list here while you added them at the bottom of the first list...

drivers/i2c/busses/i2c-i801.c static const struct pci_device_id i801_ids[] = { · line 875

Quoted 12 lines
drivers/i2c/busses/i2c-i801.c +2 -0
 #define PCI_DEVICE_ID_INTEL_BAYTRAIL_SMBUS		0x0f12
 #define PCI_DEVICE_ID_INTEL_BRASWELL_SMBUS		0x2292
 #define PCI_DEVICE_ID_INTEL_COUGARPOINT_SMBUS		0x1c22
@@ -864,6 +868,8 @@ static const struct pci_device_id i801_ids[] = {
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_WILDCATPOINT_SMBUS) },
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_WILDCATPOINT_LP_SMBUS) },
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_BAYTRAIL_SMBUS) },
+	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_LEWISBURG_SMBUS) },
+	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_LEWISBURG_SSKU_SMBUS) },
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_BRASWELL_SMBUS) },
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_SUNRISEPOINT_H_SMBUS) },
 	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_SUNRISEPOINT_LP_SMBUS) },

... and now in the middle of the last list? I would appreciate more consistency.

These are all details of course, overall the changes look good, so you can add:

Signature · 2 lines
Jean Delvare
SUSE L3 Support
#2 lore raw

Hi Jean,

Quoted 79 lines · Jean Delvare

Hi Alexandra,

Quoted 38 lines · Alexandra Yates

Adding Intel codename Lewisburg platform device IDs for SMBus.

---
  Documentation/i2c/busses/i2c-i801 | 1 +
  drivers/i2c/busses/Kconfig        | 1 +
  drivers/i2c/busses/i2c-i801.c     | 6 ++++++
  3 files changed, 8 insertions(+)
Documentation/i2c/busses/i2c-i801 +1 -0
index 6a4b1af..1bba38d 100644
@@ -32,6 +32,7 @@ Supported adapters:
    * Intel Sunrise Point-LP (PCH)
    * Intel DNV (SOC)
    * Intel Broxton (SOC)
+  * Intel Lewisburg (PCH)
     Datasheets: Publicly available at the Intel website
 
  On Intel Patsburg and later chipsets, both the normal host SMBus controller
drivers/i2c/busses/Kconfig +1 -0
index e24c2b6..7b0aa82 100644
@@ -126,6 +126,7 @@ config I2C_I801
  	    Sunrise Point-LP (PCH)
  	    DNV (SOC)
  	    Broxton (SOC)
+	    Lewisburg (PCH)
 
  	  This driver can also be built as a module.  If so, the module
  	  will be called i2c-i801.
drivers/i2c/busses/i2c-i801.c +0 -0
index c306751..76fcef4 100644

drivers/i2c/busses/i2c-i801.c line 66

Quoted 5 lines
drivers/i2c/busses/i2c-i801.c +2 -0
@@ -62,6 +62,8 @@
   * Sunrise Point-LP (PCH)	0x9d23	32	hard	yes	yes	yes
   * DNV (SOC)			0x19df	32	hard	yes	yes	yes
   * Broxton (SOC)		0x5ad4	32	hard	yes	yes	yes
+ * Lewisburg (PCH)		0xA1A3	32	hard	yes	yes	yes
+ * Lewisburg Supersku (PCH)	0xA223	32	hard	yes	yes	yes

It's a bit unfortunate that you used upper-case letters for the hexadecimal numbers when all other entries used lower-case letters.

drivers/i2c/busses/i2c-i801.c line 187

Quoted 9 lines
drivers/i2c/busses/i2c-i801.c +2 -0
   *
   * Features supported by this driver:
   * Software PEC				no
@@ -181,6 +183,8 @@
  				 STATUS_ERROR_FLAGS)
 
  /* Older devices have their ID defined in <linux/pci_ids.h> */
+#define PCI_DEVICE_ID_INTEL_LEWISBURG_SMBUS		0xA1A3
+#define PCI_DEVICE_ID_INTEL_LEWISBURG_SSKU_SMBUS	0xA223

Same here. Plus, why are you adding the IDs at the top of the list here while you added them at the bottom of the first list...

drivers/i2c/busses/i2c-i801.c static const struct pci_device_id i801_ids[] = { · line 875

Quoted 12 lines
drivers/i2c/busses/i2c-i801.c +2 -0
  #define PCI_DEVICE_ID_INTEL_BAYTRAIL_SMBUS		0x0f12
  #define PCI_DEVICE_ID_INTEL_BRASWELL_SMBUS		0x2292
  #define PCI_DEVICE_ID_INTEL_COUGARPOINT_SMBUS		0x1c22
@@ -864,6 +868,8 @@ static const struct pci_device_id i801_ids[] = {
  	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_WILDCATPOINT_SMBUS) },
  	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_WILDCATPOINT_LP_SMBUS) },
  	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_BAYTRAIL_SMBUS) },
+	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_LEWISBURG_SMBUS) },
+	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_LEWISBURG_SSKU_SMBUS) },
  	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_BRASWELL_SMBUS) },
  	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_SUNRISEPOINT_H_SMBUS) },
  	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_SUNRISEPOINT_LP_SMBUS) },

... and now in the middle of the last list? I would appreciate more consistency.

Quoted 5 lines

These are all details of course, overall the changes look good, so you can add:

Thank you for your review. I sent the V3 of this patch with the changes you suggested.

Signature · 2 lines
Thank you,
<Alexandra>