Re: section objects and scatter/gather DMA



If you are not sharing these with user space, why are you mucking with
Sections?


--
Don Burn (MVP, Windows DDK)
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr
Remove StopSpam to reply



"Charles Gardiner" <invalid@xxxxxxxxxxxxxxx> wrote in message
news:gnfl7k$5mq$01$1@xxxxxxxxxxxxxxxxxxxx
Hi,

can any body give me some tips/links on how to get scatter gather lists
to DMA into section objects?

In the WDK docu, I see
- I can use ZwCreateSection to generate the sections
- ZwMapViewOfSection to get part of the section mapped into my driver
address space.

But where do I go from here? I expect I have to do something with the
baseaddress and viewsize I send/get from the ZwMapViewOfSection call.

My situation is the following:
I have a number of incoming channels (from a PCIexpress card). Each
channel has multiplexed packets. I can have for instance:

CH1 : AABCBCBCABC
CH2 : ABCABCABCCC
CH3 : CBABBCCBAAB

I want to set up three section objects in my driver (well, really six so
I can do three circular buffers, one each for the A, B and C packets.
Not shared with user space) so that an application software can request
packets of just one type at a time but originally coming from any of the
channels (First loop vertically through the channels and then
horizontally). I would then use RtlCopyMemory or something similar to
copy for instance a number of packets of the requested type into the
IOCTL or ReadFile buffers from the application software.

A short example (or link to one) would be great. Ah yes, I'd like to use
as much KMDF functionality as possible.

Regards,
Charles


.



Relevant Pages

  • MPEG-2 Demux dropping packets
    ... I am developing a BDA driver for DVB-T tuner. ... The problem, which I have, is that on some channels (or I would say on ... half of the channels) the incoming stream can be successfully played ... can see that all PSI packets are parsed correcty and packets with ...
    (microsoft.public.win32.programmer.directx.video)
  • MPEG-2 Demux dropping packets
    ... I am developing a driver BDA for DVB-T tuner. ... The problem, which I have, is that on some channels (or I would say on ... half of the channels) the incoming stream can be successfully played ... can see that all PSI packets are parsed correcty and packets with ...
    (microsoft.public.development.device.drivers)
  • Re: [PATCH] uio: User IRQ Mode
    ... In this mode the user space driver ... is responsible for acknowledging and re-enabling the interrupt. ... This can easily be done without your patch. ...
    (Linux-Kernel)
  • Re: [PATCH] uio: User IRQ Mode
    ... This patch adds a "User IRQ Mode" to UIO. ... In this mode the user space driver ... is responsible for acknowledging and re-enabling the interrupt. ...
    (Linux-Kernel)
  • Re: [PATCH] uio: User IRQ Mode
    ... This patch adds a "User IRQ Mode" to UIO. ... In this mode the user space driver ... is responsible for acknowledging and re-enabling the interrupt. ...
    (Linux-Kernel)

Loading