5167|16

86

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

在CF卡中保存hive based registry的问题,急求解决 [复制链接]

小弟在ce platfrom builder 5.0定制CE,加入hive的就不能开机了,黑屏,键盘没反映。
时间紧急,急求兄弟帮忙!!!

1,目标平台是X86主板,芯片组为INTEL 852,用了INTEL 852的BSP包。
2,存储设备为CF卡,主板认作IDE4;也用IDE硬盘试过,一样不能开机,但关闭hive选项就可以。
3,我在Catalog里加入了Hive-Based Registry
4,加变量FILESYS_FSREGHIVE,并在platform.reg里加入如下内容:

; @CESYSGEN IF FILESYS_FSREGHIVE
; HIVE BOOT SECTION
[HKEY_LOCAL_MACHINE\init\BootVars]
        "SYSTEMHIVE"="\\Registry\\system.hv"
        "PROFILEDIR"="\\Registry"
        "Start DevMgr"=dword:1    ;这里设为1就不能开机了,黑屏,键盘没反映
[HKEY_LOCAL_MACHINE\Drivers\Resources\IRQ]
        "Flags"=dword:1000
[HKEY_LOCAL_MACHINE\Drivers\Resources\IO]
        "Flags"=dword:1000
IF BSP_NOPCIBUS !
; @CESYSGEN IF CE_MODULES_ATAPI
IF BSP_NOIDE !
[$(PCI_BUS_ROOT)\Template\GenericIDE]
        "Flags"=dword:1000
ENDIF BSP_NOIDE !
; @CESYSGEN ENDIF CE_MODULES_ATAPI
ENDIF BSP_NOPCIBUS !
; @CESYSGEN IF CE_MODULES_TRUEFFS
IF BSP_NODOC !
[$(BUILTIN_ROOT)\TrueFFS]
        "Flags"=dword:1000
ENDIF BSP_NODOC !
; @CESYSGEN ENDIF CE_MODULES_TRUEFFS
[HKEY_LOCAL_MACHINE\System\StorageManager\FATFS]
        "Flags"=dword:1000
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\HDProfile]
        ;"MountFlags"=dword:2
        "MountBootable"=dword:1
; END HIVE BOOT SECTION
; @CESYSGEN ENDIF FILESYS_FSREGHIVE

最新回复

别忘了添加驱动啊!  详情 回复 发表于 2009-3-30 14:03
点赞 关注

回复
举报

75

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
最近忙着在学习Android,等下班或别的时间帮你看看吧
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
1. 你知道你的CF卡驱动是通过Storage Manager加载还是Device.exe加载?
2. CF卡或硬盘在没有Enable Hive的时候使用正常吗?也就是说在Image起来后可以正常在CF卡或硬盘上建文件,复制文件等操作,断电重起后数据保存
3. 看你的驱动除了CF卡好象还有DOC,或别的Flash吗?
4. 4,加变量FILESYS_FSREGHIVE,这个变量不需要另外加的
5. 添加了Hive Base Feature后有做过Clean Sysgen吗?
贴一份没有Enable Hive时可以使用的正常的注册上来,所以跟Flash,CF,HD相关的注册表项都要有
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

4
 
我的和你环境基本一致,也在网上找了很多关于HIVE的,直接按网上的来,没有成功过。主要的原因可能是网上的资料都是ARM的x86的少些。

首先,添加2个环境变量在Platform-〉Setting-〉Enviroment里添加。PRJ_ENABLE_FSMOUNTASROOT = 1和PRJ_ENABLE_FSREGHIVE = 1。

然后可以在Platform.reg里面加下面的注册项,也可以在Common.reg中直接搜寻并添加相应的项,建议你先在Common.reg里面查到并看一下具体修改了哪些,弄明白原因再在Platform.reg中添加。

[HKEY_LOCAL_MACHINE\init\BootVars]
   "SystemHive"="Documents and Settings\\system.hv"
   "ProfileDir"="Documents and Settings"
   "DefaultUser"="Default"
   "RegistryFlags"=dword:1
   "Flags"=dword:0
   "Start DevMgr"=dword:1

; @CESYSGEN ELSE
; HIVE BOOT SECTION
IF PRJ_BOOTDEVICE_ATAPI
[HKEY_LOCAL_MACHINE\init\BootVars]
   "Flags"=dword:3
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\HDProfile]
    "MountAsRoot"=dword:1
    "Flags"=dword:1000
ENDIF

IF PRJ_BOOTDEVICE_MSFLASH


[HKEY_LOCAL_MACHINE\System\StorageManager\FATFS]
    "FriendlyName"="FAT FileSystem"
    "Dll"="fatfsd.dll"
    "Flags"=dword:00000064
    "Paging"=dword:1
    "EnableCache"=dword:1
    "CacheSize"=dword:0
    "Util"="fatutil.dll"
    "CacheDll"="diskcache.dll"
        "Flags"=dword:1000

; HIVE BOOT SECTION
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles]
    "AutoMount"=dword:1
    "AutoPart"=dword:0
    "AutoFormat"=dword:0
    "MountFlags"=dword:0
    "DefaultFileSystem"=""
    "PartitionDriverName"="MSPART"
    "Folder"=LOC_STORE_DEFAULT_FOLDER
        "Flags"=dword:1000

; HIVE BOOT SECTION
; @CESYSGEN IF CE_MODULES_ATAPI
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\HDProfile]
    "Name"="IDE Hard Disk Drive"
    "Folder"=LOC_STORE_HD_FOLDER

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\HDProfile\FATFS]
    "EnableCacheWarm"=dword:0
        "Flags"=dword:1000

如果你用的大容量的并且格式化为HDD的CF卡可能会有一些错误,我遇到的是不支持DMA,可以在ATAPI的驱动的注册表中使其不支持DMA就可以了~
ZIP格式的CF应该没什么问题。
没使用过硬盘。
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

5
 
前段时间也在X86下做过HIVE,同样的问题黑屏无法启动,关注```
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

6
 
引用 4 楼 wdmoona 的回复:
前段时间也在X86下做过HIVE,同样的问题黑屏无法启动,关注```


我的也是
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

7
 
你有CF卡的驱动吗?MS应该没有提供吧!
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

8
 
如果关掉HIVE,系统可以正常启动,而开启的话没有启动,那么原因多数在于文件系统没有能够在正确的时间加载
检查你的相关驱动是否已经在os的window目录下找到,可以在HIVE关闭的状态下启动机器,察看机器的注册表(我是因为犯了这样的错误系统无法启动的);如果ok,再检查一下你的相关驱动是否能够正确挂载(可以在关闭HIVE的状态下进行);如果可以,检查你的注册表设置,相关设置最好看MSDN的,因为每个人的情况不一定一样。

祝好运
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

9
 
引用 6 楼 xqhrs232 的回复:
你有CF卡的驱动吗?MS应该没有提供吧!


我们公司自己设计板卡,自己开发驱动,,

牛人也不少,只是我没在那个环境下,大部分东西还是得靠自己摸索,郁闷
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

10
 
IF BSP_NOPCIBUS !
; @CESYSGEN IF CE_MODULES_ATAPI
IF BSP_NOIDE !
[$(PCI_BUS_ROOT)\Template\GenericIDE]
"Flags"=dword:1000
ENDIF BSP_NOIDE !
; @CESYSGEN ENDIF CE_MODULES_ATAPI
ENDIF BSP_NOPCIBUS !

这里面没有加入CF卡的驱动,或者硬盘的驱动。而因为boot.hv加载时,没加载存储驱动,后续就无法从存储器(CF/硬盘)找到后续需要的system.hv/user.hv。
 
 
 

回复

53

帖子

0

TA的资源

一粒金砂(初级)

11
 
不好意思,出差刚回来.
答hzdysymbol的问题
1. 你知道你的CF卡驱动是通过Storage Manager加载还是Device.exe加载?
这个我无法确定,但在Storage Manager里能看到IDE Hard Disk(其实就是CF卡)
2. CF卡或硬盘在没有Enable Hive的时候使用正常吗?也就是说在Image起来后可以正常在CF卡或硬盘上建文件,复制文件等操作,断电重起后数据保存
不打开hive时确认正常
3. 看你的驱动除了CF卡好象还有DOC,或别的Flash吗?
使用的存储介质有CF卡,DOM或IDE的硬盘。
4. 4,加变量FILESYS_FSREGHIVE,这个变量不需要另外加的
这个不加也试过。
5. 添加了Hive Base Feature后有做过Clean Sysgen吗?
贴一份没有Enable Hive时可以使用的正常的注册上来,所以跟Flash,CF,HD相关的注册表项都要有
有做过Clean Sysgen,至于完整的注册表因为太大无法上传。
 
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

12
 
to lmlmlmnew:
如果你用的大容量的并且格式化为HDD的CF卡可能会有一些错误,我遇到的是不支持DMA,可以在ATAPI的驱动的注册表中使其不支持DMA就可以了~
ZIP格式的CF应该没什么问题。

如何修改ATAPI的驱动使其不支持DMA?那主板是不是要做相应的设置(使用PIO模式)?

另CF卡如何使用ZIP格式?
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

13
 
to shuiyan:

IF BSP_NOPCIBUS !
; @CESYSGEN IF CE_MODULES_ATAPI
IF BSP_NOIDE !
[$(PCI_BUS_ROOT)\Template\GenericIDE]
"Flags"=dword:1000
ENDIF BSP_NOIDE !
; @CESYSGEN ENDIF CE_MODULES_ATAPI
ENDIF BSP_NOPCIBUS !

这里面没有加入CF卡的驱动,或者硬盘的驱动。而因为boot.hv加载时,没加载存储驱动,后续就无法从存储器(CF/硬盘)找到后续需要的system.hv/user.hv。

我要如何加入CF卡的驱动?好像就是PCMIA的设备吧。PCMIA的驱动已加上了。而且不开启HIVE的情况下可以正常操作CF卡
 
 
 

回复

41

帖子

0

TA的资源

禁止发言

14
 
引用 11 楼 wintolinux 的回复:
to lmlmlmnew:
如果你用的大容量的并且格式化为HDD的CF卡可能会有一些错误,我遇到的是不支持DMA,可以在ATAPI的驱动的注册表中使其不支持DMA就可以了~
ZIP格式的CF应该没什么问题。

如何修改ATAPI的驱动使其不支持DMA?那主板是不是要做相应的设置(使用PIO模式)?

另CF卡如何使用ZIP格式?

你去ATAPI的驱动文件夹里面,找那个注册表,里面关于DMA有很详细的注释的,不用改BIOS。
具体的位置我不太记得了,应该很好改的。
ZIP格式用USBOOT软件格式化一下就好了,但必须<256MB。

我前段时间刚做完并且咱俩的环境基本上是一致的,并且我也在出现过你现在的情况,所以按我那个注册表那么改应该是可以通过的了。

现在我改作单片机,机器被重格,以前的资料都差不多没了,所以才没说出详细的~~~

 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

15
 
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\HDProfile]
    "MountAsRoot"=dword:1
    "Flags"=dword:1000


注意这个"Flags"=dword:1000,将common.reg文件里面的所有
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\xxx]
都增加一行
    "Flags"=dword:1000
试试看
我也会最近试验一把的,祝你好运
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

16
 
最近 搞DOM的HIVE 启动 ,有些牌子的dom 启动超过了,但是有些牌子的dom就是黑屏啊 。。。
不知道怎么办啊 、、、?求助!
求助!!
求助 !!
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

17
 
别忘了添加驱动啊!
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表