freebsd-dev/sys/dev/iicbus
Adrian Chadd 9844b3b3ab Allow the i2c node requirements to be slightly relaxed.
These realtek switch PHYs speak a variant of i2c with some slightly
modified handling.

From the submitter, slightly modified now that some further digging
has been done:

  The I2C framework makes a assumption that the read/not-write bit of the first
  byte (the address) indicates whether reads or writes are to follow.

  The RTL8366 family uses the bus: after sending the address+read/not-write byte,
  two register address bytes are sent, then the 16-bit register value is sent
  or received.  While the register write access can be performed as a 4-byte
  write, the read access requires the read bit to be set, but the first two bytes
  for the register address then need to be transmitted.

This patch maintains the i2c protocol behaviour but allows it to be relaxed
(for these kinds of switch PHYs, and whatever else Realtek may do with this
almost-but-not-quite i2c bus) - by setting the "strict" hint to 0.
The "strict" hint defaults to 1.

Submitted by:	Stefan Bethke <stb@lassitu.de>
2011-12-04 11:55:33 +00:00
..
ad7417.c Mark MALLOC_DEFINEs static that have no corresponding MALLOC_DECLAREs. 2011-11-07 06:44:47 +00:00
ad7418.c Change the way I2C bus attachment works to allow firmware-assisted bus 2009-01-06 17:23:37 +00:00
ds133x.c - Rename ds1672 and ds133x devices to "ds1672_rtc" and "ds133x_rtc" 2009-04-21 22:48:12 +00:00
ds1672.c - Rename ds1672 and ds133x devices to "ds1672_rtc" and "ds133x_rtc" 2009-04-21 22:48:12 +00:00
ds1775.c Replace the FCU_ZERO_C_TO_K with the ZERO_C_TO_K from powermac_thermal.h. 2011-06-04 09:19:53 +00:00
icee.c Change the way I2C bus attachment works to allow firmware-assisted bus 2009-01-06 17:23:37 +00:00
if_ic.c Tag mbufs of all incoming frames or packets with the interface's FIB 2011-07-03 16:08:38 +00:00
iic.c Revert r226398 and instead move the allocation of usrbufs after the error check. 2011-10-16 17:38:20 +00:00
iic.h Fix typo in comment. 2010-08-07 08:31:32 +00:00
iicbb_if.m
iicbb.c Fix iicbus_intr, iicbus_write and device_read_ivar prototypes... 2009-02-10 22:50:23 +00:00
iicbus_if.m
iicbus.c Allow the i2c node requirements to be slightly relaxed. 2011-12-04 11:55:33 +00:00
iicbus.h Allow the i2c node requirements to be slightly relaxed. 2011-12-04 11:55:33 +00:00
iiconf.c Allow the i2c node requirements to be slightly relaxed. 2011-12-04 11:55:33 +00:00
iiconf.h
iicsmb.c - There's no need to overwrite the default device method with the default 2011-11-22 21:28:20 +00:00
max6690.c Mark MALLOC_DEFINEs static that have no corresponding MALLOC_DECLAREs. 2011-11-07 06:44:47 +00:00