Commit a7d33296 authored by Anas Nashif's avatar Anas Nashif
Browse files

qmsi: i2c: use built-in qmsi driver



Change-Id: I2e650198117128cec79a64abcd2cc065b5f9804c
Signed-off-by: default avatarAnas Nashif <anas.nashif@intel.com>
parent 98c09140
Loading
Loading
Loading
Loading
+4 −29
Original line number Diff line number Diff line
@@ -150,33 +150,6 @@ config RTC_QMSI_IRQ_PRI

endif # RTC

if I2C

config I2C_DW
	def_bool y

if I2C_DW

config I2C_DW_0
        def_bool y

if I2C_DW_0

config I2C_DW_0_NAME
        default "I2C0"

config I2C_DW_0_IRQ_PRI
        default 0

config I2C_DW_0_DEFAULT_CFG
        default 0x12

config I2C_CLOCK_SPEED
        default 32

endif # I2C_DW_0

endif # I2C_DW

if GPIO

@@ -199,11 +172,13 @@ endif # GPIO_DW

endif # GPIO

if I2C
config I2C_QMSI
	def_bool y

if I2C_QMSI
config I2C_QMSI_0
	def_bool y
config I2C_QMSI_0_IRQ
	default 4
config I2C_QMSI_0_IRQ_PRI
	default 0
config I2C_QMSI_0_DEFAULT_CFG
+3 −39
Original line number Diff line number Diff line
@@ -131,47 +131,14 @@ endif # QMSI_DRIVERS
endif # GPIO

if I2C

config I2C_DW
	def_bool y

if I2C_DW

config I2C_DW_0
config I2C_QMSI
	def_bool y

if I2C_DW_0

config I2C_DW_0_NAME
        default "I2C0"
config I2C_DW_0_IRQ_PRI
	default 2

endif # I2C_DW_0

config I2C_DW_1
        def_bool y

if I2C_DW_1

config I2C_DW_1_NAME
        default "I2C1"
config I2C_DW_1_IRQ_PRI
	default 2

endif # I2C_DW_1

endif # I2C_DW

if I2C_QMSI

config I2C_QMSI_0
	def_bool y

if I2C_QMSI_0

config I2C_QMSI_0_IRQ
	default 0
config I2C_QMSI_0_IRQ_PRI
	default 2
config I2C_QMSI_0_DEFAULT_CFG
@@ -183,9 +150,6 @@ config I2C_QMSI_1
	def_bool y

if I2C_QMSI_1

config I2C_QMSI_1_IRQ
	default 1
config I2C_QMSI_1_IRQ_PRI
	default 2
config I2C_QMSI_1_DEFAULT_CFG
@@ -193,10 +157,10 @@ config I2C_QMSI_1_DEFAULT_CFG

endif # I2C_QMSI_1

endif # I2C_QMSI

endif # I2C



if CLOCK_CONTROL

config CLOCK_CONTROL_QUARK_SE
+2 −11
Original line number Diff line number Diff line
@@ -18,14 +18,13 @@

menuconfig I2C_QMSI
	bool "QMSI I2C driver"
	depends on QMSI_DRIVERS && I2C
	depends on I2C && QMSI
	default n
	help
	This option enable the QMSI I2C driver.

	This driver is simply a shim driver based on the I2C driver
	provided by the QMSI BSP. For more information about QMSI BSP
	see CONFIG_QMSI_DRIVERS.
	provided by the QMSI BSP.

config I2C_QMSI_0
	bool "Enable I2C_0 controller"
@@ -37,10 +36,6 @@ config I2C_QMSI_0_NAME
	depends on I2C_QMSI_0
	default "I2C0"

config I2C_QMSI_0_IRQ
	int "IRQ number from I2C_0 controller"
	depends on I2C_QMSI_0

config I2C_QMSI_0_IRQ_PRI
	int "Interrupt priority from I2C_0 controller"
	depends on I2C_QMSI_0
@@ -64,10 +59,6 @@ config I2C_QMSI_1_NAME
	depends on I2C_QMSI_1
	default "I2C1"

config I2C_QMSI_1_IRQ
	int "IRQ number from I2C_1 controller"
	depends on I2C_QMSI_1

config I2C_QMSI_1_IRQ_PRI
	int "Interrupt priority from I2C_1 controller"
	depends on I2C_QMSI_1
+4 −4
Original line number Diff line number Diff line
@@ -217,10 +217,10 @@ static int i2c_qmsi_init(struct device *dev)
		/* Register interrupt handler, unmask IRQ and route it
		 * to Lakemont core.
		 */
		IRQ_CONNECT(CONFIG_I2C_QMSI_0_IRQ,
		IRQ_CONNECT(QM_IRQ_I2C_0,
			    CONFIG_I2C_QMSI_0_IRQ_PRI, qm_i2c_0_isr, NULL,
			    (IOAPIC_LEVEL | IOAPIC_HIGH));
		irq_enable(CONFIG_I2C_QMSI_0_IRQ);
		irq_enable(QM_IRQ_I2C_0);
		QM_SCSS_INT->int_i2c_mst_0_mask &= ~BIT(0);

		clk_periph_enable(CLK_PERIPH_I2C_M0_REGISTER | CLK_PERIPH_CLK);
@@ -228,10 +228,10 @@ static int i2c_qmsi_init(struct device *dev)

#ifdef CONFIG_I2C_QMSI_1
	case QM_I2C_1:
		IRQ_CONNECT(CONFIG_I2C_QMSI_1_IRQ,
		IRQ_CONNECT(QM_IRQ_I2C_1,
			    CONFIG_I2C_QMSI_1_IRQ_PRI, qm_i2c_1_isr, NULL,
			    (IOAPIC_LEVEL | IOAPIC_HIGH));
		irq_enable(CONFIG_I2C_QMSI_1_IRQ);
		irq_enable(QM_IRQ_I2C_1);
		QM_SCSS_INT->int_i2c_mst_1_mask &= ~BIT(0);

		clk_periph_enable(CLK_PERIPH_I2C_M1_REGISTER | CLK_PERIPH_CLK);
+1 −0
Original line number Diff line number Diff line
obj-$(CONFIG_QMSI_BUILTIN) += drivers/qm_scss.o
obj-$(CONFIG_RTC_QMSI) += drivers/qm_rtc.o
obj-$(CONFIG_WDT_QMSI) += drivers/qm_wdt.o
obj-$(CONFIG_I2C_QMSI) += drivers/qm_i2c.o