linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/3] TPS68470 PMIC drivers
@ 2017-07-19 23:20 Rajmohan Mani
  2017-07-19 23:20 ` [PATCH v4 1/3] mfd: Add new mfd device TPS68470 Rajmohan Mani
                   ` (2 more replies)
  0 siblings, 3 replies; 17+ messages in thread
From: Rajmohan Mani @ 2017-07-19 23:20 UTC (permalink / raw)
  To: linux-kernel, linux-gpio, linux-acpi
  Cc: Lee Jones, Linus Walleij, Alexandre Courbot, Rafael J. Wysocki,
	Len Brown, sakari.ailus, Andy Shevchenko, Rajmohan Mani

This is the patch series for TPS68470 PMIC that works as a camera PMIC.

The patch series provide the following 3 drivers, to help configure the voltage regulators, clocks and GPIOs provided by the TPS68470 PMIC, to be able to use the camera sensors connected to this PMIC.

TPS68470 MFD driver:
This is the multi function driver that initializes the TPS68470 PMIC and supports the GPIO and Op Region functions.

TPS68470 GPIO driver:
This is the PMIC GPIO driver that will be used by the OS GPIO layer, when the BIOS / firmware triggered GPIO access is done.

TPS68470 Op Region driver:
This is the driver that will be invoked, when the BIOS / firmware configures the voltage / clock for the sensors / vcm devices connected to the PMIC.

---

Update on 2 GPIO chips implementation over 1:
	- Attempted to implement 2 GPIO chips, but ran into couple of
	  issues in the kernel, so we couldn't get it to work.
	- It was decided to postpone this change, since it is not
	  critical
	  
Changes in v4:
	- MFD driver:
	- Removed board specific code and FIXME comment
	- Moved i2c.h include from tps68470.h to tps68470.c
	- Moved the TPS68470 REVID read code after PMIC reset
	- Fixed typo in debug error message (on failure of
	  devm_mfd_add_devices() )
	- Enhanced dependency on I2C by changing it to I2C=y
	  (to fix build errors if I2C is built as module
	   e.g tps68470.c:71: undefined reference to `__devm_regmap_init_i2c'
	       tps68470.c:117: undefined reference to `i2c_register_driver')
	- Removed most of the unused header file definitions
	- Moved devm_mfd_add_devices() after PMIC resett
	- Used probe_new() and removed i2c_device_id table
	  
	  The following patch from Andy is needed for the driver to be
	  probed.
	  http://marc.info/?l=linux-acpi&m=150030081523885&w=2	
	  
	- GPIO driver:
	- Added newline at the end of Kconfig description
	- Updated commit message about the descriptive
	  names for the GPIOs and the typical usage model
	  of the GPIO driver

	- Opregion driver:
	- Added dependency on MFD_TPS68470
	- Converted 2 liner into one line code

Changes in v3:
	- MFD driver:
	- Removed GPIO lookup table
	- Reverted to probe() for consistency
	- Addressed other comments from Andy

	- GPIO driver:
	- Removed the code that initializes the default values
	  of GPIOs to zeros
	- Used gpiochip_get_data() to access data inside the gpio_chip
 
Changes in v2:
	- MFD driver:
	- Removed tps68470_* wrappers around regmap_* calls
	- Removed "struct tps68470"
	- used devm_mfd_add_devices and removed mutex in mfd driver
	- Added reasoning about the need of having mfd driver
	  as bool/builtin

	- Opregion driver:
	- renamed opregion driver file / internal symbol names
	  with tps68470_pmic*
	- Made opregion driver tables as const
	- Removed unused *handler_context in common handler
	- Replaced "int" with "unsigned int"
	- Changed to WARN macro to dev_warn()
	- Destroyed mutex on error
	- Added reasoning about the need of having Opregion driver
	  as bool/builtin
	
	- GPIO driver:
	- Implemented get_direction() in the GPIO driver
	- Setup gpio_chip.names
	- Moved the GPIO lookup table code inside mfd driver
	- Added reasoning about the need of having GPIO driver
	  as bool/builtin

---

Rajmohan Mani (3):
  mfd: Add new mfd device TPS68470
  gpio: Add support for TPS68470 GPIOs
  ACPI / PMIC: Add TI PMIC TPS68470 operation region driver

 drivers/acpi/Kconfig              |  16 ++
 drivers/acpi/Makefile             |   2 +
 drivers/acpi/pmic/tps68470_pmic.c | 455 ++++++++++++++++++++++++++++++++++++++
 drivers/gpio/Kconfig              |  15 ++
 drivers/gpio/Makefile             |   1 +
 drivers/gpio/gpio-tps68470.c      | 174 +++++++++++++++
 drivers/mfd/Kconfig               |  18 ++
 drivers/mfd/Makefile              |   1 +
 drivers/mfd/tps68470.c            | 110 +++++++++
 include/linux/mfd/tps68470.h      |  97 ++++++++
 10 files changed, 889 insertions(+)
 create mode 100644 drivers/acpi/pmic/tps68470_pmic.c
 create mode 100644 drivers/gpio/gpio-tps68470.c
 create mode 100644 drivers/mfd/tps68470.c
 create mode 100644 include/linux/mfd/tps68470.h

-- 
1.9.1

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2017-07-28 23:49 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-19 23:20 [PATCH v4 0/3] TPS68470 PMIC drivers Rajmohan Mani
2017-07-19 23:20 ` [PATCH v4 1/3] mfd: Add new mfd device TPS68470 Rajmohan Mani
2017-07-20  9:03   ` Lee Jones
2017-07-21  0:57     ` Mani, Rajmohan
2017-07-25  9:10       ` Lee Jones
2017-07-25 10:29         ` Andy Shevchenko
2017-07-26  8:23           ` Lee Jones
2017-07-26 10:26             ` Andy Shevchenko
2017-07-28  0:30               ` Mani, Rajmohan
2017-07-28  9:16                 ` Andy Shevchenko
2017-07-28 23:48                   ` Mani, Rajmohan
2017-07-25 17:05         ` Mani, Rajmohan
2017-07-26  8:20           ` Lee Jones
2017-07-28 23:49             ` Mani, Rajmohan
2017-07-21 12:26     ` Mani, Rajmohan
2017-07-19 23:20 ` [PATCH v4 2/3] gpio: Add support for TPS68470 GPIOs Rajmohan Mani
2017-07-19 23:20 ` [PATCH v4 3/3] ACPI / PMIC: Add TI PMIC TPS68470 operation region driver Rajmohan Mani

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).