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:
Trizeps IV: patch_tr4ce6_wm9715_2013_04_10.zip
Trizeps V: patch_tr5ce6_wm9715_2013_03_15.zip
Trizeps VI: patch_tr6ce6_wm9715_2013_04_08.zip
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)
Trizeps VI patch_tr6ce6_2011_02_21.zip
Support for non-volatile RAM-based registry for RAM-images (nk.nb0) added.
Trizeps VI patch_tr6ce6_2011_02_16.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.
Trizeps IV patch_tr4ce6_bf_flash.zip
Trizeps V patch_tr5ce6_bf_flash.zip
Patch-Instructions (for Trizeps V replace tr4conxs with tr5conxs):
Backup your project.
Copy PSMHAL.lib, Registry.lib, PSMFSD.dll and PSMFSD.rel to .\wince600\platform\tr4conxs\src\drivers\ipsm3700\pxa2xx\pbk4.2\bin.
Copy .\debug\hal.lib to .\wince600\platform\tr4conxs\binary\lib\armv4i\debug and .\wince600\platform\tr4conxs\lib\armv4i\debug.
Copy .\retail\hal.lib to .\wince600\platform\tr4conxs\binary\lib\armv4i\retail and .\wince600\platform\tr4conxs\lib\armv4i\retail.
Open your solution.
Build → Open Build Release Directory in Build Window
Change to .\wince600\platform\tr4conxs\src\oal directory and enter
build -c
.Close Build Window.
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:
Trizeps IV: patch_tr4ce5_wm9715_2013_04_05.zip
Trizeps V: patch_tr5ce5_wm9715_2013_03_15.zip
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.
Trizeps IV patch_tr4ce5_bf_flash.zip
Trizeps V patch_tr5ce5_bf_flash.zip
Patch-Instructions (for Trizeps V replace tr4conxs with tr5conxs):
Backup your project.
Copy PSMHAL.lib, PSMFSD.dll and PSMFSD.rel to .\wince500\platform\tr4conxs\src\drivers\ipsm3700\pxa2xx\pbk4.2\bin.
Copy .\debug\hal.lib to .\wince500\platform\tr4conxs\binary\tr4conxs_20xxqy\lib\armv4i\debug and .\wince500\platform\tr4conxs\lib\armv4i\debug.
Copy .\retail\hal.lib to .\wince500\platform\tr4conxs\binary\tr4conxs_20xxqy\lib\armv4i\retail and .\wince500\platform\tr4conxs\lib\armv4i\retail.
Open your solution.
Build OS → Open Release Directory
Change to .\wince500\platform\tr4conxs\src\kernel directory and enter
build -c
.Close Build Window.
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