Parallel port - HW capable of EPP mode, HardwareCapabilities says

Discussion in 'Windows Vista Drivers' started by smartrun, Sep 22, 2004.

  1. smartrun

    smartrun Guest

    I have a customer with many Dell Inspiron 8000 laptops that need to talk to
    special (internally developed) hardware. The special hardware doesn't have
    support for the IEEE standard mode to EPP mode negotiation, so I'm having to
    develop a kernel mode driver that forces the LPTx port into EPP mode.

    My driver is pretty far along - it places itself on top of the
    \Devices\ParallelPort0 driver stack and succeeds in reserving the port via
    IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE.

    When my driver asks Windows 2000 for the PARALLEL_PNP_INFORMATION structure
    for the device, the HardwareCapabilities member indicates no EPP support
    PPT_EPP_32_PRESENT and PPT_EPP_PRESENT aren't set). PPT_ECP_PRESENT is set.
    The SuperIO chip running on these laptops is EPP capable. I've verified this
    using test programs and kernel mode drivers that directly access I/O ports.

    Since the parport.sys driver queries the HardwareCapabilities when I issue
    IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE, I'm expecting the call will fail.

    My question is, what should I do? My initial reaction is to talk directly
    with the SuperIO chip and enable EPP mode. That isn't Windows 2K/XP friendly
    and may cause problems if some other kernel mode device interrupts my SuperIO
    access and performs its' own.

    Are there better solutions (other than ask my customer to purchase new
    hardware)?
     
    smartrun, Sep 22, 2004
    #1
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.