* [Xenomai-help] Kernel functions
@ 2008-03-17 14:07 Bosko Radivojevic
2008-03-17 14:27 ` Philippe Gerum
0 siblings, 1 reply; 3+ messages in thread
From: Bosko Radivojevic @ 2008-03-17 14:07 UTC (permalink / raw)
To: philippe.gerum; +Cc: xenomai-help
Hi Philippe,
is the usage of __raw_writel(), dma_map_single() and simillar
functions "allowed" in native skin?
Kind regards,
Bosko
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Xenomai-help] Kernel functions
2008-03-17 14:07 [Xenomai-help] Kernel functions Bosko Radivojevic
@ 2008-03-17 14:27 ` Philippe Gerum
2008-03-17 15:19 ` Bosko Radivojevic
0 siblings, 1 reply; 3+ messages in thread
From: Philippe Gerum @ 2008-03-17 14:27 UTC (permalink / raw)
To: Bosko Radivojevic; +Cc: xenomai-help
Bosko Radivojevic wrote:
> Hi Philippe,
>
> is the usage of __raw_writel(), dma_map_single() and simillar
> functions "allowed" in native skin?
>
I'm assuming you mean "real-time mode". __raw_write routines should always be
ok, but dma_map_single() has an arch-dependent implementation. I would be ok to
call it on Blackfin from a real-time (i.e. non plain Linux) context, but this
would break on ARM.
The rule of thumb is that a Linux service may be called from a co-kernel context
only if it does not depend on:
- regular interrupt control ops (local_irq_*)
- regular spin locks (spin_*)
Which leaves very few candidates, actually.
E.g. dma_map_single() on ARM may invoke kmalloc(), which would break all the
assumptions above.
> Kind regards,
> Bosko
>
--
Philippe.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Xenomai-help] Kernel functions
2008-03-17 14:27 ` Philippe Gerum
@ 2008-03-17 15:19 ` Bosko Radivojevic
0 siblings, 0 replies; 3+ messages in thread
From: Bosko Radivojevic @ 2008-03-17 15:19 UTC (permalink / raw)
To: rpm; +Cc: xenomai-help
[ I'm a little bit new to the whole Xenomai/Adeos thing, so maybe
asking bullshit :) ]
On Mon, Mar 17, 2008 at 3:27 PM, Philippe Gerum <rpm@xenomai.org> wrote:
> I'm assuming you mean "real-time mode". __raw_write routines should always be
> ok, but dma_map_single() has an arch-dependent implementation. I would be ok to
> call it on Blackfin from a real-time (i.e. non plain Linux) context, but this
> would break on ARM.
Is there any "proposed" method of communication with hw directly from
real-time mode (native skin, meaning as a kernel module)? I've
modified macb eth driver for the 'special purpose use', I don't need
it as an Linux Ethernet device. That is the reason why asking for
dma_map_single (I need the "real" memory address to put in tx_ring).
If there is some document covering my problem, please send me link to it.
Thanks,
Bosko
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2008-03-17 15:19 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-17 14:07 [Xenomai-help] Kernel functions Bosko Radivojevic
2008-03-17 14:27 ` Philippe Gerum
2008-03-17 15:19 ` Bosko Radivojevic
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.