Hi, Wolfgang:

You wrote:

>You don't allocate space and  assign  it  a  physical
>address,  it's exactly the other way round:
>
>There is some physical memory starting at phys_addr  
>with  a  certain size,  and  you  use  ioremap()  
>resp. ioremap_nocache() to get it's virtual start 
>address.

        Really, there are two problems:

        1.- I have to allocate memory inside the PPC860T
dual-port RAM for the buffer descriptors. I have
seen in the Linux kernel source that it uses

        m8xx_cpm_dpalloc()

function.

        2.- I have to allocate memory somewhere else in 
RAM in order for the DMA to handle the communication
data from/to the controller. Linux kernel uses

        m8xx_cpm_hostalloc()

to get some space from RAM, and then

        _pa()

to translate virtual into physical address for the
buffer descriptor field "Buffer Pointer".

In my case, when trying to use these functions
in my RT-Linux module, it fails when loading
the module. 
In the first case, I need any means of getting 
some space from the dual-port RAM that hasn�t been 
previously allocated by Linux
In the second case, first I need some contiguous
space in RAM, and then translate the virtual address
into a physical one.

In others words, how can I get in a RT-Linux module
the functionality I need? Can I use the above functions
in the "init_module()"? If so, need I link my module
with any other?

        
Thank you in advance

        
Billa   

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/

Reply via email to