From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <4DC2ADE1.9000301@domain.hid> Date: Thu, 05 May 2011 16:02:09 +0200 From: Gilles Chanteperdrix MIME-Version: 1.0 References: <4DC2962B.9060802@domain.hid> <4DC299F2.40700@domain.hid> <4DC2A315.8030707@domain.hid> In-Reply-To: <4DC2A315.8030707@domain.hid> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Adeos-main] mini2440: ipipe kernel stuck in idle loop after xenomai init List-Id: General discussion about Adeos List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Alexey Galakhov Cc: adeos-main@gna.org On 05/05/2011 03:16 PM, Alexey Galakhov wrote: > On 05/05/2011 06:37 PM, Gilles Chanteperdrix wrote: >> You should make sure that pm_idle == default_idle. In this case, >> __ipipe_halt_root is called instead of arch_idle, and everything should >> work. > May it be caused by the following code from plat-samsung/time.c ? > > static inline void set_dec(unsigned long reload) > { > __raw_writel(reload, S3C2410_TCNTB(4)); /* <-------- In fact, > TCNT is 16-bit, so what if reload > 0xffff and reload & 0xffff == 0 ??? */ Try adding: if (reload > 0xffff) reload = 0xffff; before the raw_writel. -- Gilles.