Skip to contentSkip to conversation

i2c: npcm: add NPCM7xx I2C bus

PATCH New Tomer Maimon 1 participant 3 messages Jan 4, 2018

Subsystems (3)
lore
Share & tools
lore

Tomer Maimon

author maintainer
#0 lore raw

cover i2c: npcm: add NPCM7xx I2C bus

This patch set adds I2C bus support for the Nuvoton NPCM7xx Baseboard Management Controller (BMC).

The NPCM750x includes sixteen I2C busses

The NPCM750x I2C bus driver support only master mode.

Tomer Maimon (2):
dt-binding: i2c: document NPCM7xx I2C bus DT bindings
i2c: npcm: add NPCM7xx I2C bus driver

 .../devicetree/bindings/i2c/i2c-npcm7xx.txt        |   23 +
 drivers/i2c/busses/Kconfig                         |   10 +
 drivers/i2c/busses/Makefile                        |    1 +
 drivers/i2c/busses/i2c-npcm7xx.c                   | 3512 ++++++++++++++++++++
 4 files changed, 3546 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/i2c/i2c-npcm7xx.txt
 create mode 100644 drivers/i2c/busses/i2c-npcm7xx.c
Signature · 1 line
2.14.1
author maintainer
#1 lore raw

PATCH 1/2 dt-binding: i2c: document NPCM7xx I2C bus DT bindings

Added device tree binding documentation for
Nuvoton NPCM7xx I2C bus.

---
 .../devicetree/bindings/i2c/i2c-npcm7xx.txt        | 23 ++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/i2c/i2c-npcm7xx.txt
Documentation/devicetree/bindings/i2c/i2c-npcm7xx.txt new file +23 -0
new file mode 100644
index 000000000000..513584d33cab
@@ -0,0 +1,23 @@
+Nuvoton NPCM7XX I2C bus
+
+The NPCM750x includes sixteen I2C busses
+
+Required properties:
+- compatible      : "nuvoton,npcm750-i2c-bus" for Poleg NPCM750.
+- reg             : Offset and length of the register set for the device.
+- interrupts      : Contain the I2C interrupt with flags for falling edge.
+- clocks          : phandle of I2C reference clock.
+
+Optional:
+- bus-frequency   : Contain the I2C bus frequency,
+					the defualt I2C bus frequency is 100000.
+
+Example:
+
+i2c0: i2c-bus@f0080000 {
+	reg = <0xf0080000 0x1000>;
+	compatible = "nuvoton,npcm750-i2c-bus";
+	clocks = <&clk NPCM7XX_CLK_APB2>;
+	bus-frequency = <100000>;
+	interrupts = <0 64 4>;
+};
Signature · 1 line
2.14.1
author maintainer
#2 lore raw

PATCH 2/2 i2c: npcm: add NPCM7xx I2C bus driver

In reply to Tomer Maimon

Add Nuvoton BMC NPCM7xx I2C bus driver.

---
 drivers/i2c/busses/Kconfig       |   10 +
 drivers/i2c/busses/Makefile      |    1 +
 drivers/i2c/busses/i2c-npcm7xx.c | 3512 ++++++++++++++++++++++++++++++++++++++
 3 files changed, 3523 insertions(+)
 create mode 100644 drivers/i2c/busses/i2c-npcm7xx.c
drivers/i2c/busses/Kconfig +10 -0
index 65fa29591d21..5971789814df 100644
@@ -728,6 +728,16 @@ config I2C_NOMADIK
 	  I2C interface from ST-Ericsson's Nomadik and Ux500 architectures,
 	  as well as the STA2X11 PCIe I/O HUB.
 
+config I2C_NPCM7XX
+	tristate "Nuvoton I2C Controller"
+	depends on ARCH_NPCM7XX
+	help
+	  If you say yes to this option, support will be included for the
+	  Nuvoton I2C controller.
+
+	  This driver can also be built as a module.  If so, the module
+	  will be called i2c-npcm7xx.
+
 config I2C_OCORES
 	tristate "OpenCores I2C Controller"
 	help
drivers/i2c/busses/Makefile +1 -0
index 1b2fc815a4d8..80acad9903ff 100644
@@ -72,6 +72,7 @@ obj-$(CONFIG_I2C_MT65XX)	+= i2c-mt65xx.o
 obj-$(CONFIG_I2C_MV64XXX)	+= i2c-mv64xxx.o
 obj-$(CONFIG_I2C_MXS)		+= i2c-mxs.o
 obj-$(CONFIG_I2C_NOMADIK)	+= i2c-nomadik.o
+obj-$(CONFIG_I2C_NPCM7XX)	+= i2c-npcm7xx.o
 obj-$(CONFIG_I2C_OCORES)	+= i2c-ocores.o
 obj-$(CONFIG_I2C_OMAP)		+= i2c-omap.o
 obj-$(CONFIG_I2C_PASEMI)	+= i2c-pasemi.o
drivers/i2c/busses/i2c-npcm7xx.c new file +3512 -0

2,977 lines not on this page · raw message

The rest of this diff is not shown. View the raw message.

Signature · 1 line
2.14.1

Part of the diff is not shown here. View the raw message.