You cannot detect, read from, or write to a Secure Digital Input/Output (SDIO) card on a Windows CE 5.0 platform that is based on the SMDK2410 Samsung MCU (891898)



The information in this article applies to:

  • Microsoft Windows CE 5.0

SYMPTOMS

When you port the Microsoft Windows CE 5.0 SMDK2410 Samsung Secure Digital host controller driver to a Windows CE 5.0 platform that is based on the SMDK2410 Samsung MCU, you may experience one or more of the following symptoms with the SMDK2410 platform:
  • You cannot detect a Secure Digital Input/Output (SDIO) card when it is inserted or removed.
  • You cannot read to or write from an SDIO card that is inserted into the device.
  • Other devices that are used with the SMDK2410 platform may not work correctly.

CAUSE

These problems occur because the default general purpose input/output (GPIO) configuration registry values for the SMDK2410 Samsung host controller driver in Windows CE 5.0 are not correct.

Note These GPIO registry values configure the GPIO ports that are used for SDIO card insertion/removal detection and for SDIO read/write switch detection.

The SMDK2410 host controller driver GPIO registry entries are stored in the following file:

%_WINCEROOT%\Platform\Smdk2410\Files\Platform.reg

The default SMDK2410 host controller driver GPIO registry values are listed in the Platform.reg file as follows:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\SDHC_SMDK2410]
"CardDetectControlMask"=dword:fffcffff
"CardDetectControlFlag"=dword:0
"CardDetectPullupMask"=dword:ffffffef
"CardDetectPullupFlag"=dword:10
"CardReadWriteControlMask"=dword:ffcfffff
"CardReadWriteControlFlag"=dword:0
"CardReadWritePullupMask"=dword:ffffffbf
"CardReadWritePullupFlag"=dword:40
The SMDK2410 host controller driver GPIO default registry values incorrectly configure the following GPIO ports:
  • GPG10
  • GPH8
The following GPIO ports should be configured:
  • GPG8
  • GPH10
Additionally, these registry values incorrectly set the disable pull-up registers for the following GPIO ports:
  • GPG4
  • GPH6

RESOLUTION

To resolve this problem, correct the GPIO registry values for the SMDK2410 host controller driver. To do this, follow these steps:
  1. Start Notepad.
  2. Open the Platform.reg file. The Platform.reg file is located in the following folder:

    %_WINCEROOT%\Platform\Smdk2410\Files\

  3. Locate the following entry in the Platform.reg file:
    [HKEY_LOCAL_MACHINE\Drivers\BuiltIn\SDHC_SMDK2410]
    "CardDetectControlMask"=dword:fffcffff
    "CardDetectControlFlag"=dword:0
    "CardDetectPullupMask"=dword:ffffffef
    "CardDetectPullupFlag"=dword:10
    "CardReadWriteControlMask"=dword:ffcfffff
    "CardReadWriteControlFlag"=dword:0
    "CardReadWritePullupMask"=dword:ffffffbf
    "CardReadWritePullupFlag"=dword:40
  4. Change the registry entries to the following:
    [HKEY_LOCAL_MACHINE\Drivers\BuiltIn\SDHC_SMDK2410]
    "CardDetectControlMask"=dword:ffcfffff
    "CardDetectControlFlag"=dword:0
    "CardDetectPullupMask"=dword:fffffbff
    "CardDetectPullupFlag"=dword:0
    "CardReadWriteControlMask"=dword:fffcffff
    "CardReadWriteControlFlag"=dword:0
    "CardReadWritePullupMask"=dword:fffffeff
    "CardReadWritePullupFlag"=dword:0
  5. On the File menu, click Save, and then exit Notepad.

STATUS

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

MORE INFORMATION

The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, regarding the performance or reliability of these products.

Modification Type:MajorLast Reviewed:1/27/2005
Keywords:kbpending kbenv kbBug kbtshoot KB891898 kbAudDeveloper