Work Note: Mirgation WinCE 6.0 USBD.DLL to WinCE 5.0 at 2007/6/21

基本上 USBD Driver 在目前 WinCE 6.0 是所謂的 USBD v1.3 版(可見 usbdi.h)

新增了一個函式 GetClientRegistryPath

主要問題是 WinCE 6.0 的 Memory Map 已經跟 WinCE 5.0 不一樣,增加了更多系統核心安全性的東西。

目前是簡單的將使用 CeAllocAsynchronousBuffer(Only WinCE 6.0) 的指標都直接指定到原本Buffer。

有什麼 Side effect 還需要經過 CETK測試。今天只是讓它能Build、能動而已。

原本想將 WinCE 6.0 的 USB Storage Class 也 弄到 WinCE 5.0 ,目前進度非常不樂觀很多東西,看起來比較複雜設計的與 WinCE 5.0 裡面不同。不過 WinCE 5.0的Storage Class 問題蠻多,也不認得 USB CDROM,雖然有現成的東西可用(WM 版本的M$有做過一些修改)。

至於為啥會想做這件事情,是因為公司目前幾乎所有的Device 都走 USB BUS ,在經過 Suspend/Resume or Pulg In/Out 後,發生很多問題,跟據M$ CE Development Team 的Blog 建議是換成Windows Embedded CE 6.0比較好,但是目前的情況下,這不是我能決定的事情,因此想將 Windows CE 6.0 的 EHCI Host Driver & Class Driver Mirgation to Windows CE 5.0 上,一般應該是將 Windows CE 5.0 BSP porting to Windows Embedded 6.0 才是,這個算是反其道而行吧。

下一步可能先將 EHCI Driver 組成弄乾淨一點,將 NXP 的 ISP1761 HOST Driver 重寫過,NXP提供的 Driver 還是有 Memory Poll Allocate/Release 的問題。

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

%d 位部落客按了讚: