Received: by 2002:a25:c593:0:0:0:0:0 with SMTP id v141csp5469741ybe; Tue, 10 Sep 2019 04:18:37 -0700 (PDT) X-Google-Smtp-Source: APXvYqxY8ZCR6A55GoSQc1aW7mHNowyIcnBe0RJnb2J9oQmaJnVLBZcynh+E7l6zr8lnejUTgs+5 X-Received: by 2002:a50:e885:: with SMTP id f5mr29214716edn.163.1568114317884; Tue, 10 Sep 2019 04:18:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1568114317; cv=none; d=google.com; s=arc-20160816; b=kGBsik8Vhp9oeOjwkEnbYwcc+Qz8S9EWQqFHjg5/yUb0VY25IhbvffKqi5a7H5x4Zs EXdG/yA4P9myNwb/3SOVGurlu8FyiQkipHIna5+el5WzsMDo4YhkilnVOnlMswTTrHe+ rbR3NSH3rGTcI+hcWcWiMwM4Lt+ihGoOEKyDV/lKQerZQhS744XaLNqk78bHoREhEPxS T3p3lzvF7wCdBEVNNb9ZtHaboEBl1g/ES0uhH2CF64CLe0w+t/ZIKkN0ObkVTxCNraLR 1xz0ILljQ8Jhd3q/y/PhUKkPBqQv9YfppyKamXGDQsz4WuD8C2j4uT/tyDYKNxFrkINe F5rA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from; bh=5FXayrlAvildXcIbnyz+J4cdbl7VM5r4vRZrwv4EQdA=; b=CShtaUJP7n8hJcwrBVcskiUQEd2TC9JNSROMFBamemBc+2kLupZVi6QyMd164Cd9kk X2oTo9L6ZQ3yNFy8XfVzRp84GeryFoDD6LBG+xvXBgwQuzHEm+x96EHuzRTlroHdllWy 5dRedEcjslxKT7UATKP+s5RZDtqiKIadDFdG2+nKO/D7oOnDNk1dQFNUALaepZyeIco5 2/YLUj3y+gb1f0pFefffTPxgNE8ONVlvG/C5YUd4cNGBP8SEnYDgnrXz3T5yD7QcPfsr 5QIFf13AWz6DUDcmyIfDtz2IND5ZsqeP5uRmi3KRlfow5L3zrIO4OyVJwHX0JOuBLsWL WZ5A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d17si10616150eda.213.2019.09.10.04.17.50; Tue, 10 Sep 2019 04:18:37 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2406616AbfIJHOc (ORCPT + 99 others); Tue, 10 Sep 2019 03:14:32 -0400 Received: from mxwww.masterlogin.de ([95.129.51.220]:43462 "EHLO mxwww.masterlogin.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2404377AbfIJHOb (ORCPT ); Tue, 10 Sep 2019 03:14:31 -0400 Received: from mxout2.routing.net (unknown [192.168.10.82]) by new.mxwww.masterlogin.de (Postfix) with ESMTPS id 38F899632A; Tue, 10 Sep 2019 07:05:15 +0000 (UTC) Received: from mxbox2.masterlogin.de (unknown [192.168.10.253]) by mxout2.routing.net (Postfix) with ESMTP id 7EAB26496E; Tue, 10 Sep 2019 07:05:15 +0000 (UTC) Received: from localhost.localdomain (fttx-pool-185.75.73.135.bambit.de [185.75.73.135]) by mxbox2.masterlogin.de (Postfix) with ESMTPSA id 75028100C0F; Tue, 10 Sep 2019 07:05:14 +0000 (UTC) From: Frank Wunderlich To: linux-mediatek@lists.infradead.org Cc: Frank Wunderlich , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Alessandro Zummo , Alexandre Belloni , Eddie Huang , Josef Friedl , Lee Jones , linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, linux-rtc@vger.kernel.org, Mark Rutland , Matthias Brugger , Rob Herring , Sean Wang , Sebastian Reichel , "Tianping Fang" Subject: [PATCH v7 2/7] rtc: mt6397: move some common definitions into rtc.h Date: Tue, 10 Sep 2019 09:04:41 +0200 Message-Id: <20190910070446.639-3-frank-w@public-files.de> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190910070446.639-1-frank-w@public-files.de> References: <20190910070446.639-1-frank-w@public-files.de> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Josef Friedl move code to separate header-file to reuse definitions later in poweroff-driver (drivers/power/reset/mt6323-poweroff.c) Suggested-by: Frank Wunderlich Signed-off-by: Josef Friedl Signed-off-by: Frank Wunderlich Acked-by: Alexandre Belloni Acked-for-MFD-by: Lee Jones --- changes since v6: updated copyright 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 #include #include -#include -#include -#include -#include -#include -#include - -#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 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..f84b9163c0ee --- /dev/null +++ b/include/linux/mfd/mt6397/rtc.h @@ -0,0 +1,71 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2014-2019 MediaTek Inc. + * + * Author: Tianping.Fang + * Sean Wang + */ + +#ifndef _LINUX_MFD_MT6397_RTC_H_ +#define _LINUX_MFD_MT6397_RTC_H_ + +#include +#include +#include +#include + +#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