From: Frank Wunderlich <frank-w@public-files.de>
To: linux-mediatek@lists.infradead.org
Cc: Frank Wunderlich <frank-w@public-files.de>,
devicetree@vger.kernel.org,
"linux-arm-kernel @ lists . infradead . org Alessandro Zummo"
<a.zummo@towertech.it>,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
Eddie Huang <eddie.huang@mediatek.com>,
Josef Friedl <josef.friedl@speed.at>,
Lee Jones <lee.jones@linaro.org>,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org,
linux-rtc@vger.kernel.org, Mark Rutland <mark.rutland@arm.com>,
Matthias Brugger <matthias.bgg@gmail.com>,
Rob Herring <robh+dt@kernel.org>,
Sean Wang <sean.wang@mediatek.com>,
Sebastian Reichel <sre@kernel.org>,
"Tianping Fang" <tianping.fang@mediatek.com>
Subject: [PATCH v6 05/13] rtc: mt6397: move some common definitions into rtc.h
Date: Sun, 18 Aug 2019 15:56:03 +0200 [thread overview]
Message-ID: <20190818135611.7776-6-frank-w@public-files.de> (raw)
In-Reply-To: <20190818135611.7776-1-frank-w@public-files.de>
From: Josef Friedl <josef.friedl@speed.at>
move code to separate header-file to reuse definitions later
in poweroff-driver (drivers/power/reset/mt6323-poweroff.c)
Suggested-by: Frank Wunderlich <frank-w@public-files.de>
Signed-off-by: Josef Friedl <josef.friedl@speed.at>
Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
---
changes since v5: none
changes since v4: none
changes since v3: none
changes since v2: add missing commit-message
---
drivers/rtc/rtc-mt6397.c | 55 +-------------------------
include/linux/mfd/mt6397/rtc.h | 71 ++++++++++++++++++++++++++++++++++
2 files changed, 72 insertions(+), 54 deletions(-)
create mode 100644 include/linux/mfd/mt6397/rtc.h
diff --git a/drivers/rtc/rtc-mt6397.c b/drivers/rtc/rtc-mt6397.c
index b46ed4dc7015..c08ee5edf865 100644
--- a/drivers/rtc/rtc-mt6397.c
+++ b/drivers/rtc/rtc-mt6397.c
@@ -9,60 +9,7 @@
#include <linux/module.h>
#include <linux/regmap.h>
#include <linux/rtc.h>
-#include <linux/irqdomain.h>
-#include <linux/platform_device.h>
-#include <linux/of_address.h>
-#include <linux/of_irq.h>
-#include <linux/io.h>
-#include <linux/mfd/mt6397/core.h>
-
-#define RTC_BBPU 0x0000
-#define RTC_BBPU_CBUSY BIT(6)
-
-#define RTC_WRTGR 0x003c
-
-#define RTC_IRQ_STA 0x0002
-#define RTC_IRQ_STA_AL BIT(0)
-#define RTC_IRQ_STA_LP BIT(3)
-
-#define RTC_IRQ_EN 0x0004
-#define RTC_IRQ_EN_AL BIT(0)
-#define RTC_IRQ_EN_ONESHOT BIT(2)
-#define RTC_IRQ_EN_LP BIT(3)
-#define RTC_IRQ_EN_ONESHOT_AL (RTC_IRQ_EN_ONESHOT | RTC_IRQ_EN_AL)
-
-#define RTC_AL_MASK 0x0008
-#define RTC_AL_MASK_DOW BIT(4)
-
-#define RTC_TC_SEC 0x000a
-/* Min, Hour, Dom... register offset to RTC_TC_SEC */
-#define RTC_OFFSET_SEC 0
-#define RTC_OFFSET_MIN 1
-#define RTC_OFFSET_HOUR 2
-#define RTC_OFFSET_DOM 3
-#define RTC_OFFSET_DOW 4
-#define RTC_OFFSET_MTH 5
-#define RTC_OFFSET_YEAR 6
-#define RTC_OFFSET_COUNT 7
-
-#define RTC_AL_SEC 0x0018
-
-#define RTC_PDN2 0x002e
-#define RTC_PDN2_PWRON_ALARM BIT(4)
-
-#define RTC_MIN_YEAR 1968
-#define RTC_BASE_YEAR 1900
-#define RTC_NUM_YEARS 128
-#define RTC_MIN_YEAR_OFFSET (RTC_MIN_YEAR - RTC_BASE_YEAR)
-
-struct mt6397_rtc {
- struct device *dev;
- struct rtc_device *rtc_dev;
- struct mutex lock;
- struct regmap *regmap;
- int irq;
- u32 addr_base;
-};
+#include <linux/mfd/mt6397/rtc.h>
static int mtk_rtc_write_trigger(struct mt6397_rtc *rtc)
{
diff --git a/include/linux/mfd/mt6397/rtc.h b/include/linux/mfd/mt6397/rtc.h
new file mode 100644
index 000000000000..b702c29e8c74
--- /dev/null
+++ b/include/linux/mfd/mt6397/rtc.h
@@ -0,0 +1,71 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Copyright (C) 2014-2018 MediaTek Inc.
+ *
+ * Author: Tianping.Fang <tianping.fang@mediatek.com>
+ * Sean Wang <sean.wang@mediatek.com>
+ */
+
+#ifndef _LINUX_MFD_MT6397_RTC_H_
+#define _LINUX_MFD_MT6397_RTC_H_
+
+#include <linux/jiffies.h>
+#include <linux/mutex.h>
+#include <linux/regmap.h>
+#include <linux/rtc.h>
+
+#define RTC_BBPU 0x0000
+#define RTC_BBPU_CBUSY BIT(6)
+#define RTC_BBPU_KEY (0x43 << 8)
+
+#define RTC_WRTGR 0x003c
+
+#define RTC_IRQ_STA 0x0002
+#define RTC_IRQ_STA_AL BIT(0)
+#define RTC_IRQ_STA_LP BIT(3)
+
+#define RTC_IRQ_EN 0x0004
+#define RTC_IRQ_EN_AL BIT(0)
+#define RTC_IRQ_EN_ONESHOT BIT(2)
+#define RTC_IRQ_EN_LP BIT(3)
+#define RTC_IRQ_EN_ONESHOT_AL (RTC_IRQ_EN_ONESHOT | RTC_IRQ_EN_AL)
+
+#define RTC_AL_MASK 0x0008
+#define RTC_AL_MASK_DOW BIT(4)
+
+#define RTC_TC_SEC 0x000a
+/* Min, Hour, Dom... register offset to RTC_TC_SEC */
+#define RTC_OFFSET_SEC 0
+#define RTC_OFFSET_MIN 1
+#define RTC_OFFSET_HOUR 2
+#define RTC_OFFSET_DOM 3
+#define RTC_OFFSET_DOW 4
+#define RTC_OFFSET_MTH 5
+#define RTC_OFFSET_YEAR 6
+#define RTC_OFFSET_COUNT 7
+
+#define RTC_AL_SEC 0x0018
+
+#define RTC_PDN2 0x002e
+#define RTC_PDN2_PWRON_ALARM BIT(4)
+
+#define RTC_MIN_YEAR 1968
+#define RTC_BASE_YEAR 1900
+#define RTC_NUM_YEARS 128
+#define RTC_MIN_YEAR_OFFSET (RTC_MIN_YEAR - RTC_BASE_YEAR)
+
+#define MTK_RTC_POLL_DELAY_US 10
+#define MTK_RTC_POLL_TIMEOUT (jiffies_to_usecs(HZ))
+
+struct mt6397_rtc {
+ struct device *dev;
+ struct rtc_device *rtc_dev;
+
+ /* Protect register access from multiple tasks */
+ struct mutex lock;
+ struct regmap *regmap;
+ int irq;
+ u32 addr_base;
+};
+
+#endif /* _LINUX_MFD_MT6397_RTC_H_ */
--
2.17.1
next prev parent reply other threads:[~2019-08-18 14:05 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-18 13:55 [PATCH v6 00/13] implement poweroff for mt6323 / bpi-r2 Frank Wunderlich
2019-08-18 13:55 ` [PATCH v6 01/13] dt-bindings: mfd: mediatek: mt6397: change to relative paths Frank Wunderlich
2019-08-27 16:33 ` Rob Herring
2019-09-02 9:43 ` Lee Jones
2019-08-18 13:56 ` [PATCH v6 02/13] dt-bindings: mfd: mediatek: update rtc to include mt6323 Frank Wunderlich
2019-08-27 16:46 ` Rob Herring
2019-09-02 9:44 ` Lee Jones
2019-08-18 13:56 ` [PATCH v6 03/13] dt-bindings: mfd: mediatek: add mt6323 power-controller Frank Wunderlich
2019-08-27 16:46 ` Rob Herring
2019-09-02 9:44 ` Lee Jones
2019-08-18 13:56 ` [PATCH v6 04/13] dt-bindings: rtc: mediatek: add missing mt6397 rtc Frank Wunderlich
2019-08-27 16:47 ` Rob Herring
2019-08-18 13:56 ` Frank Wunderlich [this message]
2019-08-20 19:48 ` [PATCH v6 05/13] rtc: mt6397: move some common definitions into rtc.h Alexandre Belloni
2019-09-02 9:47 ` Lee Jones
2019-08-18 13:56 ` [PATCH v6 06/13] mfd: mt6397: add mutex include Frank Wunderlich
2019-09-02 9:49 ` Lee Jones
2019-08-18 13:56 ` [PATCH v6 07/13] rtc: mt6397: improvements of rtc driver Frank Wunderlich
2019-08-20 19:49 ` Alexandre Belloni
2019-08-18 13:56 ` [PATCH v6 08/13] mfd: mt6323: some improvements of mt6397-core Frank Wunderlich
2019-09-02 9:49 ` Lee Jones
2019-08-18 13:56 ` [PATCH v6 09/13] rtc: mt6397: add compatible for mt6323 Frank Wunderlich
2019-08-20 19:49 ` Alexandre Belloni
2019-08-18 13:56 ` [PATCH v6 10/13] mfd: mt6323: add mt6323 rtc+pwrc Frank Wunderlich
2019-09-02 9:50 ` Lee Jones
2019-08-18 13:56 ` [PATCH v6 11/13] power: reset: add driver for mt6323 poweroff Frank Wunderlich
2019-09-01 20:11 ` Sebastian Reichel
2019-08-18 13:56 ` [PATCH v6 12/13] MAINTAINERS: add Mediatek shutdown drivers Frank Wunderlich
2019-09-01 20:12 ` Sebastian Reichel
2019-08-18 13:56 ` [PATCH v6 13/13] arm: dts: mt6323: add keys, power-controller, rtc and codec Frank Wunderlich
2019-08-18 14:30 ` [PATCH v6 00/13] implement poweroff for mt6323 / bpi-r2 Frank Wunderlich
2019-09-06 13:06 ` Frank Wunderlich
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=20190818135611.7776-6-frank-w@public-files.de \
--to=frank-w@public-files.de \
--cc=a.zummo@towertech.it \
--cc=alexandre.belloni@bootlin.com \
--cc=devicetree@vger.kernel.org \
--cc=eddie.huang@mediatek.com \
--cc=josef.friedl@speed.at \
--cc=lee.jones@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-pm@vger.kernel.org \
--cc=linux-rtc@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=matthias.bgg@gmail.com \
--cc=robh+dt@kernel.org \
--cc=sean.wang@mediatek.com \
--cc=sre@kernel.org \
--cc=tianping.fang@mediatek.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).