[En-Nut-Discussion] arm port (RFC: Changing ARM mode)

Harald Kipp harald.kipp at egnite.de
Tue Jan 13 17:03:17 CET 2009

Answering myself, but actually trying to push Ole and others. ;-)

Harald Kipp wrote:
> Ole Reinhardt wrote:
>> In which cases would we need 'enter kernel routine'? In some interrupt
>> driven functions? All other driver code shold just run fine in user
>> mode, does it?
> At least NutEnter/ExitCritical() won't work in user mode, if I correctly
> understood the ARM documents.
>> For me it sounds much cleaner to run as most code as possible in user
>> mode and implement such context switch functions???
> Do you have any idea, what else is disabled in user mode?
> Protected OSes use an exception like SWI to switch the mode. No idea how
> to implement this in Nut/OS, where the kernel is a bunch of libs only.

After some unpleasant experience with the interrupt handling discussion
in this list a few months ago, please let me appeal to everyone, that
several people are impatiently waiting for the next stable release.

Please take any possible effort and time frame into your considerations.
Specifically to Ole: I do have the stack backtrace running, but it will
crash with the current mode the system is running in. So we need a
decision before I can check it in. In the meantime I updated the
documentation at

The interrupt problem was unpleasant, because a lot of very good ideas
had been suggested here, but actually no working code had been
presented. After some weeks people start asking what happened to the
announced version 4.6 and I finally decided to fix the interrupt problem
by using the quick and dirty solution I had in mind initially to speed
things up. This probably frustrated some of the people, who spent their
valuable time discussing more advanced solutions. Unfortunately this
fruitful discussion died after my ignorant behavior towards the release
of 4.6. I'd like to avoid this for 4.8.


More information about the En-Nut-Discussion mailing list