A Windows CE XScale-based platform cannot perform serial transactions after the platform resumes from standby (891897)



The information in this article applies to:

  • Microsoft Windows CE 5.0

SYMPTOMS

When a Microsoft Windows CE XScale-based platform resumes from standby, you cannot perform serial transactions.

CAUSE

This problem occurs because of a problem with the serial driver for the XScale platform in Windows CE 5.0 Platform Builder.

RESOLUTION

To resolve this problem, follow these steps:
  1. Open the WINCE500\PUBLIC\COMMON\OAK\CSP\ARM\INTEL\PXA25X\SERIAL\PDD16550\xsc16550.cpp source file for your XScale platform in Windows CE 5.0 Platform Builder.
  2. Locate the following function in the source file:
    void CXSCReg16550::Restore()
    {
        if (m_fIsBackedUp) {
            Restore();
            Write_SIR(m_SIRBackup);
        }
    }
  3. Replace the function in step 2 with the following code:
    void CXSCReg16550::Restore()
    {
        if (m_fIsBackedUp) {
            CReg16550::Restore();
            Write_SIR(m_SIRBackup);
        }
    }
  4. Save the file.
  5. Rebuild the platform.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Modification Type:MajorLast Reviewed:2/3/2005
Keywords:kbpending kbBug kbtshoot KB891897 kbAudDeveloper