Subject: [PATCH v2] arm64: kernel: compiling issue, need delete read_current_timer().

From: [email-masked] (Marc Zyngier)
Date: Mon, 10 Jun 2013 09:57:22 +0100

On 08/06/13 05:37, Chen Gang wrote:
> Hello Maintainers:
> 
> Please help check it, when you have time.
> 
> Thanks.
> 
> On 05/27/2013 06:02 PM, Chen Gang wrote:
>> Hello Maintainers:
>>
>> Please help check this patch whether OK, when you have time.
>>
>> Thanks.
>>
>> On 05/21/2013 05:46 PM, Chen Gang wrote:
>>>
>>> Under arm64, we will calibrate the delay loop statically using a known
>>> timer frequency, so delete read_current_timer(), or it will cause
>>> compiling issue with allmodconfig.
>>>
>>> The related error:
>>>   ERROR: "read_current_timer" [lib/rbtree_test.ko] undefined!
>>>   ERROR: "read_current_timer" [lib/interval_tree_test.ko] undefined!
>>>   ERROR: "read_current_timer" [fs/ext4/ext4.ko] undefined!
>>>   ERROR: "read_current_timer" [crypto/tcrypt.ko] undefined!
>>>
>>>
>>> Signed-off-by: Chen Gang <[email-masked]>
>>> ---
>>>  arch/arm64/include/asm/timex.h |    6 +++---
>>>  arch/arm64/kernel/time.c       |    6 ------
>>>  2 files changed, 3 insertions(+), 9 deletions(-)
>>>
>>> diff --git a/arch/arm64/include/asm/timex.h b/arch/arm64/include/asm/timex.h
>>> index b24a31a..81a076e 100644
>>> --- a/arch/arm64/include/asm/timex.h
>>> +++ b/arch/arm64/include/asm/timex.h
>>> @@ -16,14 +16,14 @@
>>>  #ifndef __ASM_TIMEX_H
>>>  #define __ASM_TIMEX_H
>>>  
>>> +#include <asm/arch_timer.h>
>>> +
>>>  /*
>>>   * Use the current timer as a cycle counter since this is what we use for
>>>   * the delay loop.
>>>   */
>>> -#define get_cycles()	({ cycles_t c; read_current_timer(&c); c; })
>>> +#define get_cycles()	arch_counter_get_cntvct()
>>>  
>>>  #include <asm-generic/timex.h>
>>>  
>>> -#define ARCH_HAS_READ_CURRENT_TIMER
>>> -
>>>  #endif
>>> diff --git a/arch/arm64/kernel/time.c b/arch/arm64/kernel/time.c
>>> index a551f88..03dc371 100644
>>> --- a/arch/arm64/kernel/time.c
>>> +++ b/arch/arm64/kernel/time.c
>>> @@ -68,12 +68,6 @@ unsigned long long notrace sched_clock(void)
>>>  	return arch_timer_read_counter() * sched_clock_mult;
>>>  }
>>>  
>>> -int read_current_timer(unsigned long *timer_value)
>>> -{
>>> -	*timer_value = arch_timer_read_counter();
>>> -	return 0;
>>> -}
>>> -
>>>  void __init time_init(void)
>>>  {
>>>  	u32 arch_timer_rate;

Sorry for the delay replying. This looks good to me.

FWIW:
Acked-by: Marc Zyngier <[email-masked]>

	M.
-- 
Jazz is not dead. It just smells funny...