DMA curiosity - Linux

This is a discussion on DMA curiosity - Linux ; The (network) DMA-engines on Conexant 86113 (and possibly later versions) 'home network processors' (ARM9-based) apparently go through the MMU for memory accesses. At least, the RX ring needs to be filled with kernel virtual addresses, not physical ones. OK, this ...

+ Reply to Thread
Results 1 to 3 of 3

Thread: DMA curiosity

  1. DMA curiosity

    The (network) DMA-engines on Conexant 86113 (and possibly later
    versions) 'home network processors' (ARM9-based) apparently go through
    the MMU for memory accesses. At least, the RX ring needs to be filled
    with kernel virtual addresses, not physical ones.

    OK, this is off-topic. But it has costed me some hair and the better
    part of a workday, so I thought I should mention it somewhere.

  2. Re: DMA curiosity

    On Jan 4, 9:02 am, Rainer Weikusat wrote:
    > The (network) DMA-engines on Conexant 86113 (and possibly later
    > versions) 'home network processors' (ARM9-based) apparently go through
    > the MMU for memory accesses. At least, the RX ring needs to be filled
    > with kernel virtual addresses, not physical ones.
    >
    > OK, this is off-topic. But it has costed me some hair and the better
    > part of a workday, so I thought I should mention it somewhere.


    That doesn't sound right! Does that mean if you use a RTOS without
    MMU enabled (Rather than Linux with MMU enabled) this DMA engine is
    useless ? Could there be an obscure Option Register to control this ?

  3. Re: DMA curiosity

    Janaka writes:
    > On Jan 4, 9:02 am, Rainer Weikusat wrote:
    >> The (network) DMA-engines on Conexant 86113 (and possibly later
    >> versions) 'home network processors' (ARM9-based) apparently go through
    >> the MMU for memory accesses. At least, the RX ring needs to be filled
    >> with kernel virtual addresses, not physical ones.
    >>
    >> OK, this is off-topic. But it has costed me some hair and the better
    >> part of a workday, so I thought I should mention it somewhere.

    >
    > That doesn't sound right! Does that mean if you use a RTOS without
    > MMU enabled (Rather than Linux with MMU enabled) this DMA engine is
    > useless?


    Presumably, it just uses the 'ordinary' memory access mechanism the
    'core CPU' itself uses, meaning, if the MMU is off, it would work with
    physical addresses.


+ Reply to Thread