2450 nand flash 当U盘

lilbi   2009-12-2 13:44 楼主
1. usb 可以识别 sd卡 在pc 上显示盘符;
   根据 bsp 修改 注册表

2. usb 识别nand : 在 pc 上设备管理器中显示 感叹号, 无法显示盘符

什么原因呢?
注册表信息:
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFLASH]
    "DefaultFileSystem"="FATFS"
    "PartitionDriver"="mspart.dll"
        "AutoMount"=dword:1
    "AutoPart"=dword:1
    "AutoFormat"=dword:1
    "Folder"="ResidentFlash"
    "Name"="Microsoft Flash Disk"

。。。
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\SMFLASH]
        "Prefix"="DSK"
    "Dll"="smflash.dll"
    "Index"=dword:1
        "Order"=dword:0
    "Profile"="SMFLASH"
    "IClass"="{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"

。。。
[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Mass_Storage_Class]
        "Dll"="usbmsfn.dll"
        "InterfaceSubClass"=dword:06
        "InterfaceProtocol"=dword:50
        "DeviceName"="DSK1:"
        "FriendlyName"="Mass Storage"
        "idVendor"=dword:045E
        "Manufacturer"="Speedoe"
        "idProduct"=dword:1010
        "Product"="eSlickII"
        "bcdDevice"=dword:0
        "Removable"=dword:0

回复评论 (10)

提示: 作者被禁止或删除 内容自动屏蔽
点赞  2009-12-2 14:00
你如果是smdk2450,看一下smdk2450.bat中BSP_USBFNCLASS有没有修改 
点赞  2009-12-2 14:14
改了的:
set BSP_USBFNCLASS=MASS_STORAGE
点赞  2009-12-2 14:19

5楼 yxc 

从你的注册表信息看,你是用的wince带的nand驱动吧?我的是用的PocketMory,做了一些修改后就能当成U盘用了。
点赞  2009-12-2 14:28
只有用SD和MLC NAND Flash实现过当U盘,用SLC Flash出现跟楼主同样问题;
如果哪位兄弟在2440实现的话,请慷慨解答!!
点赞  2009-12-2 16:43
引用: 引用 5 楼 pjl5465358 的回复:
只有用SD和MLC NAND Flash实现过当U盘,用SLC Flash出现跟楼主同样问题;
如果哪位兄弟在2440实现的话,请慷慨解答!!

这个应该和是否为SLC没关系,如果是在FLASH建立一个FAT区,并且由device.exe加载应该就可以的。
点赞  2009-12-2 18:11
SMDK2450 DOC目录下中的一份文档,也只提到SD和MLC NAND Flash当U盘;
请有过SLC Flash当U盘成功的人士解答!
点赞  2009-12-2 18:29
引用: 引用 7 楼 pjl5465358 的回复:
SMDK2450 DOC目录下中的一份文档,也只提到SD和MLC NAND Flash当U盘;
请有过SLC Flash当U盘成功的人士解答!

和cpu及flash类型无关
确认一个问题:我看你的注册表,你使用的不是samsung的flash driver(whimory)方案吧?
点赞  2009-12-3 08:38
关注中,现在我nand已经分区成FAT了能在mydevice中看到分区的盘,但是pc还是不能通过usb识别wince为u盘,在设备管理器中也有黄色感叹号!怎么办??我的是官方2440的bsp??
点赞  2009-12-3 09:16
引用: 引用 8 楼 guopeixin 的回复:

和cpu及flash类型无关
确认一个问题:我看你的注册表,你使用的不是samsung的flash driver(whimory)方案吧?

samsung的flash driver(whimory)

IF BSP_NONANDFS !
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\SMFlash]
        "DriverPath"="Drivers\\BlockDevice\\SMFlash"
        "LoadFlags"=dword:1
        "MountFlags"=dword:11
        "BootPhase"=dword:0

[HKEY_LOCAL_MACHINE\Drivers\BlockDevice\SMFlash]
        "Prefix"="DSK"
        "Dll"="BIBDrv.dll"
        "Order"=dword:0
        "Ioctl"=dword:4
        "Profile"="SMFlash"
        "FriendlyName"="Samsung Flash Driver"
        "MountFlags"=dword:11
        "BootPhase"=dword:0

; Bind BINFS to the block driver
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFlash]
        "DefaultFileSystem"="BINFS"
        "PartitionDriver"="mspart.dll"
        "AutoMount"=dword:1
        "AutoPart"=dword:1
        "MountFlags"=dword:11
        "Folder"="ResidentFlash"
        "Name"="Samsung Flash Disk"
        "BootPhase"=dword:0
       
[HKEY_LOCAL_MACHINE\init\BootVars]
                   "SystemHive"="Documents and Settings\\system.hv"
                   "ProfileDir"="Documents and Settings"
                   "Start DevMgr" = dword:1
                   "DefaultUser" = "default"
                   "Flags"=dword:3
                   "RegistryFlags" = dword:1
ENDIF ; BSP_NONANDFS

IF BSP_POCKETMORY

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\FlashDisk]
   "Prefix"="DSK"
   "Dll"="ONDisk.dll"
   "Order"=dword:1
   "Index"=dword:2
   "IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
   "Profile"="FlashDisk"
   "BmlVolumeId"=dword:0        ; BML volume ID = 0
   "BmlPartitionId"=dword:8        ; BML parition ID = PARTITION_ID_FILESYSTEM
   "WMRStartSector"=dword:0
   "WMRNumOfSector"=dword:10000        ; 32MByte
;   "Flags"=dword:11000        ; do not load again in boot phase 2        ;

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk]
    "DefaultFileSystem"="FATFS"
    "PartitionDriver"="mspart.dll"
    "Name"="PocketMory MLC Disk"
    "Folder"="PocketMory"
    "AutoMount"=dword:1
    "AutoPart"=dword:1
    "AutoFormat"=dword:1
    "MountFlags"=dword:0
;    "Ioctl"=dword:4

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk\FATFS]
    "FriendlyName"="PocketMory FAT FileSystem"
    "Dll"="fatfsd.dll"
    "Flags"=dword:00000014                        ; FATFS_ENABLE_BACKUP_FAT | FATFS_DISABLE_AUTOSCAN
    "FormatTfat"=dword:1
    "EnableCacheWarm"=dword:0

;----------------------------------------------------------------------------
; 2nd FAT Area
;----------------------------------------------------------------------------

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\FlashDisk1]
   "Prefix"="DSK"
   "Dll"="ONDisk.dll"
   "Order"=dword:1
   "Index"=dword:1
   "IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
   "Profile"="FlashDisk1"
   "BmlVolumeId"=dword:0                ; BML volume ID = 0
   "BmlPartitionId"=dword:9        ; BML parition ID = PARTITION_ID_FILESYSTEM1
   "WMRStartSector"=dword:10000
   "WMRNumOfSector"=dword:ffffffff        ; last location
;   "Flags"=dword:11000        ; do not load again in boot phase 2        ;

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk1]
    "DefaultFileSystem"="FATFS"
    "PartitionDriver"="mspart.dll"
    "Name"="PocketMory MLC Disk1"
    "Folder"="PocketMory1"
    "AutoMount"=dword:1
    "AutoPart"=dword:1
    "AutoFormat"=dword:1
    "MountFlags"=dword:0
;    "Ioctl"=dword:4

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk1\FATFS]
    "FriendlyName"="PocketMory FAT FileSystem1"
    "Dll"="fatfsd.dll"
    "Flags"=dword:00000014                        ; FATFS_ENABLE_BACKUP_FAT | FATFS_DISABLE_AUTOSCAN
    "FormatTfat"=dword:1
    "EnableCacheWarm"=dword:0

ENDIF BSP_POCKETMORY
点赞  2009-12-3 12:18
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复