mbox series

[v10,0/6] i2c: add zhaoxin i2c controller driver

Message ID cover.1712479417.git.hanshu-oc@zhaoxin.com
Headers show
Series i2c: add zhaoxin i2c controller driver | expand

Message

Hans Hu April 8, 2024, 2:54 a.m. UTC
v9->v10:
	* fixed style issues that were checked out by checkpatch.pl.
	* In Patch 3 in wmt_i2c_write() function, deleted the log
	  when received nack.
	* In Patch 4 in viai2c_irq_xfer() function, return 1 for
	  I2C_SMBUS_QUICK access.
	* In Patch 6 in zxi2c_get_bus_speed() function, adjusted
	  the log when firmware gives inappropriate parameters.
	Link: https://lore.kernel.org/all/20240306212413.1850236-1-andi.shyti@kernel.org/

v8->v9:
	* In Patch 1 in probe() do not return at the
	  i2c_add_adapter(), but call clk_disable_unprepare()
	  in case of failure.
	* In Patch 2 fix the conflict when i2c-wmt.c is removed.
	* In Patch 2 in wmt_i2c_probe() function, call
	  clk_disable_unprepare() in case of failure. While at
	  it, add a comment to explain the reason.
	* When renaming i2c_dev to i2c, change also the reference
	  in clk_disable_unprepare().
	Link: https://lore.kernel.org/all/20240306212413.1850236-1-andi.shyti@kernel.org/

v7->v8:
	* move per-msg handling to interrupt context
	* add private struct viai2c_zhaoxin to handle zhaoxin specific things
	* fixed some other formatting issues
	Link: https://lore.kernel.org/all/cover.1704440251.git.hanshu-oc@zhaoxin.com/

v6->v7:
	* adjust the patch sequence
	* put those renaming related patches in 1 patch file
	* rename i2c-*-plt.c to i2c-viai2c-*.c
	* Some other adjustments suggested by Andi
	For more details, see the comment in each patch please.
	Link: https://lore.kernel.org/all/cover.1703830854.git.hanshu-oc@zhaoxin.com/

v5->v6:
	* fix build warnning reported by kernel test robot.
	  Link: https://lore.kernel.org/all/202312291225.cWVt6YF9-lkp@intel.com/
	Link: https://lore.kernel.org/all/cover.1703733126.git.hanshu-oc@zhaoxin.com/

v4->v5:
	* fix 1 build error.
	  Link: https://lore.kernel.org/all/ZYx0VPVmyQhtG+B9@shikoro/1-a.txt
	Link: https://lore.kernel.org/all/cover.1703647471.git.hanshu-oc@zhaoxin.com/

v3->v4:
	* Some adjustments as suggested by Wolfram.
	* rebase patch on top of for-next branch.
	Link: https://lore.kernel.org/all/cover.1698889581.git.hanshu-oc@zhaoxin.com/

v2->v3:
	* Split the number of patches from 2 to 12. Make it easier to review.
	Link: https://lore.kernel.org/all/cover.1691999569.git.hanshu-oc@zhaoxin.com/

v1->v2:
	* Fixed some bugs I found myself.
	Link: https://lore.kernel.org/all/cover.1691030850.git.hanshu-oc@zhaoxin.com/

Old version:
	This patch has already gone through a round of reviews.
	The difference from the first round is that it reuses
	the i2c-wmt driver.
	Link: https://lore.kernel.org/all/20230614094858.317652-1-hanshu-oc@zhaoxin.com/

Signed-off-by: Hans Hu <hanshu-oc@zhaoxin.com>

Hans Hu (6):
  i2c: wmt: create wmt_i2c_init for general init
  i2c: wmt: split out common files
  i2c: wmt: rename something
  i2c: wmt: fix a bug when thread blocked
  i2c: wmt: add platform type VIAI2C_PLAT_WMT
  i2c: add zhaoxin i2c controller driver

 MAINTAINERS                             |  10 +-
 drivers/i2c/busses/Kconfig              |  10 +
 drivers/i2c/busses/Makefile             |   3 +
 drivers/i2c/busses/i2c-viai2c-common.c  | 256 ++++++++++++++
 drivers/i2c/busses/i2c-viai2c-common.h  |  85 +++++
 drivers/i2c/busses/i2c-viai2c-wmt.c     | 148 +++++++++
 drivers/i2c/busses/i2c-viai2c-zhaoxin.c | 298 +++++++++++++++++
 drivers/i2c/busses/i2c-wmt.c            | 421 ------------------------
 8 files changed, 809 insertions(+), 422 deletions(-)
 create mode 100644 drivers/i2c/busses/i2c-viai2c-common.c
 create mode 100644 drivers/i2c/busses/i2c-viai2c-common.h
 create mode 100644 drivers/i2c/busses/i2c-viai2c-wmt.c
 create mode 100644 drivers/i2c/busses/i2c-viai2c-zhaoxin.c
 delete mode 100644 drivers/i2c/busses/i2c-wmt.c