Title: | MS Windows NT Developers |
Notice: | See note 1222 for MS bug reporting info |
Moderator: | TARKIN::LIN EIBER |
Created: | Mon Nov 11 1991 |
Last Modified: | Tue Jun 03 1997 |
Last Successful Update: | Fri Jun 06 1997 |
Number of topics: | 3247 |
Total number of notes: | 15633 |
I am trying to design a driver for a PCI module which requires a large buffer (40Mbytes) from which it can read selected parts autonomously under the controle of a microcpu on the PCI module. The easiest way would be to allocate the buffer with HalAllocateCommonBuffer and communicate the logical address to the module. Total system memory will be more than 128Mbytes so getting the nonpagedpool should not be a problem. My problem is that on the alphastation 400 am using for testing HalGetAdapter return a max registermap count of 0x200 (521) which is way to small to map my 40 meg buffer. I stepped through the HalGetAdapter code and the 0x200 comes from some data cell. From my VMS experiance I know that the apecs chips used for this mapping can be configured for much larger sg windows. Is there any reason such a small window (4 mb) was used? Is this setup by the HAL and have other systems (alphas) different values (bigger) or is this some thing that is common to all. Thanks in advance Willy
T.R | Title | User | Personal Name | Date | Lines |
---|---|---|---|---|---|
3235.1 | DECWET::VOBA | Tue May 20 1997 22:01 | 11 | ||
Re .0, somehow i missed this entry... sorry! A nit, you had a typo - the maximum number of map registers returned by the HalGetAdapter() is 512. This is, unfortunately, fix and currently is the maximum value for all Alpha Windows NT platforms. DECwest Engineering has been doing some re-thinking on this subject. Anything we decide on this one will not show up until NT 5.0 time frame. --svb |