Patches & Workaround for Board-Support-Packages

Patches & Workaround for Board-Support-Packages

This page contains patches and workarounds to the latest BSP-releases and Windows Embedded CE Images. Those patches will be applied to subsequent BSP-releases.

Patches & Workaround CE6.0 BSPs

Change of Audio/Touch Codec on Trizeps Modules

Because the UCB1400-codec used on most Trizeps modules is announced to be EOL, the Wolfson WM9715-codec will be used as replacement part on new revisions of those modules.
This preliminary patch is availlable for all who want to be prepared for the revision change. The new drivers will automatically detect which codec is used and automatically scale values measured with a WM9715-module to fit UCB1400. The WM9715 uses 12bit ADC, whereas the UCB1400 only had a 10bit ADC.

New drvlib_app.dll function so see, which Codec is mounted: AC97_GetCodecID

If UCB1400 compatible-values are not needed, set these registry-keys to remove extra calculations and benefit from the extra ADC-resolution:

[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH] "scaleADC0"=dword:0 "scaleADC1"=dword:0 "scaleADC2"=dword:0 "scaleADC3"=dword:0 "scaleADCx"=dword:0 "scaleADCy"=dword:0 "scaleADCz"=dword:0 scaling is done like shown here: #define CALC_ADC( x, scale)\ ((scale==0)?x:(((x<<10)/(scale&0xFFFF))+((scale&0xFFFF0000)>>16))) .... x = CALC_ADC( xm, scaleADC0); ....

Issue: Images built for the UCB1400 codec only will not boot. The codec affects audio, touch and ADC-measurements functions. Following files need to be replaced: wavedev.dll, ucbtouch.dll, drvlib_app.dll. Please note, that if you written an own driver that links against drvlib.lib and uses ADC or other codec-functions, you might need to recompile that too.

Change of USB OTG Phy

The new Trizeps-IV M comes with a new ST OTG Phy chip which now interprets the speed select input. The old NXP Phy did not interpret the USB slewing rate select. It was alway selected as „high“. The Old BSPs did not set this GPIO so that the new PHY is not able to handle Full Speed connections well. The BSP update contains corrected USB drivers to handle LOW and FULL Speed connections with old and new Phys correctly.

Affected BSP: All Trizeps IV, V and VI BSPs before 2013.
Patch:

Windows Embedded CE6 R3 2012M05 prevents Stores from beeing mounted

Issue: After updating Platform-Builder with 2012M05-update, stores like SD-cards or USB-Sticks are not visible anymore.
Affected BSP: All Trizeps BSPs before 2012Q3.
Patch: patch_mspart_2012_07_10.zip.

IPSM4 Flashdisk lost Fix ( BSP 2010Q4_3)

Issue: Flashdisk-folder is not mounted.
Patch: patch_tr4ce6_ipsm4_2012_05_16.zip

2010Q4

Issue: Improvement of Trizeps IV-WL WLAN-driver (higher TX-Power).
Affected BSP: tr4conxs_2010Q4_2 and earlier.
Bug-Time: fixed in 2010Q4_3.
Workaround: n.a.
Patch: patch_tr4ce6_wlan_2011_03_23.zip

New Nand-Flash Fix ( BSP up to 2010Q4)

This patch adds support for 4GBit ( product: 26025,26065,26125) and 8GBit NAND-flashes for Trizeps VI modules.
Support for non-volatile RAM-based registry for RAM (nk.nb0) and XIP-images:(xip.bin)

Support for non-volatile RAM-based registry for RAM-images (nk.nb0) added.

BF-flash Fix ( BSP prior to 2010Q4)

The newest Trizeps-Modules come with BF-flash.
This flash is incompatible to older versions of the IPSM3700 (flashdisk-driver) and older versions of the kernel (save registry function).
To only change a minimum to existing verified images apply follwing patch and rebuild the kernel.

Patch-Instructions (for Trizeps V replace tr4conxs with tr5conxs):

  1. Backup your project.

  2. Copy PSMHAL.lib, Registry.lib, PSMFSD.dll and PSMFSD.rel to .\wince600\platform\tr4conxs\src\drivers\ipsm3700\pxa2xx\pbk4.2\bin.

  3. Copy .\debug\hal.lib to .\wince600\platform\tr4conxs\binary\lib\armv4i\debug and .\wince600\platform\tr4conxs\lib\armv4i\debug.

  4. Copy .\retail\hal.lib to .\wince600\platform\tr4conxs\binary\lib\armv4i\retail and .\wince600\platform\tr4conxs\lib\armv4i\retail.

  5. Open your solution.

  6. Build → Open Build Release Directory in Build Window

  7. Change to .\wince600\platform\tr4conxs\src\oal directory and enter build -c.

  8. Close Build Window.

  9. Build → Make Run-Time Image.

2009Q3

Issue: On some bigger images, registry exceeds the reserved space of 512kB. Saving registry might cause hang.
Affected BSP: tr4conxs_2009Q3.
Bug-Time: feature will be added in next BSP.
Workaround: n.a.
Patch: patch_tr4ce6_registry_2010_06_28.zip


Issue:

  • USB-Slave Port won't function after suspend/resume.

  • Not all MFPR (GPIO) get properly configured after suspend/resume.

  • Device may hang on a warm soft-reset, when USB-Slave-cable is connected.

Affected BSP: all previous tr5conxs-BSP.
Bug-Time: fixed in tr5conxs_2009Q3_2.
Workaround: n.a.
Patch: tr5ce6patch_2009_10_27.zip


Issue: Add support IOCTL_CAMERA_GET_PICTURE for iPAN7.
Affected BSP: tr4conxs_2009Q3.
Bug-Time: feature will be added in next BSP.
Workaround: n.a.
Patch: patch_tr4ce6_camera_2009_10_19.zip


Issue: USB-Host Port 2 won't work with PXA270M processor.
The new silicon for the PXA270M-processor now functions as expected (like the PXA270).
A USB-Host-driver bugfix (17.12.2008) for the early PXA270M silicon now causes the same issue.
Images with an older USB-Host-driver will work with the new PXA270M-Trizeps4-modules without problems.
Affected BSP: tr4conxs_2009Q3, tr4uconxs_2009Q1.
Bug-Time: fixed in tr4conxs_2009Q3_3.
Workaround: n.a.
Patch: ce6patch_ohci_2009_10_13.zip


Issue: CanMon and DualCanMon won't open.
Affected BSP: tr4conxs_2009Q3, tr4conxs_2009Q3_1 and tr5conxs_2009Q3.
Bug-Time: fixed in tr4conxs_2009Q3_2, tr5conxs_2009Q3_1.
Workaround: Remove the K-flag platform.bib-entries of SingleCan.dll, gfcan32CE.dll and DualCan.dll.
Patch: n.a.


Issue: The 3 Visual-Studio Sample-Projects open with a warning message.
Affected BSP: tr4conxs_2009Q3.
Bug-Time: fixed in tr4conxs_2009Q3_1.
Workaround: n.a.
Patch: patch_2009_08_18.zip

2009Q1

Issue: Touch-driver does not work with transcriber. USBFN driver does not reconnect after suspend
Affected BSP: tr4uconxs_2009Q1.
Bug-Time: n.a.
Workaround: n.a.
Patch: patch_2009_06_15.zip

2008Q4


Issue:

  • Fixed bug with ethernet-kitl.

  • Added support for eboot rndis-transport.

Affected BSP: 2008Q4 and prior Windows Embedded CE6 BSP-releases for Trizeps4 (tr4conxs and tr4uconxs).
Bug-Time:
Workaround:
Use RNDIS (USB-Function) KITL-transport.
Or use the patch.
Patch: patch_tr4_u_conxs_eboot_patch_2009_03_23.zip


Issue: Recording sound after suspend-resume is not possible.
Affected BSP: 2008Q4 releases of Trizeps4 and Trizeps5 BSP.
Bug-Time:

  • Trizeps5 and Trizeps4(CE6): 13.10.2008 - 30.01.2009

  • Trizeps4(CE5): 17.07.2008 - 30.01.2009

Workaround:
As workaround for existing images set following registry key. This will also disable the hardware adc-filter for touch and analog-inputs.

[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH] DisableFilter = 1

Otherwise use the patch.
Patch: patch_2009_01_30.zip


Patches & Workaround CE5.0 BSPs

Change of Audio/Touch Codec on Trizeps Modules

Because the UCB1400-codec used on most Trizeps modules is announced to be EOL, the Wolfson WM9715-codec will be used as replacement part on new revisions of those modules.
This preliminary patch is availlable for all who want to be prepared for the revision change. The new drivers will automatically detect which codec is used and automatically scale values measured with a WM9715-module to fit UCB1400. The WM9715 uses 12bit ADC, whereas the UCB1400 only had a 10bit ADC.

New drvlib_app.dll function so see, which Codec is mounted: AC97_GetCodecID

If UCB1400 compatible-values are not needed, set these registry-keys to remove extra calculations and benefit from the extra ADC-resolution:

[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH] "scaleADC0"=dword:0 "scaleADC1"=dword:0 "scaleADC2"=dword:0 "scaleADC3"=dword:0 "scaleADCx"=dword:0 "scaleADCy"=dword:0 "scaleADCz"=dword:0 scaling is done like shown here: #define CALC_ADC( x, scale)\ ((scale==0)?x:(((x<<10)/(scale&0xFFFF))+((scale&0xFFFF0000)>>16))) .... x = CALC_ADC( xm, scaleADC0); ....

Issue: Images built for the UCB1400 codec only will not boot. The codec affects audio, touch and ADC-measurements functions. Following files need to be replaced: wavedev.dll, ucbtouch.dll, drvlib_app.dll. Please note, that if you written an own driver that links against drvlib.lib and uses ADC or other codec-functions, you might need to recompile that too.
Affected BSP: All Trizeps IV, V and VI BSPs before 2013.
Patch:

IPSM4 Flashdisk lost Fix ( BSP 2010Q4)

Issue: Flashdisk-folder is not mounted.
Patch: patch_tr4ce5_ipsm4_2012_05_09.zip

Touch-Transcriber Fix ( some BSPs prior to 2010Q4)

Issue: Transcriber-application does not work.
Patch: tr4ce5_ucbtouch_2011_04_13.zip

BF-flash Fix ( BSP prior to 2010Q4)

The newest Trizeps-Modules come with BF-flash.
This flash is incompatible to older versions of the IPSM3700 (flashdisk-driver) and older versions of the kernel (save registry function).
To only change a minimum to existing verified images apply follwing patch and rebuild the kernel.

Patch-Instructions (for Trizeps V replace tr4conxs with tr5conxs):

  1. Backup your project.

  2. Copy PSMHAL.lib, PSMFSD.dll and PSMFSD.rel to .\wince500\platform\tr4conxs\src\drivers\ipsm3700\pxa2xx\pbk4.2\bin.

  3. Copy .\debug\hal.lib to .\wince500\platform\tr4conxs\binary\tr4conxs_20xxqy\lib\armv4i\debug and .\wince500\platform\tr4conxs\lib\armv4i\debug.

  4. Copy .\retail\hal.lib to .\wince500\platform\tr4conxs\binary\tr4conxs_20xxqy\lib\armv4i\retail and .\wince500\platform\tr4conxs\lib\armv4i\retail.

  5. Open your solution.

  6. Build OS → Open Release Directory

  7. Change to .\wince500\platform\tr4conxs\src\kernel directory and enter build -c.

  8. Close Build Window.

  9. Build OS → Make Run-Time Image.

2009Q3

Issue: GPIO_Set_PWM() does not function properly.
Affected BSP: tr5conxs_2009Q3.
Bug-Time: plan fix in next BSP.
Workaround: n.a.
Patch: patch_tr5ce5_2009_11_02.zip


Issue: USB-Host Port 2 won't work with PXA270M processor.
The new silicon for the PXA270M-processor now functions as expected (like the PXA270).
A USB-Host-driver bugfix (17.12.2008) for the early PXA270M silicon now causes the same issue.
Images with an older USB-Host-driver will work with the new PXA270M-Trizeps4-modules without problems.
Affected BSP: tr4conxs_2009Q3.
Bug-Time: fixed in tr4conxs_2009Q3_1.
Workaround: Copy files of the ohci2.dll from patch(see beneath) to flashdisk.
Rename it to ohci3.dll and modify:

Patch: patch_ohci_2009_10_13.zip