下载NK时会停在 Sp=ffffc7cc 或者死在 PSMFSD_MountDisk: FG_Init failed! status=33 ,请教做过相关的兄弟!

wangxin_801115 2009-03-21 11:25:56
各位:
最近不知道为什么下载NK时总是死在 Sp=ffffc7cc
Windows CE Kernel for ARM (Thumb Enabled) Built on Aug 4 2008 at 18:38:38
ProcessorType=0411 Revision=7
sp_abt=ffff5000 sp_irq=ffff2800 sp_undef=ffffc800 OEMAddressTable = 800813e4
USING_COPROCSUPPORT
DS1302_Initial
Sp=ffffc7cc
停在这里,上网上查,相关问题都是下载内核成功后,再次启动出现的,放几分钟电清一下内存就好了
可是我是在下载NK的时候出现的,下载那几个固定的NK怎么也不会出现这个问题,但是同一个BSP下编译另外的NK
就会出现这个问题

还有就是有些NK是可以过这个地方Sp=ffffc7cc
但是在IPSM那出现了问题,打印了一条:PSMFSD_MountDisk: FG_Init failed! status=33
我没有相关的错误码对照表,也不知道为什么会出现这个问题
但是可以通过调整PSM中plat_api.c中的oem_info段,使NK能启动
大部分是将整个FLASH和可识别区变小就可以了
可是不知道这是为什么
...全文
481 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunboyljp 2009-12-24
  • 打赏
  • 举报
回复
你是用的BINFS文件系统吧,把这个去掉试试!
wangxin_801115 2009-03-25
  • 打赏
  • 举报
回复
哦!
thank U!
hzdysymbol 2009-03-25
  • 打赏
  • 举报
回复
你的不是Intel的Nor flash吗?
MDOC是以前的M-System的产品,现在被Sandisk收购了,是一种Nor 接口的Nand产品
wangxin_801115 2009-03-25
  • 打赏
  • 举报
回复
哦!!
不解!
那我的是什么呢?呵呵
hzdysymbol 2009-03-25
  • 打赏
  • 举报
回复
搞错了,你的不是MDOC
MSC0是指Static Memory Control Registers (MSCx)
wangxin_801115 2009-03-25
  • 打赏
  • 举报
回复
弱弱的问MDOC和MSC0是什么?
在什么地方调节?
wangxin_801115 2009-03-24
  • 打赏
  • 举报
回复
貌似降低主频可以解决这个问题
降低了主频,目前还没出现这个问题

正在测试中!KITL研究中!
wangxin_801115 2009-03-24
  • 打赏
  • 举报
回复
ding!
wangxin_801115 2009-03-24
  • 打赏
  • 举报
回复
我把主频和SDRAM的频率都降了:
原来是:ldr r2, =0x756;setting SDRAM 97.5Mhz, 2.5 X 2 cpu 487Mhz
现在是:ldr r2, =0x751 ;setting SDRAM 91Mhz, 2 X 2 cpu 364Mhz

弱弱的问MDOC和MSC0是什么?
hzdysymbol 2009-03-24
  • 打赏
  • 举报
回复
降低主频?
你不是MDOC出问题吗,试着调节MSC0到最慢看看,如果太快也会出问题的
elmnd 2009-03-23
  • 打赏
  • 举报
回复
帮顶啊~~~
szy41 2009-03-23
  • 打赏
  • 举报
回复
帮顶一下
wangxin_801115 2009-03-23
  • 打赏
  • 举报
回复
比如NK1有时候死在Sp=ffffc7cc,多试几次其他内核(NK2、NK3、NK4......),突然有一个内核可以下载进去并启动,

然后用同一个板子、同一个BOOT再下载NK1又可以启动了

就好象打通板子的“任都”二脉........我快精神分裂了

现在试试把主频和SDRAM频率都降低(原来是:ldr r2, =0x756;setting SDRAM 97.5Mhz, 2.5 X 2 cpu 487Mhz
现在是:ldr r2, =0x751 ;setting SDRAM 91Mhz, 2 X 2 cpu 364Mhz)
不知道能不能好,

KITL我从来没用过,看来得研究一下这个了

另外:PSMFSD_MountDisk: FG_Init failed! status=33 这个是什么问题呢??

有没有哪位兄弟有IPSM的错误参数对照表??
gooogleman 2009-03-23
  • 打赏
  • 举报
回复
KITL这玩意很好用,最适合调试启动不了的郁闷情况。
yashi 2009-03-23
  • 打赏
  • 举报
回复
死在Sp=ffffc7cc这种情况比较常见,我也遇到过几次。不过每次原因并不一样。你可以想想从上次正常启动,到这次之间,你修改了什么,这样就比较好找问题了。

另外要提示一下,不要觉得输出完sp=....死了,就以为是死在这个位置,你不要忘了,也有可能是死在其它位置,只不过,在sp=...之后再没有信息打印出来而已。
paul_chao 2009-03-23
  • 打赏
  • 举报
回复
1. 你的 SDRAM 穩定性夠不夠, 因為 WinCE 加載至 file system 時, sdram bus 負載會很大, 若是 sdram layout 沒做好, 則會有啟動失敗的情形
==> 降頻或是調整 SDRAM Timming 處理.

2. 建議用 debug mode 來做偵錯, 並將該 debug message 放上來, 這樣比較容易清楚問題的發生點.

Paul, Chao @ Techware
wangxin_801115 2009-03-23
  • 打赏
  • 举报
回复
谢谢
这三个还真有可能
constantine 2009-03-23
  • 打赏
  • 举报
回复
http://blog.csdn.net/constantine/archive/2008/11/05/3225563.aspx
或许对你有帮助
wangxin_801115 2009-03-23
  • 打赏
  • 举报
回复
跟内存相关的是我修改了OEMaddressTable
因为将原32M的FLASH括到64M
所以将OEMaddressTable中的PCMCIA删除了
藤出来32M的虚拟空间
xqhrs232 2009-03-22
  • 打赏
  • 举报
回复
mark
加载更多回复(3)
View Flow for Android ViewFlow is an Android UI widget providing a horizontally scrollable ViewGroup with items populated from an Adapter. Scroll down to the bottom of the page for a screen shot. The component is a Library Project. This means that there's no need to copy-paste resources into your own project, simply add the viewflow component as a reference to any project. When to use This library might be suitable if you have an indeterminate number of views in your viewflow, if instead you have a static numbers of views you ought to look at Fragments and the ViewPager in the Compatibility Library instead. Usage In your layout The use of app:sidebuffer is optional. It defines the number of Views to buffer on each side of the currently shown View. The default sidebuffer is 3, making up a grand total of 7 (3 * 2 + 1) Views loaded at a time (at max). To be able to use the more convenient app:sidebuffer attribute, the application namespace must be included in the same manner as the android namespace is. Please refer to the layout main.xml in the example project for a full example. Again, note that it's the application namespace and not the viewflow namespace that must be referred like xmlns:app="http://schemas.android.com/apk/res/your.application.package.here". In your activity ViewFlow viewFlow = (ViewFlow) findViewById(R.id.viewflow); viewFlow.setAdapter(myAdapter); Setting a different initial position (0 being default) is as easy as: viewFlow.setAdapter(myAdapter, 8); Although possible, you should not call setSelection(...) immediately after calling setAdapter(myAdapter) as that might load unnecessary views giving you a decrease in performance. Listen on screen change events If you need to listen to screen change events you would want to implement your own ViewFlow.ViewSwitchListener and pass it to the setOnViewSwitchListener() method. viewFlow.setOnViewSwitchListener(new ViewSwitchListener() { public void onSwitched(View v, int position) { // Your code here } }); Listen on initialize view events If you need a lazy View initialization you would want to implement your own ViewFlow.ViewLazyInitializeListener and pass it to the setOnViewLazyInitializeListener() method. viewFlow.setOnViewLazyInitializeListener(new ViewLazyInitializeListener() { public void onViewLazyInitialize(View view, int position) { // Your code here e.g. ((MyAdapter)((AbsListView)view).getAdapter()).initializeData(); } }); Flow Indicator It is also possible to add a flow view indicator to your layout. The purpose of a FlowIndicator is to present a visual representation of where in the item list focus is at. You may either implement a FlowIndicator yourself or use an implementation provided by the View Flow library. The View Flow library currently supports the following indicators: Circle Flow Indicator This indicator shows a circle for each View in the adapter with a special circle representing the currently selected view (see screenshot below). And then you'll need to connect your ViewFlow with the FlowIndicator: CircleFlowIndicator indic = (CircleFlowIndicator) findViewById(R.id.viewflowindic); viewFlow.setFlowIndicator(indic); By default, the 'active' indicator moves smoothly from one 'inactive' indicator to the next, as the user scrolls. If you set the snap attribute to true, it will instead jump to the next position when the flow settles at the next page. The following attributes are supported: activeColor, inactiveColor, activeType (either fill or stroke), inactiveType (either fill or stroke), fadeOut (time in ms until indicator fades out, 0 = never), radius, sync (see above). Title Flow Indicator This indicator presents the title of the previous, current and next View in the adapter (see screenshot below). And then you'll need to connect your ViewFlow with the FlowIndicator: TitleFlowIndicator indicator = (TitleFlowIndicator) findViewById(R.id.viewflowindic); indicator.setTitleProvider(myTitleProvider); viewFlow.setFlowIndicator(indicator); Building a jar file If you rather want a jar file instead of a including the project as an android library, run ant jar in the android-viewflow/viewflow folder, to build a jar file. Caveats The manifest states a min sdk version of 4, which is true. But in any case you want to support an api level < 8 you will have to forward an onConfigurationChanged event to the ViewFlow from your Activity. I know this isn't a very nice solution, feel free to propose better ones! @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); viewFlow.onConfigurationChanged(newConfig); } Contributions The following persons deserves a mention for their contributions: Eric Taix Marc Reichelt, http://marcreichelt.blogspot.com/ Want to contribute? GitHub has some great articles on how to get started with Git and GitHub and how to fork a project. Contributers are recommended to fork the app on GitHub (but don't have too). Create a feature branch, push the branch to git hub, press Pull Request and write a simple explanation. One fix per commit. If let's say a commit closes the open issue 12. Just add closes #12 in your commit message to close that issue automagically. If you still feel uncomfortable contributing the project github-wise, don't hesistate to send a regular patch. All code that is contributed must be compliant with Apache License 2.0. License Copyright (c) 2011 Patrik Åkerfeldt Licensed under the Apache License, Version 2.0

19,504

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧