13Z061-70 - MDIS4/2004 / MDIS5 Windows driver (MEN) for 16Z061_PWM
MDIS4/2004 / MDIS5 Windows driver (MEN) for 16Z061_PWM
Download 13z06170.zipiMain file, requires MDIS5 System Package for Windows. ================================================================================
===== History of MDIS5 Windows Driver Package 13Z061-70 rev. 1.5.2.18
===== 2013-11-06 built from - MDIS5 LL-Driver 13Z061-06 rev. 1.5
===== - MDIS5 Windows references rev. 2.18
================================================================================
-----[ 2013-11-06 : references Revision 2.18 ]-----
====== Based on Windows MDIS5 System Package 13MD05-70 Rev. 1.5 ======
--- Libraries ---
R: MK: errors and BSOD during Windows shutdown at SC26 with SMB2 driver
M: MK: synchronize power state change with IRP processing during shutdown
-----[ 2012-08-08 : references Revision 2.17 ]-----
=== Libraries ===
R:1. USR_OSS: UOS_KeyWait consumes too much CPU time
2. MK: BSOD 0x8E with EXCEPTION_CODE 0xc0000047 (semaphore max count exceeded)
3. MK: must not call BBIS driver's IrqEnable with masked IRQ
4. MK: prevent concurrent BBIS/LL-Drv. IrqEnable calls
5. MK: support required for chameleon FPGAs with mixed i/o and mem mapped units
6. MK: sub device list not save for concurrent execution
7. MK: M_read/M_write calls from MDIS4 applications not suppported by mistake
8. OSS: workaround in OSS_SemWait() required for SMB2 lib
9. OSS: prevent spin-lock dead-looks
M:1. USR_OSS: delay added to provide CPU time to other threads
2. MK: error handling improved to prevent release of not claimed semaphore
3.a) MK: disabling BBIS IRQ no longer with masked IRQ
b) MK: MK_REVISION set to MDIS_MKREV_2
4. MK: enable BBIS IRQ with claimed semaphore
5. MK: use newer BBIS_CFGINFO_ADDRSPACE prior BBIS_BRDINFO_ADDRSPACE
6. MK: sub device list protected with semaphore
7. MK: support MDIS4 IOCTLs for MDIS4 applications
8.a) OSS: OSS_SemWait: IRQL = DISPATCH_LEVEL: skip waiting
b) OSS: OSS_SemWait: IRQL > DISPATCH_LEVEL: skip KeWaitForSingleObject(), return ERR_OSS
9. OSS: use WDF spin-locks and restrict usage to IRQL <= DISPATCH_LEVEL
-----[ 2010-12-08 : references Revision 2.16 ]-----
====== Based on Windows MDIS5 System Package 13MD05-70 Rev. 1.3 ======
--- Libraries ---
R:1. Power Management support
2. MDIS_API: new MK error codes ERR_MK_SLEEP_ILLHDL, ERR_MK_SLEEP_LOCKED
3. MDIS_API: revision string is empty for M_MK_BLK_REV_ID
4. USR_OSS: signal handling update
5. OSS: signal events stay in signal list after exit on XP SP3
6. OSS: spin lock support functions required for Chameleon BBIS
7. SMB2: DBGWRT failed with zero data pointer
M:1.a) USR_SLEEP library added
b) MK: adapted for Power Management
2. MDIS_API: supports new error code description
3. MDIS_API: string generation fixed
4.a) USR_OSS: SigUnMask removed in UOS_SigWait
b) USR_OSS: terminates no longer signal thread on queue overrun
c) USR_OSS: queue size increased
5. OSS: added close of event for XP SP3
6. OSS: OSS_SpinLockXxx functions added
7. SMB2: fixed debug message
-----[ 2010-11-05 : references Revision 2.15 ]-----
APB5:
R: 1. prevent native file check-in if win-pkg fileset was already checked-in
2. bug: building internal win-pkg if swmodule attribut internal=false set
3. APB5 script error if xml specifies os/notos tag or one sw module is
specified multiple times
4. sometimes, win-pkg zip was checked-in as ascii file
M: 1. dont't ask to check-in native files if win-pkg fileset was checked-in
2. bug fixed: building internal win-pkg only if internal=true set
3. script fixed
4. win-pkg zip check-in fixed
BUILD:
R: missing libraries for executables with the use of API DLLs
M: added libraries to TMPL_TARGETLIBS for API DLLs version
-----[ 2010-11-03 : references Revision 2.14 ]-----
Windows driver package generation (BUILD, APB5):
R:1. new mdiswiz.exe version available
2. internal files not needed for public distribution
M:1. using mdiswiz.exe rev. 1.3
2. removed category public from internal files
SW Modules:
R:1. MDIS_API: new MK error codes ERR_MK_SLEEP_ILLHDL, ERR_MK_SLEEP_LOCKED
2. MK: IRP processing must be synchronized with power management
3. OSS: signal events stay in signal list after exit on XP SP3
4. USR_OSS: SigUnMask at the end of UOS_SigWait incorrect
5. USR_OSS: Queue overrun leads to exit thread, no further signals delivered
M:1. MDIS_API: new built to support new error code description
2.a) MK: block sleep until all IRPs in progress are finished
b) MK: begin no new IRP after system indicates to enter a sleep state
3. OSS: added close of event for XP SP3
4. USR_OSS: SigUnMask removed in UOS_SigWait
5.a) USR_OSS: removed closing thread on queue overrun
b) USR_OSS: queue size increased
-----[ 2010-09-27 : references Revision 2.13 ]-----
R:1. MK: MkDevListGet/SetCtxt() declared for paged segment but PAGED_CODE
missing
2. MK: PREfast warnings for some DBGTRC
3. MK: preventing power state change in kernel mode not supported any more,
user mode application is responsible for
4. MK: support for power management
5. MDIS_API: Revision string is empty for M_MK_BLK_REV_ID
6. SMB2: DBGWRT failed with zero data pointer
M:1. MK: PAGED_CODE added
2. MK: some DBGTRC fixed
3. MK: removed preventing system state change while path opened
4.a) close open ll handle when power state change to sleep mode
b) changed return code for illegal handle
5. MDIS_API: Fixed string generation
6. SMB2: fixed debug message
-----[ 2010-07-26 : references Revision 2.12 ]-----
Windows driver package generation (APB5):
R: WEBART logging doesn't work
M: WEBART logging fixed
-----[ 2010-07-23 : references Revision 2.11 ]-----
Windows driver package generation (APB5):
M:1. 13MD05-70 released
2. new mdiswiz version with fixes in pkg2inf5
3. build environment changed
R:1. use revision from 13MD05-70 as major PRODUCTVERSION
2.a) inf files: mcvs date/revision info in inf header replaced with creation
date and mdiswiz pkg2inf revision
b) inf files: ExcludeFromSelect removed
c) inf files: models without autoid use 'XXX[_SW]&NO_AUTOID'
3. create embedded signature in 64-bit free and checked drivers
SW Modules:
R:1. smb2.lib - 16Z001_SMB: terminate bit could be set if status is polled
before an abort operation finishes
2. smb2_io.lib - ICH SMB: sometimes wasting time during transfer
M:1. smb2.lib - 16Z001_SMB: add max. 500 ms wait time after starting an abort
operation
2. smb2_io.lib - ICH SMB: LocWaitBusyReady function fixed
-----[ 2010-06-11 : references Revision 2.10 ]-----
R:1. mk.lib: check for invalid interrupt object was buggy
2. mk.lib: new address mode MDIS_MA_BB_INFO_PTR
M:1. mk.lib: check for invalid interrupt object removed
2. mk.lib: support for new address mode MDIS_MA_BB_INFO_PTR
-----[ 2010-05-07 : references Revision 2.9 ]-----
R:1. low-level drivers that use new MDIS_MA_BB_INFO_PTR feature
requires chameleon.h (e.g. Z88 driver)
2. support embedded signature for 64-bit free and checked drivers
M:1.a) chameleon.h added
b) chameleon lib documentation added
2. sign all built 64-bit .sys files
-----[ 2010-04-14 : references Revision 2.8 ]-----
R: swapping variant of PLD library required for M72 driver
M: pld_sw.lib added
-----[ 2010-04-14 : references Revision 2.7 ]-----
R:1. VME4WIN for MDIS5 supported
2. mdiswiz support for new busif SMBus required
M:1.a) mk : added check for invalid interrupt object
b) oss: adapted VME KM interface access
2. replaced Qt3 based mdiswiz by Qt4 based mdiswiz
-----[ 2009-11-09 : references Revision 2.6 ]-----
R:1. APB5: missing check for unsupported setup/build options
2. APB5: .cat file was not timestamped
3. OSS_IrqRestore decreases IRQL that was not increased by current context
4. OSS_SigRemove ZwClose leads to BSOD at Windows XP
M:1. setup/build option check improved
2. /t <URL> added to signtool sign
3. Changed order to reset irqmasked
4. Added check for os version
-----[ 2009-10-30 : references Revision 2.5 ]-----
R: OSS lib: Mapped io address is zero
M: OSS lib: Fixed set virtAddr to physAddr at IO addr space
-----[ 2009-10-28 : references Revision 2.4 ]-----
R:1. MK lib: new BBIS bus type OSS_BUSTYPE_SMB handled as error
2. OSS lib: no interrupt spinlock release at last call of OSS_IrqRestore
M:1. MK: BBIS bus type check removed (to be open minded for future bus types)
2. OSS: Removed restting irqmasked at OSS_IrqMaskR
-----[ 2009-10-23 : references Revision 2.3 ]-----
R:1. MkInitExit and MkEvtDeviceD0EntryPostInterruptsEnabled must be nonpageable
2. OSS lib: irqmasked bit not cleared after releasing interrupt spinlock
M:1. MK lib: Fixed to be nonpageable
2. OSS lib: Fixed to reset irqmasked at OSS_IrqRestore
-----[ 2009-10-20 : references Revision 2.2 ]-----
R:1. Releasing interrupt spinlock that had not been masked by OSS_IrqMaskR leads
to lowering IRQL in ISR
2. Fixed OSS Libraray OSS_IRQ_HANDLE
M:1. Fixed releasing interrupt spinlock just when masked before in OSS library
2. Recompilation of MK library
-----[ 2009-10-12 : references Revision 2.1 ]-----
Initial Revision
-----[ 2009-09-02 : 13Z061-06 Revision 1.5 ]-----
13z06106.xml:
R: Porting to MDIS5
M: fixed description for MDIS5
-----[ 2009-07-10 : 13Z061-06 Revision 1.4 ]-----
R: Porting to MDIS5: backwards compatibility to MDIS4 (Linux)
M: added defines for new MDIS5 types
-----[ 2009-03-02 : 13Z061-06 Revision 1.3 ]-----
fixed: section api_functions: renamed function names to Z61_*()
R: no 64 Bit support
M: changed set/getstat and path type to support 64 Bit
13z06106.xml:
R: 1. device was not found in WIN environments (name did not match)
2. XML knows CHAM V2 dev ID as well now
M: 1. add mandatory 16 as begin of HWNAME (match with chameleon.h string)
2. add chamv2id as autoid
-----[ 2006-06-08 : 13Z061-06 Revision 1.2 ]-----
changed ADDRSPACE_SIZE to 16 (Chameleon BBIS reports real size now)
-----[ 2006-01-30 : 13Z061-06 Revision 1.1 ]-----
Initial Revision
Download 13z06170_mdis4.zipiThis is the MDIS4 Windows Driver Package.It requires the MDIS4 System Package and is not compatible to MDIS5. ================================================================================
===== History of MDIS4 Windows Driver Package 13Z061-70 rev. 1.5.2.10
===== 2009-12-11 built from - MDIS4 LL-Driver 13Z061-06 rev. 1.5
===== - MDIS4 Windows references rev. 2.10
================================================================================
-----[ 2009-12-07 : references Revision 2.10 ]-----
R:1. address mapping must not be done for new address mode MDIS_MA_BB_INFO_PTR
2. OSS_IrqRestore() called within ISR context: Releasing interrupt spinlock
that was not masked by OSS_IrqMaskR lowers IRQL (error).
M:1.a) mk.lib: only do address and resource mapping if MDIS_MA_FLAG_NOMAP is not set
.b) mk.lib: initialize the address structures correctly if mapping is not done
2.a) mk.lib: new compiled due to new added OSS_IRQ_HANDLE::irqmasked parameter
.b) oss.lib: OSS_IrqMaskR/OSS_IrqRestore(): Using new OSS_IRQ_HANDLE::irqmasked
parameter to prevent erroneous unmasking.
-----[ 2009-09-02 : 13Z061-06 Revision 1.5 ]-----
13z06106.xml:
R: Porting to MDIS5
M: fixed description for MDIS5
-----[ 2009-07-10 : 13Z061-06 Revision 1.4 ]-----
R: Porting to MDIS5: backwards compatibility to MDIS4 (Linux)
M: added defines for new MDIS5 types
-----[ 2009-05-18 : references Revision 2.9 ]-----
- chameleon_usr.lib, dbg.lib, desc.lib, id.lib, mbuf.lib, pld.lib:
new compiled, no functional changes
- mk.lib:
R:1. If OSS_IrqMaskR() will be called at PASSIVE_LEVEL on CPU2 while MKIsr()
runs at CPU1, OSS_IrqMaskR() acquires no spinnlock - this is an error!
2. New BBIS interface function BB_SetIrqHandle()
M:1. MKIsr(): m_irqHdl.mask++ / m_irqHdl.mask-- removed, see also OSS_IrqMaskR()
2. MKProvideRes(): for BBIS bus driver with >=MDIS_BKREV_3:
call BB_SetIrqHandle() if the function pointer is not NULL
- oss.lib:
R: If OSS_IrqMaskR() will be called at PASSIVE_LEVEL on CPU2 while MKIsr()
runs at CPU1, OSS_IrqMaskR() acquires no spinnlock - this is an error!
M: OSS_IrqMaskR(): condition to acquire interrupt spin look changed,
see also MKIsr()
-----[ 2009-03-02 : 13Z061-06 Revision 1.3 ]-----
fixed: section api_functions: renamed function names to Z61_*()
R: no 64 Bit support
M: changed set/getstat and path type to support 64 Bit
13z06106.xml:
R: 1. device was not found in WIN environments (name did not match)
2. XML knows CHAM V2 dev ID as well now
M: 1. add mandatory 16 as begin of HWNAME (match with chameleon.h string)
2. add chamv2id as autoid
-----[ 2008-04-28 : references Revision 2.8 ]-----
- INCLUDE/NATIVE/MEN/MACCESS/nt_func.h: MBLOCK_READ_D32 bug fixed
-----[ 2007-10-17 : references Revision 2.7 ]-----
- mk.lib:
CModule::MKIsr(): Deadlock bug fixed: OSS_IrqMaskR() called from ISR
will no longer try to acquire the interrupt spin lock
-----[ 2007-08-23 : references Revision 2.6 ]-----
id.lib, id_sw.lib
- added: USModule-Identification (usm_xxx functions)
-----[ 2007-08-07 : references Revision 2.5 ]-----
MACCESS/nt_func.h: type cast in RSWAP8, RSWAP16, RSWAP32
MAKETMPL/MENBUILD/makefile.inc: added: .exe build from W2k DDK
-----[ 2007-07-26 : references Revision 2.4 ]-----
inf files now with DriverPackageDisplayName entry
-----[ 2007-07-25 : references Revision 2.3 ]-----
- nt_func.h:
- volatile casts and brackets added because hw access problem (detected in m72 driver)
- chameleon_usr[_io].lib:
- by default the chameleon V0/V1 API (Chameleon*()) is not exported any more
this tables are covered anyway by chameleon V2 API!
- added support for MEN PCI vendor ID
- fixed: for Chameleon V1 tables: don't mask modCode Bits 7 - 9
- fixed: BAR descriptors where not found when placed after CPU/BRIDGE descriptors
-----[ 2007-05-02 : references Revision 2.2 ]-----
MK lib:
- new compiled due to OSS_IrqMaskR/OSS_IrqRestore() bugfix
- checked version: debug prints fixed (had caused BSOD)
-----[ 2007-03-30 : references Revision 2.1 ]-----
oss.lib: OSS_IrqMaskR/OSS_IrqRestore() bugfix: nested AcquireInterruptSpinLock call fixed
-----[ 2007-02-22 : references Revision 2.0 ]-----
MK lib:
- dev-sem now claimed during LL-exit
- locking semaphores: error handling fixed
- now SMP save
OSS/MBUF lib:
- now SMP save
ID lib:
- added support for MSx Module (devname generation)
USR_OSS lib:
- 'Global\' prefix for signal event added for Vista
-----[ 2006-06-08 : 13Z061-06 Revision 1.2 ]-----
changed ADDRSPACE_SIZE to 16 (Chameleon BBIS reports real size now)
-----[ 2006-02-28 : references Revision 1.10 ]-----
OSS lib:
- OSS_SigRemove(): sigHandleP check added
-----[ 2006-01-30 : 13Z061-06 Revision 1.1 ]-----
Initial Revision
Licensing Information
===== History of MDIS5 Windows Driver Package 13Z061-70 rev. 1.5.2.18
===== 2013-11-06 built from - MDIS5 LL-Driver 13Z061-06 rev. 1.5
===== - MDIS5 Windows references rev. 2.18
================================================================================
-----[ 2013-11-06 : references Revision 2.18 ]-----
====== Based on Windows MDIS5 System Package 13MD05-70 Rev. 1.5 ======
--- Libraries ---
R: MK: errors and BSOD during Windows shutdown at SC26 with SMB2 driver
M: MK: synchronize power state change with IRP processing during shutdown
-----[ 2012-08-08 : references Revision 2.17 ]-----
=== Libraries ===
R:1. USR_OSS: UOS_KeyWait consumes too much CPU time
2. MK: BSOD 0x8E with EXCEPTION_CODE 0xc0000047 (semaphore max count exceeded)
3. MK: must not call BBIS driver's IrqEnable with masked IRQ
4. MK: prevent concurrent BBIS/LL-Drv. IrqEnable calls
5. MK: support required for chameleon FPGAs with mixed i/o and mem mapped units
6. MK: sub device list not save for concurrent execution
7. MK: M_read/M_write calls from MDIS4 applications not suppported by mistake
8. OSS: workaround in OSS_SemWait() required for SMB2 lib
9. OSS: prevent spin-lock dead-looks
M:1. USR_OSS: delay added to provide CPU time to other threads
2. MK: error handling improved to prevent release of not claimed semaphore
3.a) MK: disabling BBIS IRQ no longer with masked IRQ
b) MK: MK_REVISION set to MDIS_MKREV_2
4. MK: enable BBIS IRQ with claimed semaphore
5. MK: use newer BBIS_CFGINFO_ADDRSPACE prior BBIS_BRDINFO_ADDRSPACE
6. MK: sub device list protected with semaphore
7. MK: support MDIS4 IOCTLs for MDIS4 applications
8.a) OSS: OSS_SemWait: IRQL = DISPATCH_LEVEL: skip waiting
b) OSS: OSS_SemWait: IRQL > DISPATCH_LEVEL: skip KeWaitForSingleObject(), return ERR_OSS
9. OSS: use WDF spin-locks and restrict usage to IRQL <= DISPATCH_LEVEL
-----[ 2010-12-08 : references Revision 2.16 ]-----
====== Based on Windows MDIS5 System Package 13MD05-70 Rev. 1.3 ======
--- Libraries ---
R:1. Power Management support
2. MDIS_API: new MK error codes ERR_MK_SLEEP_ILLHDL, ERR_MK_SLEEP_LOCKED
3. MDIS_API: revision string is empty for M_MK_BLK_REV_ID
4. USR_OSS: signal handling update
5. OSS: signal events stay in signal list after exit on XP SP3
6. OSS: spin lock support functions required for Chameleon BBIS
7. SMB2: DBGWRT failed with zero data pointer
M:1.a) USR_SLEEP library added
b) MK: adapted for Power Management
2. MDIS_API: supports new error code description
3. MDIS_API: string generation fixed
4.a) USR_OSS: SigUnMask removed in UOS_SigWait
b) USR_OSS: terminates no longer signal thread on queue overrun
c) USR_OSS: queue size increased
5. OSS: added close of event for XP SP3
6. OSS: OSS_SpinLockXxx functions added
7. SMB2: fixed debug message
-----[ 2010-11-05 : references Revision 2.15 ]-----
APB5:
R: 1. prevent native file check-in if win-pkg fileset was already checked-in
2. bug: building internal win-pkg if swmodule attribut internal=false set
3. APB5 script error if xml specifies os/notos tag or one sw module is
specified multiple times
4. sometimes, win-pkg zip was checked-in as ascii file
M: 1. dont't ask to check-in native files if win-pkg fileset was checked-in
2. bug fixed: building internal win-pkg only if internal=true set
3. script fixed
4. win-pkg zip check-in fixed
BUILD:
R: missing libraries for executables with the use of API DLLs
M: added libraries to TMPL_TARGETLIBS for API DLLs version
-----[ 2010-11-03 : references Revision 2.14 ]-----
Windows driver package generation (BUILD, APB5):
R:1. new mdiswiz.exe version available
2. internal files not needed for public distribution
M:1. using mdiswiz.exe rev. 1.3
2. removed category public from internal files
SW Modules:
R:1. MDIS_API: new MK error codes ERR_MK_SLEEP_ILLHDL, ERR_MK_SLEEP_LOCKED
2. MK: IRP processing must be synchronized with power management
3. OSS: signal events stay in signal list after exit on XP SP3
4. USR_OSS: SigUnMask at the end of UOS_SigWait incorrect
5. USR_OSS: Queue overrun leads to exit thread, no further signals delivered
M:1. MDIS_API: new built to support new error code description
2.a) MK: block sleep until all IRPs in progress are finished
b) MK: begin no new IRP after system indicates to enter a sleep state
3. OSS: added close of event for XP SP3
4. USR_OSS: SigUnMask removed in UOS_SigWait
5.a) USR_OSS: removed closing thread on queue overrun
b) USR_OSS: queue size increased
-----[ 2010-09-27 : references Revision 2.13 ]-----
R:1. MK: MkDevListGet/SetCtxt() declared for paged segment but PAGED_CODE
missing
2. MK: PREfast warnings for some DBGTRC
3. MK: preventing power state change in kernel mode not supported any more,
user mode application is responsible for
4. MK: support for power management
5. MDIS_API: Revision string is empty for M_MK_BLK_REV_ID
6. SMB2: DBGWRT failed with zero data pointer
M:1. MK: PAGED_CODE added
2. MK: some DBGTRC fixed
3. MK: removed preventing system state change while path opened
4.a) close open ll handle when power state change to sleep mode
b) changed return code for illegal handle
5. MDIS_API: Fixed string generation
6. SMB2: fixed debug message
-----[ 2010-07-26 : references Revision 2.12 ]-----
Windows driver package generation (APB5):
R: WEBART logging doesn't work
M: WEBART logging fixed
-----[ 2010-07-23 : references Revision 2.11 ]-----
Windows driver package generation (APB5):
M:1. 13MD05-70 released
2. new mdiswiz version with fixes in pkg2inf5
3. build environment changed
R:1. use revision from 13MD05-70 as major PRODUCTVERSION
2.a) inf files: mcvs date/revision info in inf header replaced with creation
date and mdiswiz pkg2inf revision
b) inf files: ExcludeFromSelect removed
c) inf files: models without autoid use 'XXX[_SW]&NO_AUTOID'
3. create embedded signature in 64-bit free and checked drivers
SW Modules:
R:1. smb2.lib - 16Z001_SMB: terminate bit could be set if status is polled
before an abort operation finishes
2. smb2_io.lib - ICH SMB: sometimes wasting time during transfer
M:1. smb2.lib - 16Z001_SMB: add max. 500 ms wait time after starting an abort
operation
2. smb2_io.lib - ICH SMB: LocWaitBusyReady function fixed
-----[ 2010-06-11 : references Revision 2.10 ]-----
R:1. mk.lib: check for invalid interrupt object was buggy
2. mk.lib: new address mode MDIS_MA_BB_INFO_PTR
M:1. mk.lib: check for invalid interrupt object removed
2. mk.lib: support for new address mode MDIS_MA_BB_INFO_PTR
-----[ 2010-05-07 : references Revision 2.9 ]-----
R:1. low-level drivers that use new MDIS_MA_BB_INFO_PTR feature
requires chameleon.h (e.g. Z88 driver)
2. support embedded signature for 64-bit free and checked drivers
M:1.a) chameleon.h added
b) chameleon lib documentation added
2. sign all built 64-bit .sys files
-----[ 2010-04-14 : references Revision 2.8 ]-----
R: swapping variant of PLD library required for M72 driver
M: pld_sw.lib added
-----[ 2010-04-14 : references Revision 2.7 ]-----
R:1. VME4WIN for MDIS5 supported
2. mdiswiz support for new busif SMBus required
M:1.a) mk : added check for invalid interrupt object
b) oss: adapted VME KM interface access
2. replaced Qt3 based mdiswiz by Qt4 based mdiswiz
-----[ 2009-11-09 : references Revision 2.6 ]-----
R:1. APB5: missing check for unsupported setup/build options
2. APB5: .cat file was not timestamped
3. OSS_IrqRestore decreases IRQL that was not increased by current context
4. OSS_SigRemove ZwClose leads to BSOD at Windows XP
M:1. setup/build option check improved
2. /t <URL> added to signtool sign
3. Changed order to reset irqmasked
4. Added check for os version
-----[ 2009-10-30 : references Revision 2.5 ]-----
R: OSS lib: Mapped io address is zero
M: OSS lib: Fixed set virtAddr to physAddr at IO addr space
-----[ 2009-10-28 : references Revision 2.4 ]-----
R:1. MK lib: new BBIS bus type OSS_BUSTYPE_SMB handled as error
2. OSS lib: no interrupt spinlock release at last call of OSS_IrqRestore
M:1. MK: BBIS bus type check removed (to be open minded for future bus types)
2. OSS: Removed restting irqmasked at OSS_IrqMaskR
-----[ 2009-10-23 : references Revision 2.3 ]-----
R:1. MkInitExit and MkEvtDeviceD0EntryPostInterruptsEnabled must be nonpageable
2. OSS lib: irqmasked bit not cleared after releasing interrupt spinlock
M:1. MK lib: Fixed to be nonpageable
2. OSS lib: Fixed to reset irqmasked at OSS_IrqRestore
-----[ 2009-10-20 : references Revision 2.2 ]-----
R:1. Releasing interrupt spinlock that had not been masked by OSS_IrqMaskR leads
to lowering IRQL in ISR
2. Fixed OSS Libraray OSS_IRQ_HANDLE
M:1. Fixed releasing interrupt spinlock just when masked before in OSS library
2. Recompilation of MK library
-----[ 2009-10-12 : references Revision 2.1 ]-----
Initial Revision
-----[ 2009-09-02 : 13Z061-06 Revision 1.5 ]-----
13z06106.xml:
R: Porting to MDIS5
M: fixed description for MDIS5
-----[ 2009-07-10 : 13Z061-06 Revision 1.4 ]-----
R: Porting to MDIS5: backwards compatibility to MDIS4 (Linux)
M: added defines for new MDIS5 types
-----[ 2009-03-02 : 13Z061-06 Revision 1.3 ]-----
fixed: section api_functions: renamed function names to Z61_*()
R: no 64 Bit support
M: changed set/getstat and path type to support 64 Bit
13z06106.xml:
R: 1. device was not found in WIN environments (name did not match)
2. XML knows CHAM V2 dev ID as well now
M: 1. add mandatory 16 as begin of HWNAME (match with chameleon.h string)
2. add chamv2id as autoid
-----[ 2006-06-08 : 13Z061-06 Revision 1.2 ]-----
changed ADDRSPACE_SIZE to 16 (Chameleon BBIS reports real size now)
-----[ 2006-01-30 : 13Z061-06 Revision 1.1 ]-----
Initial Revision
Download 13z06170_mdis4.zipiThis is the MDIS4 Windows Driver Package.It requires the MDIS4 System Package and is not compatible to MDIS5. ================================================================================
===== History of MDIS4 Windows Driver Package 13Z061-70 rev. 1.5.2.10
===== 2009-12-11 built from - MDIS4 LL-Driver 13Z061-06 rev. 1.5
===== - MDIS4 Windows references rev. 2.10
================================================================================
-----[ 2009-12-07 : references Revision 2.10 ]-----
R:1. address mapping must not be done for new address mode MDIS_MA_BB_INFO_PTR
2. OSS_IrqRestore() called within ISR context: Releasing interrupt spinlock
that was not masked by OSS_IrqMaskR lowers IRQL (error).
M:1.a) mk.lib: only do address and resource mapping if MDIS_MA_FLAG_NOMAP is not set
.b) mk.lib: initialize the address structures correctly if mapping is not done
2.a) mk.lib: new compiled due to new added OSS_IRQ_HANDLE::irqmasked parameter
.b) oss.lib: OSS_IrqMaskR/OSS_IrqRestore(): Using new OSS_IRQ_HANDLE::irqmasked
parameter to prevent erroneous unmasking.
-----[ 2009-09-02 : 13Z061-06 Revision 1.5 ]-----
13z06106.xml:
R: Porting to MDIS5
M: fixed description for MDIS5
-----[ 2009-07-10 : 13Z061-06 Revision 1.4 ]-----
R: Porting to MDIS5: backwards compatibility to MDIS4 (Linux)
M: added defines for new MDIS5 types
-----[ 2009-05-18 : references Revision 2.9 ]-----
- chameleon_usr.lib, dbg.lib, desc.lib, id.lib, mbuf.lib, pld.lib:
new compiled, no functional changes
- mk.lib:
R:1. If OSS_IrqMaskR() will be called at PASSIVE_LEVEL on CPU2 while MKIsr()
runs at CPU1, OSS_IrqMaskR() acquires no spinnlock - this is an error!
2. New BBIS interface function BB_SetIrqHandle()
M:1. MKIsr(): m_irqHdl.mask++ / m_irqHdl.mask-- removed, see also OSS_IrqMaskR()
2. MKProvideRes(): for BBIS bus driver with >=MDIS_BKREV_3:
call BB_SetIrqHandle() if the function pointer is not NULL
- oss.lib:
R: If OSS_IrqMaskR() will be called at PASSIVE_LEVEL on CPU2 while MKIsr()
runs at CPU1, OSS_IrqMaskR() acquires no spinnlock - this is an error!
M: OSS_IrqMaskR(): condition to acquire interrupt spin look changed,
see also MKIsr()
-----[ 2009-03-02 : 13Z061-06 Revision 1.3 ]-----
fixed: section api_functions: renamed function names to Z61_*()
R: no 64 Bit support
M: changed set/getstat and path type to support 64 Bit
13z06106.xml:
R: 1. device was not found in WIN environments (name did not match)
2. XML knows CHAM V2 dev ID as well now
M: 1. add mandatory 16 as begin of HWNAME (match with chameleon.h string)
2. add chamv2id as autoid
-----[ 2008-04-28 : references Revision 2.8 ]-----
- INCLUDE/NATIVE/MEN/MACCESS/nt_func.h: MBLOCK_READ_D32 bug fixed
-----[ 2007-10-17 : references Revision 2.7 ]-----
- mk.lib:
CModule::MKIsr(): Deadlock bug fixed: OSS_IrqMaskR() called from ISR
will no longer try to acquire the interrupt spin lock
-----[ 2007-08-23 : references Revision 2.6 ]-----
id.lib, id_sw.lib
- added: USModule-Identification (usm_xxx functions)
-----[ 2007-08-07 : references Revision 2.5 ]-----
MACCESS/nt_func.h: type cast in RSWAP8, RSWAP16, RSWAP32
MAKETMPL/MENBUILD/makefile.inc: added: .exe build from W2k DDK
-----[ 2007-07-26 : references Revision 2.4 ]-----
inf files now with DriverPackageDisplayName entry
-----[ 2007-07-25 : references Revision 2.3 ]-----
- nt_func.h:
- volatile casts and brackets added because hw access problem (detected in m72 driver)
- chameleon_usr[_io].lib:
- by default the chameleon V0/V1 API (Chameleon*()) is not exported any more
this tables are covered anyway by chameleon V2 API!
- added support for MEN PCI vendor ID
- fixed: for Chameleon V1 tables: don't mask modCode Bits 7 - 9
- fixed: BAR descriptors where not found when placed after CPU/BRIDGE descriptors
-----[ 2007-05-02 : references Revision 2.2 ]-----
MK lib:
- new compiled due to OSS_IrqMaskR/OSS_IrqRestore() bugfix
- checked version: debug prints fixed (had caused BSOD)
-----[ 2007-03-30 : references Revision 2.1 ]-----
oss.lib: OSS_IrqMaskR/OSS_IrqRestore() bugfix: nested AcquireInterruptSpinLock call fixed
-----[ 2007-02-22 : references Revision 2.0 ]-----
MK lib:
- dev-sem now claimed during LL-exit
- locking semaphores: error handling fixed
- now SMP save
OSS/MBUF lib:
- now SMP save
ID lib:
- added support for MSx Module (devname generation)
USR_OSS lib:
- 'Global\' prefix for signal event added for Vista
-----[ 2006-06-08 : 13Z061-06 Revision 1.2 ]-----
changed ADDRSPACE_SIZE to 16 (Chameleon BBIS reports real size now)
-----[ 2006-02-28 : references Revision 1.10 ]-----
OSS lib:
- OSS_SigRemove(): sigHandleP check added
-----[ 2006-01-30 : 13Z061-06 Revision 1.1 ]-----
Initial Revision
Licensing Information
Supported MEN Standard Products
Supported Operating System
- Windows 2000 (MDIS4/2004 only)
- Windows XP
- Windows Vista 32-bit
- Windows Vista 64-bit (MDIS5 only)
- Windows 7 32-bit (MDIS5 only)
- Windows 7 64-bit (MDIS5 only)
Included
13Z061-06 (source code)
Features
- Supports up to 16 channels
- Access to the PERIOD and PULSE register of each channel
Included Documentation
HTML documentation
Note
Requires MDIS4 or MDIS5 system package
Licensing Information
This article is free of charge.
Ordering Information & Downloads
Main Software
13Z061-70
MDIS4/2004 / MDIS5 Windows driver (MEN) for 16Z061_PWM
Requires a compatible MDIS system package.
Related Software
13Z061-06
MDIS5 low-level driver sources (MEN) for 16Z061_PWM