Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752705AbbGKKcp (ORCPT ); Sat, 11 Jul 2015 06:32:45 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:33131 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1751040AbbGKKcn (ORCPT ); Sat, 11 Jul 2015 06:32:43 -0400 X-Listener-Flag: 11101 Message-ID: <1436610757.17661.1.camel@mtksdaap41> Subject: Re: [PATCH v2 4/9] clocksource: mediatek: Use GPT as sched clock source From: Yingjoe Chen To: Matthias Brugger CC: Daniel Kurtz , Mark Rutland , Thomas Gleixner , Russell King , Arnd Bergmann , Olof Johansson , "devicetree@vger.kernel.org" , Stephen Boyd , "Pawel Moll" , Catalin Marinas , Daniel Lezcano , "linux-kernel@vger.kernel.org" , Marc Carino , "Rob Herring" , , "Sascha Hauer" , srv_heupstream , "linux-arm-kernel@lists.infradead.org" Date: Sat, 11 Jul 2015 18:32:37 +0800 In-Reply-To: <1551938.VHQvCCENeg@ubix> References: <1431763110-443-1-git-send-email-yingjoe.chen@mediatek.com> <1551938.VHQvCCENeg@ubix> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3-0ubuntu6 Content-Transfer-Encoding: 7bit MIME-Version: 1.0 X-MTK: N Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1737 Lines: 49 On Fri, 2015-07-03 at 17:51 +0200, Matthias Brugger wrote: > On Friday, July 03, 2015 09:48:42 PM Daniel Kurtz wrote: <...> > > >> @@ -243,6 +251,8 @@ static void __init mtk_timer_init(struct device_node > > >> *node)>> > > >> mtk_timer_setup(evt, GPT_CLK_SRC, TIMER_CTRL_OP_FREERUN, 1); > > >> clocksource_mmio_init(evt->gpt_base + TIMER_CNT_REG(GPT_CLK_SRC), > > >> > > >> node->name, rate, 300, 32, > > >> clocksource_mmio_readl_up); > > >> > > >> + gpt_base = evt->gpt_base; > > > > > > This is really hacky. We should clean up the code and provide > > > mtk_clock_event_device globally. > > > Please add the patch below, which does exactly this. > > > > I don't think this is so hacky. > > In light of Stephen's comment about the benefit of using > > container_of() to extract gpt_base from the passed in struct > > clock_event_device in the other routines, what is the benefit of > > making more of mtk_clock_event_device global? > > I think what Yingjoe has implemented is short and sweet. > > > > Huh, this patch got somehow forgotten. > Ok, just one comment. I would prefer to rename the global gpt_base to > gpt_sched_base or something similar and set the pointer + offset directly > mtk_timer_init. In next version, I will it change to: static void __iomem *gpt_sched_reg __read_mostly; and in mtk_timer_init: + gpt_sched_reg = evt->gpt_base + TIMER_CNT_REG(GPT_CLK_SRC); Joe.C -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/