Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 29fdd5ba authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull i2c fixes from Wolfram Sang:
 "Here is the fixup for the 'lowlight' of my last pull request.  I2C is
  not selected anymore by I2C_ACPI.  Instead, the code in question now
  depends on I2C=y.

  Also, Mika has agreed to support me and be the maintainer for I2C-ACPI
  related patches.  Finally, a new-ID-patch came along last week"

* 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
  MAINTAINERS: add maintainer for ACPI parts of I2C
  i2c: i801: Add PCI ID for Intel Braswell
  i2c: rework kernel config I2C_ACPI
parents d1433d55 4560d677
Loading
Loading
Loading
Loading
+7 −0
Original line number Original line Diff line number Diff line
@@ -4446,6 +4446,13 @@ F: include/linux/i2c-*.h
F:	include/uapi/linux/i2c.h
F:	include/uapi/linux/i2c.h
F:	include/uapi/linux/i2c-*.h
F:	include/uapi/linux/i2c-*.h


I2C ACPI SUPPORT
M:	Mika Westerberg <mika.westerberg@linux.intel.com>
L:	linux-i2c@vger.kernel.org
L:	linux-acpi@vger.kernel.org
S:	Maintained
F:	drivers/i2c/i2c-acpi.c

I2C-TAOS-EVM DRIVER
I2C-TAOS-EVM DRIVER
M:	Jean Delvare <jdelvare@suse.de>
M:	Jean Delvare <jdelvare@suse.de>
L:	linux-i2c@vger.kernel.org
L:	linux-i2c@vger.kernel.org
+6 −9
Original line number Original line Diff line number Diff line
@@ -23,17 +23,14 @@ config I2C
	  This I2C support can also be built as a module.  If so, the module
	  This I2C support can also be built as a module.  If so, the module
	  will be called i2c-core.
	  will be called i2c-core.


config I2C_ACPI
config ACPI_I2C_OPREGION
	bool "I2C ACPI support"
	bool "ACPI I2C Operation region support"
	select I2C
	depends on I2C=y && ACPI
	depends on ACPI
	default y
	default y
	help
	help
	  Say Y here if you want to enable ACPI I2C support. This includes support
	  Say Y here if you want to enable ACPI I2C operation region support.
	  for automatic enumeration of I2C slave devices and support for ACPI I2C
	  Operation Regions allow firmware (BIOS) code to access I2C slave devices,
	  Operation Regions. Operation Regions allow firmware (BIOS) code to
	  such as smart batteries through an I2C host controller driver.
	  access I2C slave devices, such as smart batteries through an I2C host
	  controller driver.


if I2C
if I2C


+1 −1
Original line number Original line Diff line number Diff line
@@ -3,7 +3,7 @@
#
#


i2ccore-y := i2c-core.o
i2ccore-y := i2c-core.o
i2ccore-$(CONFIG_I2C_ACPI)	+= i2c-acpi.o
i2ccore-$(CONFIG_ACPI)	 	+= i2c-acpi.o


obj-$(CONFIG_I2C_BOARDINFO)	+= i2c-boardinfo.o
obj-$(CONFIG_I2C_BOARDINFO)	+= i2c-boardinfo.o
obj-$(CONFIG_I2C)		+= i2ccore.o
obj-$(CONFIG_I2C)		+= i2ccore.o
+2 −0
Original line number Original line Diff line number Diff line
@@ -164,6 +164,7 @@


/* Older devices have their ID defined in <linux/pci_ids.h> */
/* Older devices have their ID defined in <linux/pci_ids.h> */
#define PCI_DEVICE_ID_INTEL_BAYTRAIL_SMBUS		0x0f12
#define PCI_DEVICE_ID_INTEL_BAYTRAIL_SMBUS		0x0f12
#define PCI_DEVICE_ID_INTEL_BRASWELL_SMBUS		0x2292
#define PCI_DEVICE_ID_INTEL_COUGARPOINT_SMBUS		0x1c22
#define PCI_DEVICE_ID_INTEL_COUGARPOINT_SMBUS		0x1c22
#define PCI_DEVICE_ID_INTEL_PATSBURG_SMBUS		0x1d22
#define PCI_DEVICE_ID_INTEL_PATSBURG_SMBUS		0x1d22
/* Patsburg also has three 'Integrated Device Function' SMBus controllers */
/* Patsburg also has three 'Integrated Device Function' SMBus controllers */
@@ -828,6 +829,7 @@ 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_SMBUS) },
	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_WILDCATPOINT_LP_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_BAYTRAIL_SMBUS) },
	{ PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_BRASWELL_SMBUS) },
	{ 0, }
	{ 0, }
};
};


+2 −0
Original line number Original line Diff line number Diff line
@@ -126,6 +126,7 @@ void acpi_i2c_register_devices(struct i2c_adapter *adap)
		dev_warn(&adap->dev, "failed to enumerate I2C slaves\n");
		dev_warn(&adap->dev, "failed to enumerate I2C slaves\n");
}
}


#ifdef CONFIG_ACPI_I2C_OPREGION
static int acpi_gsb_i2c_read_bytes(struct i2c_client *client,
static int acpi_gsb_i2c_read_bytes(struct i2c_client *client,
		u8 cmd, u8 *data, u8 data_len)
		u8 cmd, u8 *data, u8 data_len)
{
{
@@ -360,3 +361,4 @@ void acpi_i2c_remove_space_handler(struct i2c_adapter *adapter)


	acpi_bus_detach_private_data(handle);
	acpi_bus_detach_private_data(handle);
}
}
#endif
Loading