From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <4DB18EB3.7000107@domain.hid> Date: Fri, 22 Apr 2011 16:20:35 +0200 From: Gilles Chanteperdrix MIME-Version: 1.0 References: <4DB143E8.3000900@domain.hid> <4DB17F63.2050504@domain.hid> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Xenomai-help] first module help List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Aurele Traynard Cc: Xenomai help Aurele Traynard wrote: > 2011/4/22 Gilles Chanteperdrix > >> Aurele Traynard wrote: >>> ok i'm sorry i wasn't clear at all... >>> my problem is : when i call readl in a rt_task, the task is stopped... >>> (maybe because the rt_task is launched in a module?) >>> "Xenomai: suspending kernel thread bf0041c8 ('test_rt') at 0xbf003824 >> after >>> exception #0" >>> if i remove the readl there is no problem >>> >>> With a normal Linux, in a module there isn't any problem >> On what platform? I can think of two things: >> - the platform you use maps the ioremaped memory on-demand (x86 and ARM >> at least do not allow this, but I do not know about other platforms) >> - you are making an unaligned access, it works with Linux because it has >> a handler for handling unaligned accesses, whereas Xenomai default >> handler is to simply suspend a task doing this kind of things. >> >> Please do not forget to CC the mailing list. >> >> -- >> Gilles. >> > I'm working with PXA270 (ARMv5te), FPGA's registers physicaly are mapped as > CPU's registers... so it is alligned (i read 0x040001C0 and i use a 32bits > integer....) > so if i understand it should work... Are you sure 0x040001C0 is a virtual address? -- Gilles.