Subject: [PATCH 08/15] ARM: shmobile: convert to twd_local_timer_register() interface

From: [email-masked] (Marc Zyngier)
Date: Thu, 12 Jan 2012 11:24:32 +0000

On 12/01/12 09:19, Russell King - ARM Linux wrote:
> On Wed, Jan 11, 2012 at 01:08:47PM +0000, Marc Zyngier wrote:
>>  static void __init shmobile_late_time_init(void)
>>  {
>>  	/*
>> @@ -34,6 +37,8 @@ static void __init shmobile_late_time_init(void)
>>  	 */
>>  	early_platform_driver_register_all("earlytimer");
>>  	early_platform_driver_probe("earlytimer", 2, 0);
>> +	if (local_timer_hook)
>> +		local_timer_hook();
> 
> This is why late_timer_init() should be avoided at all cost - you can
> only have one of them and once you've used it once, you need to invent
> new hooks to hook other stuff into there.
> 
> In any case, I don't think this is necessary for TWD as ioremap should
> be available for regions which have already been statically mapped now
> that Nicolas' patches are in mainline.

Indeed, it should work now, and I'll remove the use of late_time_init.

shmobile has another problem though: it doesn't have the smp_twd clock,
which means we have to rely on calibration, and this will only work if
the global timer is already up and running (hence the ugly hook).

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