devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Felipe Balbi <balbi@ti.com>
To: Tony Lindgren <tony@atomide.com>,
	Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Samuel Ortiz <sameo@linux.intel.com>,
	Lee Jones <lee.jones@linaro.org>
Cc: Linux OMAP Mailing List <linux-omap@vger.kernel.org>,
	linux-input@vger.kernel.org, devicetree@vger.kernel.org,
	Linux ARM Kernel Mailing List
	<linux-arm-kernel@lists.infradead.org>,
	Felipe Balbi <balbi@ti.com>,
	stable@vger.kernel.org, Keerthy <j-keerthy@ti.com>
Subject: [PATCH 1/5] mfd: tps65218: make INT[12] and STATUS registers volatile
Date: Fri, 26 Dec 2014 13:28:20 -0600	[thread overview]
Message-ID: <1419622104-25812-2-git-send-email-balbi@ti.com> (raw)
In-Reply-To: <1419622104-25812-1-git-send-email-balbi@ti.com>

STATUS register can be modified by the HW, so we
should bypass cache because of that.

In the case of INT[12] registers, they are the ones
that actually clear the IRQ source at the time they
are read. If we rely on the cache for them, we will
never be able to clear the interrupt, which will cause
our IRQ line to be disabled due to IRQ throttling.

Fixes: 44b4dc6 mfd: tps65218: Add driver for the TPS65218 PMIC
Cc: <stable@vger.kernel.org> # v3.15+
Cc: Keerthy <j-keerthy@ti.com>
Cc: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Felipe Balbi <balbi@ti.com>
---
 drivers/mfd/tps65218.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/drivers/mfd/tps65218.c b/drivers/mfd/tps65218.c
index 0d256cb..2243f75 100644
--- a/drivers/mfd/tps65218.c
+++ b/drivers/mfd/tps65218.c
@@ -125,10 +125,21 @@ int tps65218_clear_bits(struct tps65218 *tps, unsigned int reg,
 }
 EXPORT_SYMBOL_GPL(tps65218_clear_bits);
 
+static const struct regmap_range tps65218_yes_ranges[] = {
+	regmap_reg_range(TPS65218_REG_INT1, TPS65218_REG_INT2),
+	regmap_reg_range(TPS65218_REG_STATUS, TPS65218_REG_STATUS),
+};
+
+static const struct regmap_access_table tps65218_volatile_table = {
+	.yes_ranges = tps65218_yes_ranges,
+	.n_yes_ranges = ARRAY_SIZE(tps65218_yes_ranges),
+};
+
 static struct regmap_config tps65218_regmap_config = {
 	.reg_bits = 8,
 	.val_bits = 8,
 	.cache_type = REGCACHE_RBTREE,
+	.volatile_table = &tps65218_volatile_table,
 };
 
 static const struct regmap_irq tps65218_irqs[] = {
-- 
2.2.0


  reply	other threads:[~2014-12-26 19:28 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-26 19:28 [PATCH 0/5] AM437x SK: Add power-button support Felipe Balbi
2014-12-26 19:28 ` Felipe Balbi [this message]
     [not found]   ` <1419622104-25812-2-git-send-email-balbi-l0cyMroinI0@public.gmane.org>
2015-01-06 17:37     ` [PATCH 1/5] mfd: tps65218: make INT[12] and STATUS registers volatile Felipe Balbi
2015-01-08 16:25       ` Felipe Balbi
2015-01-12 16:46         ` Felipe Balbi
2015-01-14 17:07           ` Tony Lindgren
2015-01-16 22:57             ` Felipe Balbi
2015-01-18  9:52   ` Lee Jones
2015-01-19 14:41     ` Felipe Balbi
2014-12-26 19:28 ` [PATCH 2/5] mfd: tps65218: make INT1 our status_base register Felipe Balbi
2015-01-06 17:37   ` Felipe Balbi
2015-01-18  9:52   ` Lee Jones
2014-12-26 19:28 ` [PATCH 3/5] input: misc: add tps65218 power button driver Felipe Balbi
2014-12-26 19:33   ` Felipe Balbi
2014-12-26 23:41   ` Dmitry Torokhov
2014-12-26 19:28 ` [PATCH 4/5] arm: boot: dts: am437x-sk: add power button binding Felipe Balbi
2015-01-08  0:09   ` Tony Lindgren
2014-12-26 19:28 ` [PATCH 5/5] arm: omap2plus_defconfig: enable TPS65218 power button Felipe Balbi
2015-01-08  0:55   ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1419622104-25812-2-git-send-email-balbi@ti.com \
    --to=balbi@ti.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.torokhov@gmail.com \
    --cc=j-keerthy@ti.com \
    --cc=lee.jones@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=sameo@linux.intel.com \
    --cc=stable@vger.kernel.org \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).