B0000 - B0003 are not good choices. This is the upper half of the standard
VGA buffer.
=====================
Mark Roddy
Hollis Technology Solutions
www.hollistech.com
xxxxx@hollistech.com
-----Original Message-----
From: Ferenc De?k [mailto:xxxxx@nct.hu]
Sent: Monday, August 25, 2003 5:03 AM
To: Windows System Software Developers Interest List
Subject: [ntdev] Re: Device-dedicated memory
(IRP_MN_QUERY_RESOURCE_REQUIREMENTS)
Hi,
Thank you for your answers. I have tried to modify my INF by using
LogConfig. After reboot the XP can not restart, I can see “Windows XP
Professional”, after that there is black screen and nothing happens…This
is a part of my INF:
;
; General installation section
;
[nctfewkb]
AddReg=nctfewkb.AddReg
; Copy the driver over
CopyFiles=nctfewkb.CopyFiles
LogConfig=nctfewkb.LogConfig
[nctfewkb.AddReg]
HKLM, SYSTEM\CurrentControlSet\Services\Kbdclass\Parameters,
ConnectMulptiplePorts, 0x00010001, 0x00
[nctfewkb.CopyFiles]
nctfewkb.sys
[nctfewkb.LogConfig]
MemConfig = b0000-b0003
Well, what is wrong?
Ferenc
----- Original Message -----
From: “Don Burn”
To: “Windows System Software Developers Interest List”
Sent: Friday, August 22, 2003 3:32 PM
Subject: [ntdev] Re: Device-dedicated memory
(IRP_MN_QUERY_RESOURCE_REQUIREMENTS)
> How are you getting the ports in your driver? You should hopefully
> get
the
> resources as part of AddDevice, if you are using fixed ports and
> memory
look
> at LogConfig in the INF file description in the DDK, and add the
> memory to your devices resources as part of the INF.
>
> Don Burn (MVP, Windows DDK)
> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>
> ----- Original Message -----
> From: “Ferenc Deak”
> To: “Windows System Software Developers Interest List”
> Sent: Friday, August 22, 2003 9:22 AM
> Subject: [ntdev] Device-dedicated memory
> (IRP_MN_QUERY_RESOURCE_REQUIREMENTS)
>
>
> > Hi,
> >
> > I would like to access my dual port memory from my keyboard port
> > driver. The physical address of the dual port memory is 0x000b0000.
> > It is 16 KByte. I would like to allocate it for exlusive usage.
> >
> > I do this in my AddDevice now:
> >
> > physAddr_dual.LowPart = 0x000b0000;
> > physAddr_dual.HighPart = 0x00000000;
> >
> > // map 4 bytes from dual-port memory
> > devExt->DualRam = MmMapIoSpace(physAddr_dual,4,MmNonCached);
> >
> > It works, but I have read about
> >
>
IRP_MN_QUERY_RESOURCE_REQUIREMENTS.(http://msdn.microsoft.com/library/defaul
> t.asp?url=/library/en-us/kmarch/hh/kmarch/memmgmt_7o6f.asp)
> >
> >
> > Now I handle it like this:
> >
> > case IRP_MN_QUERY_RESOURCE_REQUIREMENTS:
> >
> > IoSkipCurrentIrpStackLocation(Irp);
> > status = IoCallDriver(devExt->TopOfStack, Irp);
> >
> > break;
> >
> > How can I allocate this 16KByte properly? How should
> > IRP_MN_QUERY_RESOURCE_REQUIREMENTS be handled? Probably I must
> > modify
the
> > list on the IRP’s way back up the device stack. “If a … driver
> > changes the size of the resource requirements list, the driver must
> > allocate a
new
> > structure from paged memory and free the previous structure” (DDK)
> > How?
> >
> > Is there sample for allocating physical memory?
> >
> > Thanks in advance,
> >
> > Ferenc
> >
> >
> > —
> > Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
> >
> > You are currently subscribed to ntdev as: xxxxx@acm.org
> > To unsubscribe send a blank email to xxxxx@lists.osr.com
> >
>
>
>
> —
> Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@nct.hu
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
—
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
You are currently subscribed to ntdev as: xxxxx@stratus.com To
unsubscribe send a blank email to xxxxx@lists.osr.com