coreboot-kgpe-d16/src/device
Nico Huber 581738642f Reinvent I2C ops
Do not use the global platform_i2c_transfer() function that can only be
implemented by a single driver. Instead, make a `struct device` aware
transfer() function the only interface function for I2C controller dri-
vers to implement.

To not force the slave device drivers to be implemented either above
generic I2C or specialized SMBus operations, we support SMBus control-
lers in the slave device interface too.

We start with four simple slave functions: i2c_readb(), i2c_writeb(),
i2c_readb_at() and i2c_writeb_at(). They are all compatible to respec-
tive SMBus functions. But we keep aliases because it would be weird to
force e.g. an I2C EEPROM driver to call smbus_read_byte().

Change-Id: I98386f91bf4799ba3df84ec8bc0f64edd4142818
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/20846
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
2017-08-18 15:33:45 +00:00
..
dram device/dram/ddr2.c: Fix is_registered_ddr2 2017-06-09 16:33:38 +02:00
oprom src/device: Add guards on all header files 2017-08-01 23:05:39 +00:00
Kconfig fsp/gop: Add running the GOP to the choice of gfx init 2017-06-08 14:58:29 +02:00
Makefile.inc Reinvent I2C ops 2017-08-18 15:33:45 +00:00
azalia_device.c Correct some common spelling mistakes 2016-01-07 22:57:02 +01:00
cardbus_device.c tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
cpu_device.c src/device: Capitalize CPU, RAM and ROM 2016-07-31 18:33:30 +02:00
device.c src/device: add IS_ENABLED() around Kconfig symbol references 2017-06-28 17:48:57 +00:00
device_simple.c lib: provide clearer devicetree semantics 2017-04-25 18:14:38 +02:00
device_util.c src/device: Fix checkpatch warning: no spaces at the start of a line 2017-07-25 14:26:20 +00:00
hypertransport.c tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
i2c.c Reinvent I2C ops 2017-08-18 15:33:45 +00:00
i2c_bus.c Reinvent I2C ops 2017-08-18 15:33:45 +00:00
pci_class.c tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
pci_device.c device/pci: untangle struct device and device_t 2017-08-09 17:47:18 +00:00
pci_early.c src/device: add IS_ENABLED() around Kconfig symbol references 2017-06-28 17:48:57 +00:00
pci_ops.c PCI ops: MMCONF_SUPPORT_DEFAULT is required 2016-12-07 12:59:28 +01:00
pci_rom.c src/device: Fix checkpatch warning: no spaces at the start of a line 2017-07-25 14:26:20 +00:00
pciexp_device.c device/pciexp_device.c: Terminate CLK PM message with newline 2017-07-15 21:54:23 +00:00
pcix_device.c tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
pnp_device.c device/pnp: remove struct io_info 2017-06-13 15:21:58 +02:00
root_device.c device: Add scan_generic_bus support 2017-02-16 08:41:52 +01:00
smbus_ops.c device/smbus: Drop some never used boilerplate 2017-08-15 13:20:59 +00:00
software_i2c.c include/device: Split i2c.h into three 2017-08-18 15:33:29 +00:00