From patchwork Wed Nov 23 17:29:29 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Kochetkov X-Patchwork-Id: 9443975 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 2418A6075F for ; Wed, 23 Nov 2016 17:32:44 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3062927165 for ; Wed, 23 Nov 2016 17:32:44 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 2517927CF9; Wed, 23 Nov 2016 17:32:44 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=2.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,FREEMAIL_FROM,RCVD_IN_DNSWL_MED,T_DKIM_INVALID autolearn=unavailable version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id D91CB27165 for ; Wed, 23 Nov 2016 17:32:43 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.85_2 #1 (Red Hat Linux)) id 1c9bNy-0006pg-Cw; Wed, 23 Nov 2016 17:31:06 +0000 Received: from mail-lf0-x242.google.com ([2a00:1450:4010:c07::242]) by bombadil.infradead.org with esmtps (Exim 4.85_2 #1 (Red Hat Linux)) id 1c9bMz-0005OU-L0; Wed, 23 Nov 2016 17:30:07 +0000 Received: by mail-lf0-x242.google.com with SMTP id p100so628085lfg.2; Wed, 23 Nov 2016 09:29:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id; bh=D353v/EWh3DGdF5EMiqepucjcTmXAAPkWRVr2uqUHJw=; b=fy4xoMgudI7zAfDG6ZR8GQqqgjP5GAjfANL1SPzdlstECs9qKVVL52IALqL5Y93zvJ vJjyex9y5hdSJVryF44FodczEofVegaNIV4Tto840M1b3m/3CfKFuZbvAnKaSB0UcE1h 48uJJrZk1UumdjMpaNDheqMAWyfBzZvQ2bcU8mV2em1Uu7ZvtvrUeAo3s1c3eEYxN24a QymKJ84z7QhPcj12a5Ld6js3Cy6U8Tv6DLvV1XAHe0SR4QLGHaRld8F4yjkAMXrORj9M KyAbkaNMjWO4pUS0SLPljcRjBFCoO8liIzXw+iTqKuSmSfWoq35lSJOyCq0alvKHJnIL 3S1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=D353v/EWh3DGdF5EMiqepucjcTmXAAPkWRVr2uqUHJw=; b=lyvuiwEV6HIrRtkAEhJqizhxdfSn47S2W1TlfOpBj/wUOvnspSB3IpllTXyuKcoGTs tL0UWACwlIVJ2ezFBV8+tRK44G4FDAZcoUjIzaLah/uoINyER/XyoVcwsLZDYM4VB0SC gopt60ZOFxB3wRTXXZplgnt8zJb+AxypsM6ltefqcP890NoKl3jT4udWiT1sg8ymKfv+ g0R3kqL8kTY1jF2bRgsCqEf5BP1FrHdZGjcZVFREVfxDshkJZRMttULYaHdNFytx4SOT bxf8RvC2uaROnIJG8rtK1FIuFt1YBKojn6yMBhyq+zJvS7KKCOt9eOi1AMwhmVYys2G0 vK/A== X-Gm-Message-State: AKaTC02W6pLZuXI4SAmaBeyJoxh5jq7U9h2GQgsZX+uN3NZbVUIHK+zEA4Xj4lOVHkHoRA== X-Received: by 10.46.9.194 with SMTP id 185mr1740448ljj.3.1479922183043; Wed, 23 Nov 2016 09:29:43 -0800 (PST) Received: from ubuntu.lintech.local ([185.35.119.87]) by smtp.gmail.com with ESMTPSA id h71sm7455138ljh.21.2016.11.23.09.29.41 (version=TLS1_1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 23 Nov 2016 09:29:42 -0800 (PST) From: Alexander Kochetkov To: daniel.lezcano@linaro.org, tglx@linutronix.de, heiko@sntech.de, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org Subject: [PATCH 1/9] clocksource/drivers/rockchip_timer: split bc_timer into rk_timer and rk_clock_event_device Date: Wed, 23 Nov 2016 20:29:29 +0300 Message-Id: <1479922177-20136-1-git-send-email-al.kochet@gmail.com> X-Mailer: git-send-email 1.7.9.5 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20161123_093006_015303_2CBF68CF X-CRM114-Status: GOOD ( 11.48 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Alexander Kochetkov MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP Move ce field out of struct bc_timer into struct rk_clock_event_device, rename struct bc_timer to struct rk_timer. Signed-off-by: Alexander Kochetkov --- drivers/clocksource/rockchip_timer.c | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/drivers/clocksource/rockchip_timer.c b/drivers/clocksource/rockchip_timer.c index 23e267a..6d68d4c 100644 --- a/drivers/clocksource/rockchip_timer.c +++ b/drivers/clocksource/rockchip_timer.c @@ -29,18 +29,28 @@ #define TIMER_MODE_USER_DEFINED_COUNT (1 << 1) #define TIMER_INT_UNMASK (1 << 2) -struct bc_timer { - struct clock_event_device ce; +struct rk_timer { void __iomem *base; void __iomem *ctrl; u32 freq; }; -static struct bc_timer bc_timer; +struct rk_clock_event_device { + struct clock_event_device ce; + struct rk_timer timer; +}; + +static struct rk_clock_event_device bc_timer; + +static inline struct rk_clock_event_device* +rk_clock_event_device(struct clock_event_device *ce) +{ + return container_of(ce, struct rk_clock_event_device, ce); +} -static inline struct bc_timer *rk_timer(struct clock_event_device *ce) +static inline struct rk_timer *rk_timer(struct clock_event_device *ce) { - return container_of(ce, struct bc_timer, ce); + return &rk_clock_event_device(ce)->timer; } static inline void __iomem *rk_base(struct clock_event_device *ce) @@ -116,16 +126,17 @@ static irqreturn_t rk_timer_interrupt(int irq, void *dev_id) static int __init rk_timer_init(struct device_node *np, u32 ctrl_reg) { struct clock_event_device *ce = &bc_timer.ce; + struct rk_timer *timer = &bc_timer.timer; struct clk *timer_clk; struct clk *pclk; int ret = -EINVAL, irq; - bc_timer.base = of_iomap(np, 0); - if (!bc_timer.base) { + timer->base = of_iomap(np, 0); + if (!timer->base) { pr_err("Failed to get base address for '%s'\n", TIMER_NAME); return -ENXIO; } - bc_timer.ctrl = bc_timer.base + ctrl_reg; + timer->ctrl = timer->base + ctrl_reg; pclk = of_clk_get_by_name(np, "pclk"); if (IS_ERR(pclk)) { @@ -153,7 +164,7 @@ static int __init rk_timer_init(struct device_node *np, u32 ctrl_reg) goto out_timer_clk; } - bc_timer.freq = clk_get_rate(timer_clk); + timer->freq = clk_get_rate(timer_clk); irq = irq_of_parse_and_map(np, 0); if (!irq) { @@ -181,7 +192,7 @@ static int __init rk_timer_init(struct device_node *np, u32 ctrl_reg) goto out_irq; } - clockevents_config_and_register(ce, bc_timer.freq, 1, UINT_MAX); + clockevents_config_and_register(ce, timer->freq, 1, UINT_MAX); return 0; @@ -190,7 +201,7 @@ out_irq: out_timer_clk: clk_disable_unprepare(pclk); out_unmap: - iounmap(bc_timer.base); + iounmap(timer->base); return ret; }