My QUESTION:
Where can I find the logic used by NTDETECT on WIN2K to detect serial
ports?
SOME BACKGROUND:
We are currently desigining a platform that will run Windows 2000 and the
hardware engineers are asking me how I would like the extra COM ports (7 of
them)to appear in the system. I would like them to lay it out in such a
way so that the standard serial bus driver will detect and use those ports.
On a previous version of the hardware and with windows NT 4.0 , I had to
modify the serial driver to use the XX_REGISTER_UCHAR functions if the UART
is actually in memory space and also share the interrupt on a PCIBus. Even
though there were registry settings to specifically set the bus type,
address space, etc… the source only seem to be designed to use the PORT
functions and only supported bus interrupt sharing on a MicroChannel bus.
I would like to avoid doing this on the new version of the hardware with
Windows 2000.
Shaun,
The NTDETECT.COM program is used to detect legacy devices that are NOT
PnP Detected, it is somewhat outdated in Windows 2000 due to PnP and ACPI.
Best course of action is to design a standard Serial Device that is PnP
detected ( i.e. PCI ).
Then, make sure that the device exports the correct Compatible PnP device
ID: PNP0501/PNP0500 (Which?)
( in addition to the standard PCI\VEN_XXXX&DEV_XXXX\XXX ID ).
When the system boots up, it will query you device for PnP ID’s, find the
appropriate match in
the %windir%\inf\msports.inf file, and install the appropriate Serial.Sys
Driver.
Remember: the Serial.Sys driver source is included in the Windows 2000 DDK,
it also has interfaces for multiport serial devices.
KeithGa
-----Original Message-----
From: xxxxx@tenpennies.com [mailto:xxxxx@tenpennies.com]
Sent: Thursday, September 14, 2000 5:12 AM
To: NT Developers Interest List
Subject: [ntdev] WIN2K, NTDETECT AND COM PORTS
My QUESTION:
Where can I find the logic used by NTDETECT on WIN2K to detect serial
ports?
SOME BACKGROUND:
We are currently desigining a platform that will run Windows 2000 and the
hardware engineers are asking me how I would like the extra COM ports (7 of
them)to appear in the system. I would like them to lay it out in such a
way so that the standard serial bus driver will detect and use those ports.
On a previous version of the hardware and with windows NT 4.0 , I had to
modify the serial driver to use the XX_REGISTER_UCHAR functions if the UART
is actually in memory space and also share the interrupt on a PCIBus. Even
though there were registry settings to specifically set the bus type,
address space, etc… the source only seem to be designed to use the PORT
functions and only supported bus interrupt sharing on a MicroChannel bus.
I would like to avoid doing this on the new version of the hardware with
Windows 2000.
You are currently subscribed to ntdev as: xxxxx@microsoft.com
To unsubscribe send a blank email to $subst(‘Email.Unsub’)
Keith,
Thank you for the information. I looked in the PCI guide and saw that
there was a base class defined for multi-port serial devices. Hopefully,
there is a standard register set for these kind of devices that the serial
driver in WIN2K is designed to use. So…my next step is to download the
DDK and peruse the source to look at the register sets.
Thanks again,
Shaun