Skip to contentSkip to conversation

Intel LBG device IDs for SMBus

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

Subsystems (3)

v1 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Intel LBG 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 82f48f7..2ccde60 100644
@@ -30,6 +30,7 @@ Supported adapters:
   * Intel BayTrail (SOC)
   * Intel Sunrise Point-H (PCH)
   * Intel Sunrise Point-LP (PCH)
+  * Intel Lewisburg (PCH) (LBG)
    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 08b8617..3adc2b7 100644
@@ -124,6 +124,7 @@ config I2C_I801
 	    BayTrail (SOC)
 	    Sunrise Point-H (PCH)
 	    Sunrise Point-LP (PCH)
+	    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 eaef9bc..34da07b 100644
@@ -60,6 +60,8 @@
  * BayTrail (SOC)		0x0f12	32	hard	yes	yes	yes
  * Sunrise Point-H (PCH) 	0xa123  32	hard	yes	yes	yes
  * Sunrise Point-LP (PCH)	0x9d23	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
@@ -179,6 +181,8 @@
 				 STATUS_ERROR_FLAGS)
 
 /* Older devices have their ID defined in <linux/pci_ids.h> */
+#define PCI_DEVICE_ID_INTEL_LBG_SMBUS			0xA1A3
+#define PCI_DEVICE_ID_INTEL_LBG_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
@@ -860,6 +864,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_LBG_SMBUS) },
+	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_LBG_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
#1 lore raw

Hi Alexandra,

Quoted 8 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(+)

This patch doesn't apply because it ignores recent changes made to the same files: "i2c: i801: Add support for Intel DNV" by Mika Westerberg, "i2c: i801: Add support for Intel Broxton" by Jarkko Nikula and "i2c:
i801: Document Intel DNV and Broxton" by Jarkko Nikula.

All of these patches are in Wolfram's i2c tree:
http://git.kernel.org/cgit/linux/kernel/git/wsa/linux.git/log/?h=i2c/for-next

So please rebase your patch on that tree. Also see my comments below.

Documentation/i2c/busses/i2c-i801 Supported adapters: · line 33

Quoted 10 lines
Documentation/i2c/busses/i2c-i801 +1 -0
index 82f48f7..2ccde60 100644
@@ -30,6 +30,7 @@ Supported adapters:
   * Intel BayTrail (SOC)
   * Intel Sunrise Point-H (PCH)
   * Intel Sunrise Point-LP (PCH)
+  * Intel Lewisburg (PCH) (LBG)

"(LBG)" doesn't need to be mentioned.

Quoted 29 lines
Documentation/i2c/busses/i2c-i801 +0 -0
    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 08b8617..3adc2b7 100644
@@ -124,6 +124,7 @@ config I2C_I801
 	    BayTrail (SOC)
 	    Sunrise Point-H (PCH)
 	    Sunrise Point-LP (PCH)
+	    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 +2 -0
index eaef9bc..34da07b 100644
@@ -60,6 +60,8 @@
  * BayTrail (SOC)		0x0f12	32	hard	yes	yes	yes
  * Sunrise Point-H (PCH) 	0xa123  32	hard	yes	yes	yes
  * Sunrise Point-LP (PCH)	0x9d23	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

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

Quoted 5 lines
drivers/i2c/busses/i2c-i801.c +2 -0
@@ -179,6 +181,8 @@
 				 STATUS_ERROR_FLAGS)
 
 /* Older devices have their ID defined in <linux/pci_ids.h> */
+#define PCI_DEVICE_ID_INTEL_LBG_SMBUS			0xA1A3
+#define PCI_DEVICE_ID_INTEL_LBG_SSKU_SMBUS		0xA223

Please spell out LEWISBURG here. 3-letter shortcuts everywhere hurt readability considerably over time.

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
@@ -860,6 +864,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_LBG_SMBUS) },
+	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_LBG_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 · 2 lines
Jean Delvare
SUSE L3 Support
#2 lore raw

Hi Jean,

Quoted 73 lines · Jean Delvare

Hi Alexandra,

Quoted 8 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(+)

This patch doesn't apply because it ignores recent changes made to the same files: "i2c: i801: Add support for Intel DNV" by Mika Westerberg, "i2c: i801: Add support for Intel Broxton" by Jarkko Nikula and "i2c:
i801: Document Intel DNV and Broxton" by Jarkko Nikula.

All of these patches are in Wolfram's i2c tree:
http://git.kernel.org/cgit/linux/kernel/git/wsa/linux.git/log/?h=i2c/for-next

So please rebase your patch on that tree. Also see my comments below.

Documentation/i2c/busses/i2c-i801 Supported adapters: · line 33

Quoted 10 lines
Documentation/i2c/busses/i2c-i801 +1 -0
index 82f48f7..2ccde60 100644
@@ -30,6 +30,7 @@ Supported adapters:
    * Intel BayTrail (SOC)
    * Intel Sunrise Point-H (PCH)
    * Intel Sunrise Point-LP (PCH)
+  * Intel Lewisburg (PCH) (LBG)

"(LBG)" doesn't need to be mentioned.

Quoted 29 lines
Documentation/i2c/busses/i2c-i801 +0 -0
     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 08b8617..3adc2b7 100644
@@ -124,6 +124,7 @@ config I2C_I801
  	    BayTrail (SOC)
  	    Sunrise Point-H (PCH)
  	    Sunrise Point-LP (PCH)
+	    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 +2 -0
index eaef9bc..34da07b 100644
@@ -60,6 +60,8 @@
   * BayTrail (SOC)		0x0f12	32	hard	yes	yes	yes
   * Sunrise Point-H (PCH) 	0xa123  32	hard	yes	yes	yes
   * Sunrise Point-LP (PCH)	0x9d23	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

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

Quoted 5 lines
drivers/i2c/busses/i2c-i801.c +2 -0
@@ -179,6 +181,8 @@
  				 STATUS_ERROR_FLAGS)
 
  /* Older devices have their ID defined in <linux/pci_ids.h> */
+#define PCI_DEVICE_ID_INTEL_LBG_SMBUS			0xA1A3
+#define PCI_DEVICE_ID_INTEL_LBG_SSKU_SMBUS		0xA223

Please spell out LEWISBURG here. 3-letter shortcuts everywhere hurt readability considerably over time.

Quoted 14 lines

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

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
@@ -860,6 +864,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_LBG_SMBUS) },
+	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_LBG_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) },

Thank you for reviewing the patch. I added your suggested changes. Please see version 2.

Signature · 2 lines
Thank you,
<Alexandra>