Skip to contentSkip to conversation

gpio: sx150x: Add Semtech I2C sx150x gpio expander driver.

PATCH In review Gregory Bean 2 participants 3 messages Jul 22, 2010

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH v4 1/1 gpio: sx150x: Add Semtech I2C sx150x gpio expander driver.

Add support for Semtech SX150-series I2C GPIO expanders. Compatible models include:

8 bits: sx1508q
16 bits: sx1509q

---
 drivers/gpio/Kconfig       |   11 +
 drivers/gpio/Makefile      |    1 +
 drivers/gpio/sx150x.c      |  645 ++++++++++++++++++++++++++++++++++++++++++++
 include/linux/i2c/sx150x.h |   78 ++++++
 4 files changed, 735 insertions(+), 0 deletions(-)
 create mode 100644 drivers/gpio/sx150x.c
 create mode 100644 include/linux/i2c/sx150x.h
drivers/gpio/Kconfig +11 -0
index 7face91..f623953 100644
@@ -195,6 +195,17 @@ config GPIO_PCF857X
 	  This driver provides an in-kernel interface to those GPIOs using
 	  platform-neutral GPIO calls.
 
+config GPIO_SX150X
+	bool "Semtech SX150x I2C GPIO expander"
+	depends on I2C=y
+	default n
+	help
+	  Say yes here to provide support for Semtech SX150-series I2C
+	  GPIO expanders. Compatible models include:
+
+	  8 bits:  sx1508q
+	  16 bits: sx1509q
+
 config GPIO_TC35892
 	bool "TC35892 GPIOs"
 	depends on MFD_TC35892
drivers/gpio/Makefile +1 -0
index e53dcff..a69e060 100644
@@ -35,3 +35,4 @@ obj-$(CONFIG_GPIO_WM8994)	+= wm8994-gpio.o
 obj-$(CONFIG_GPIO_SCH)		+= sch_gpio.o
 obj-$(CONFIG_GPIO_RDC321X)	+= rdc321x-gpio.o
 obj-$(CONFIG_GPIO_JANZ_TTL)	+= janz-ttl.o
+obj-$(CONFIG_GPIO_SX150X)	+= sx150x.o
drivers/gpio/sx150x.c new file +645 -0

645 lines not on this page · raw message

include/linux/i2c/sx150x.h new file +78 -0

78 lines not on this page · raw message

Signature · 5 lines
1.7.0.4

--
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
#1 lore raw
Quoted 13 lines · On Thu, 22 Jul 2010 10:12:51 -0700 Gregory Bean wrote:
 drivers/gpio/Kconfig       |   11 +
 drivers/gpio/Makefile      |    1 +
 drivers/gpio/sx150x.c      |  645 ++++++++++++++++++++++++++++++++++++++++++++
 include/linux/i2c/sx150x.h |   78 ++++++
 4 files changed, 735 insertions(+), 0 deletions(-)
 create mode 100644 drivers/gpio/sx150x.c
 create mode 100644 include/linux/i2c/sx150x.h
drivers/gpio/Kconfig +0 -0
index 7face91..f623953 100644

drivers/gpio/Kconfig config GPIO_PCF857X · line 204

Quoted 10 lines
drivers/gpio/Kconfig +7 -0
@@ -195,6 +195,17 @@ config GPIO_PCF857X
 	  This driver provides an in-kernel interface to those GPIOs using
 	  platform-neutral GPIO calls.
 
+config GPIO_SX150X
+	bool "Semtech SX150x I2C GPIO expander"
+	depends on I2C=y
+	default n
+	help
+	  Say yes here to provide support for Semtech SX150-series I2C
+	  GPIO expanders. Compatible models include:

Just curious, not complaining, but why does this driver (and some others) need to be built-in instead of having the option of being built as a loadable module?

drivers/gpio/Kconfig config GPIO_PCF857X · line 211

Quoted 6 lines
drivers/gpio/Kconfig +3 -0
+	  8 bits:  sx1508q
+	  16 bits: sx1509q
+
 config GPIO_TC35892
 	bool "TC35892 GPIOs"
 	depends on MFD_TC35892

---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

author
#2 lore raw
Quoted 10 lines

drivers/gpio/Kconfig config GPIO_PCF857X · line 204

Quoted 6 lines
drivers/gpio/Kconfig +6 -0
+	bool "Semtech SX150x I2C GPIO expander"
+	depends on I2C=y
+	default n
+	help
+	  Say yes here to provide support for Semtech SX150-series I2C
+	  GPIO expanders. Compatible models include:

Just curious, not complaining, but why does this driver (and some others) need to be built-in instead of having the option of being built as a loadable module?

It's that way because it requires unexported symbols from genirq and I2C. If this driver is allowed to be a module, it can't find the unexported genirq symbols, and if I2C is allowed to be a module, then a bunch of i2c_smbus stuff can't be resolved...

Signature · 2 lines
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.