{"id":1213076,"url":"http://patchwork.ozlabs.org/api/covers/1213076/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/cover/cover.1576745635.git.matti.vaittinen@fi.rohmeurope.com/","project":{"id":42,"url":"http://patchwork.ozlabs.org/api/projects/42/?format=json","name":"Linux GPIO development","link_name":"linux-gpio","list_id":"linux-gpio.vger.kernel.org","list_email":"linux-gpio@vger.kernel.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<cover.1576745635.git.matti.vaittinen@fi.rohmeurope.com>","list_archive_url":null,"date":"2019-12-19T09:44:08","name":"[v7,00/12] Support ROHM BD71828 PMIC","submitter":{"id":74146,"url":"http://patchwork.ozlabs.org/api/people/74146/?format=json","name":"Matti Vaittinen","email":"matti.vaittinen@fi.rohmeurope.com"},"mbox":"http://patchwork.ozlabs.org/project/linux-gpio/cover/cover.1576745635.git.matti.vaittinen@fi.rohmeurope.com/mbox/","series":[{"id":149534,"url":"http://patchwork.ozlabs.org/api/series/149534/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/list/?series=149534","date":"2019-12-19T09:44:08","name":"Support ROHM BD71828 PMIC","version":7,"mbox":"http://patchwork.ozlabs.org/series/149534/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/covers/1213076/comments/","headers":{"Return-Path":"<linux-gpio-owner@vger.kernel.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org; spf=none (no SPF record)\n\tsmtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67;\n\thelo=vger.kernel.org;\n\tenvelope-from=linux-gpio-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dmarc=none (p=none dis=none)\n\theader.from=fi.rohmeurope.com"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 47dn5k5NJpz9sR0\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 19 Dec 2019 20:44:26 +1100 (AEDT)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1726701AbfLSJoV (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n\tThu, 19 Dec 2019 04:44:21 -0500","from mail-lf1-f68.google.com ([209.85.167.68]:46656 \"EHLO\n\tmail-lf1-f68.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1726609AbfLSJoV (ORCPT\n\t<rfc822; linux-gpio@vger.kernel.org>); Thu, 19 Dec 2019 04:44:21 -0500","by mail-lf1-f68.google.com with SMTP id f15so3836734lfl.13;\n\tThu, 19 Dec 2019 01:44:18 -0800 (PST)","from localhost.localdomain\n\t(dyt4gctb359myxd0pkwmt-4.rev.dnainternet.fi.\n\t[2001:14bb:430:5140:37cf:5409:8fcc:4495])\n\tby smtp.gmail.com with ESMTPSA id\n\te20sm2472778ljl.59.2019.12.19.01.44.15\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tThu, 19 Dec 2019 01:44:16 -0800 (PST)"],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:mime-version\n\t:content-disposition:user-agent;\n\tbh=Pigykuj3FqSHxhPUFlwgdyDtB15Fr1ua0h8Tg1lOV6k=;\n\tb=Ak5SIDzl8M1jX3KST5jRRT3Gz2+3V3U1OqdYYfDrG+0xVUvvUOh/3B9UONKGXXyBLw\n\t8U1c6y7NJQKg1el8kMvl9QVpr+d3BgLhMWY9qGqlGxUPtCB/cOVOJJfNyVfwCmqIeJaY\n\t1enH7zBwfMlikSY5ZGU6P1bGQqf1c43Rt5hZFearzPloigYfOC2iGZrxHHyFVmjsmxua\n\t6Xj09ccIMZLwPdNYSw2bGXSvYA5uRVT5QuLJyZwaruYieiR4UnQ5UMt1lfh93TVg5oEZ\n\tjbr+e78EckW90MWsiONWV3HehOaCv5abTpazIJtTTcXGrOOS5pXmQOcbswhQuZrnHylJ\n\tJUKw==","X-Gm-Message-State":"APjAAAU0bA4qONDrpbMhSF6v1CexqVEGHWmVRGhVEQoSuiS1JC78f0pc\n\t1eQcVk2PtDbFWlv6fFi0hsQ=","X-Google-Smtp-Source":"APXvYqzIIe4rAc74TIGLKMOANeb804N8SGchp3yxrW0ivjcLgc1ro4jWZBdh5JTSbPhuTfVS4bi1Zg==","X-Received":"by 2002:a19:f519:: with SMTP id j25mr4778087lfb.41.1576748657291;\n\tThu, 19 Dec 2019 01:44:17 -0800 (PST)","Date":"Thu, 19 Dec 2019 11:44:08 +0200","From":"Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>","To":"matti.vaittinen@fi.rohmeurope.com, mazziesaccount@gmail.com","Cc":"Jacek Anaszewski <jacek.anaszewski@gmail.com>,\n\tPavel Machek <pavel@ucw.cz>, Dan Murphy <dmurphy@ti.com>,\n\tRob Herring <robh+dt@kernel.org>, Mark Rutland <mark.rutland@arm.com>,\n\tLee Jones <lee.jones@linaro.org>,\n\tMichael Turquette <mturquette@baylibre.com>,\n\tStephen Boyd <sboyd@kernel.org>,\n\tLinus Walleij <linus.walleij@linaro.org>,\n\tBartosz Golaszewski <bgolaszewski@baylibre.com>,\n\tLiam Girdwood <lgirdwood@gmail.com>, Mark Brown <broonie@kernel.org>,\n\tAlessandro Zummo <a.zummo@towertech.it>,\n\tAlexandre Belloni <alexandre.belloni@bootlin.com>,\n\tlinux-leds@vger.kernel.org, devicetree@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org, linux-clk@vger.kernel.org,\n\tlinux-gpio@vger.kernel.org, linux-rtc@vger.kernel.org","Subject":"[PATCH v7 00/12] Support ROHM BD71828 PMIC","Message-ID":"<cover.1576745635.git.matti.vaittinen@fi.rohmeurope.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=us-ascii","Content-Disposition":"inline","User-Agent":"Mutt/1.12.1 (2019-06-15)","Sender":"linux-gpio-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<linux-gpio.vger.kernel.org>","X-Mailing-List":"linux-gpio@vger.kernel.org"},"content":"Patch series introducing support for ROHM BD71828 PMIC\n\nROHM BD71828 is a power management IC containing 7 bucks and 7 LDOs. All\nregulators can be controlled individually via I2C. Bucks 1,2,6 and\n7 can also be assigned to a \"regulator group\" controlled by run-levels.\nEg. Run level specific voltages and enable/disable statuses for each of\nthese bucks can be set via register interface. The buck run-level group\nassignment (selection if buck is to be controlled individually or via\nrun-levels) can be changed at run-time via I2C.\n\nThis patch series brings only the basic support for controlling\nregulators individually via I2C.\n\nIn addition to the bucks and LDOs there are:\n\n- The usual clk gate\n- 4 IO pins (mostly usable as GPO or tied to specific purpose)\n- power button support\n- RTC\n- two LEDs\n- battery charger\n- HALL sensor input\n\nThis patch series adds support to regulators, clk, RTC, GPIOs and LEDs.\n\nPower-supply driver for charger is not included in this series.\n\nThe series also adds LED DT-node lookup based on node name or given\nproperty name/value pair in LED core. It also adds generic default-state\nand default-trigger property handling to LED core. Follow-up patches\nsimplifying few other LED drivers should follow.\n\nChangelog v7:\n  - Rebased on top of v5.5-rc2\n  - Dropped already applied patches\n    - basic regulator support (in regulator tree now)\n    - regulator dt-bindings (in regulator tree now)\n    - gpio devm function documentation (in GPIO tree now)\n  - Dropped new devm-variant of gpio_array getting for MFD sub-devices who\n    have consumer information in parent DT node as gpio consumer was\n    dropped from the series\n  - removed extra line-breaks from MFD driver and Makefile\n  - fixed RTC patch subject line (added missing colon)\n  - included a patch which adds compatible for ROHM BD71850 PMIC\n\nChangelog v6:\n  Rebased on top of v5.5-rc1\n  LED core:\n    - Do new fw-node look-up only if the new match data is given. That\n      way behaviour for existing drivers is not changed\n    - Handle generic LED properties by core only if explisitly requested\n      in init-data. That way behaviour for existing drivers is not changed\n      until they are verified to work.\n  BD71828 LEDs:\n    - Fix module loading by adding \"dummy\" of_device_id table.\n  DT bindings:\n    All:\n    - Remove regulator run-level properties as run-level support was\n      dropped for now.\n    - Change SPDX to dual lisence\n    LED:\n    - added select: false\n    - replace oneOf + const by enum\n    Regulator:\n    - remove forgotten comments\n    - comment indenting\n    MFD:\n    - remove unnecessary descriptions\n  Regulators:\n    - Dropped patch 12 with run-level controls\n    - Dropped unnecessary ramp_delay_supported() - ram_delay ops were\n      already only filled for DVS bucks.\n  GPIO:\n    - rename internal function.\n  RTC:\n    - Added missing blank line\n  \nChangelog v5:\n  Only LED patch (patch 15) changed, rest as in v4.\n  LED:\n    - Fixed issues reported by Dan Carpenter and kbuild-bot static\n      analysis.\nChangelog v4 (first non RFC):\n  General:\n    - Changed subdevice loading and chip version identification to use\n      platform ID.\n    - License identifiers changed to GPL-2.0-only\n  MFD:\n    - Styling fixes mostly\n  DT-Bindings:\n    - a few more checks as suggested by Rob Herring.\n    - Order of DT patches changed.\n    - me as maintainer\n    - standard units to new properties (microvolts, ohms)\n    - runlevel values in an array\n  LED:\n    - BD71828 driver added (back)\n      - Added DT support\n    - Added LED DT node lookup in led framework when init_data is given\n      with DT node match information.\n    - Added common property parsing for default-state and\n      default-trigger.\n  Regulators:\n    - dropped sysfs interfaces\n    - fixed module unload/reload by binding gpio consumer information to\n      regulator device not to MFD.\n  GPIO:\n    - Added devm_gpiod_get_parent_array\n    - added few missing devm functions to documentation\n\nChangelog v3:\n  DT-Bindings:\n    - yamlify\n    - add LED binding doc\n  CLK:\n    - Move clk register definitions from MFD headers to clk driver\n  GPIO:\n    - Add generic direction define and use it.\n  LED:\n    - Drop LED driver from the series (for now).\n\nChangelog v2: Mainly RTC and GPIO fixes suggested by Alexandre and Bartosz\n  General:\n    -Patch ordering changed to provide dt binding documents right after the\n     MFD core.\n  DT-Bindings for regulators (Patch 3)\n    -Fix typo in PMIC model number\n  RTC (patch 11)\n    -Reverted renaming in order to reduce patch size.\n    -Reworded commit message\n  BD71828 regulator (patch 7)\n    -Add MODULE_ALIAS\n  GPIO (patch 12)\n    -Remove file-name from comment\n    -prefix IN and OUT defines with chip type\n    -improved documentation for the INPUT only pin.\n    -removed empty left-over function\n    -removed unnecessary #ifdef CONFIG_OF_GPIO\n    -removed unnecessary error print\n    -Add MODULE_ALIAS\n\nPatch 1:\n        dt-bindings for LEDs on BD71828 PMIC\nPatch 2:\n\tdt-bindings for BD71828 PMIC\nPatch 3:\n\tConvert rohm PMICs with common sub-devices to use platform_\n\tdevice_id to match MFD sub-devices\nPatch 4:\n\tAdd compatible for BD71850\nPatch 5:\n        BD71828 MFD core.\nPatch 6:\n\tPower button support using GPIO keys.\nPatch 7:\n        CLK gate support using existing clk-bd718x7\nPatch 8:\n        Split existing bd718x7 regulator driver to generic ROHM dt\n        parsing portion (used by more than one ROHM drivers) and\n        bd718x8 specific parts\nPatch 9:\n        Support BD71828 RTC block using BD70528 RTC driver\nPatch 10:\n        Allow control of GP(I)O pins on BD71828 via GPIO subsystem\nPatch 11:\n\tAdd LED node lookup and common LED binding parsing support\n\tto LED class/core\nPatch 12:\n        Support toggling the LEDs on BD71828.\n\nThis patch series is based on v5.5-rc2\n\n---\n\nMatti Vaittinen (12):\n  dt-bindings: leds: ROHM BD71282 PMIC LED driver\n  dt-bindings: mfd: Document ROHM BD71828 bindings\n  mfd: rohm PMICs - use platform_device_id to match MFD sub-devices\n  mfd: bd718x7: Add compatible for BD71850\n  mfd: bd71828: Support ROHM BD71828 PMIC - core\n  mfd: input: bd71828: Add power-key support\n  clk: bd718x7: Support ROHM BD71828 clk block\n  regulator: bd718x7: Split driver to common and bd718x7 specific parts\n  rtc: bd70528: add BD71828 support\n  gpio: bd71828: Initial support for ROHM BD71828 PMIC GPIOs\n  leds: Add common LED binding parsing support to LED class/core\n  led: bd71828: Support LED outputs on ROHM BD71828 PMIC\n\n .../bindings/leds/rohm,bd71828-leds.yaml      |  52 +++\n .../bindings/mfd/rohm,bd71828-pmic.yaml       | 193 ++++++++\n drivers/clk/Kconfig                           |   6 +-\n drivers/clk/clk-bd718x7.c                     |  50 ++-\n drivers/gpio/Kconfig                          |  12 +\n drivers/gpio/Makefile                         |   1 +\n drivers/gpio/gpio-bd71828.c                   | 159 +++++++\n drivers/leds/Kconfig                          |  10 +\n drivers/leds/Makefile                         |   1 +\n drivers/leds/led-class.c                      |  99 +++-\n drivers/leds/led-core.c                       | 258 +++++++++--\n drivers/leds/leds-bd71828.c                   | 118 +++++\n drivers/mfd/Kconfig                           |  15 +\n drivers/mfd/Makefile                          |   1 +\n drivers/mfd/rohm-bd70528.c                    |   3 +-\n drivers/mfd/rohm-bd71828.c                    | 344 ++++++++++++++\n drivers/mfd/rohm-bd718x7.c                    |  43 +-\n drivers/regulator/Kconfig                     |   4 +\n drivers/regulator/Makefile                    |   1 +\n drivers/regulator/bd718x7-regulator.c         | 200 +++------\n drivers/regulator/rohm-regulator.c            |  95 ++++\n drivers/rtc/Kconfig                           |   3 +-\n drivers/rtc/rtc-bd70528.c                     | 168 ++++++-\n include/linux/leds.h                          |  94 +++-\n include/linux/mfd/rohm-bd70528.h              |  19 +-\n include/linux/mfd/rohm-bd71828.h              | 423 ++++++++++++++++++\n include/linux/mfd/rohm-bd718x7.h              |   6 -\n include/linux/mfd/rohm-generic.h              |  48 +-\n include/linux/mfd/rohm-shared.h               |  27 ++\n 29 files changed, 2190 insertions(+), 263 deletions(-)\n create mode 100644 Documentation/devicetree/bindings/leds/rohm,bd71828-leds.yaml\n create mode 100644 Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml\n create mode 100644 drivers/gpio/gpio-bd71828.c\n create mode 100644 drivers/leds/leds-bd71828.c\n create mode 100644 drivers/mfd/rohm-bd71828.c\n create mode 100644 drivers/regulator/rohm-regulator.c\n create mode 100644 include/linux/mfd/rohm-bd71828.h\n create mode 100644 include/linux/mfd/rohm-shared.h\n\n\nbase-commit: d1eef1c619749b2a57e514a3fa67d9a516ffa919"}