-
cccc
-
咦!? 我的图片怎么贴不上去 再试试!
-
那么,我在kernel 中,如何实现"扫描硬件改动”这一功能?有什么具体函数,还是只能发IRP,如果是发IRP,请给个参考,吾感激涕零!
-
照理说,程序退出后会自动释放的啊,呵呵
-
没人看啊,
还是不屑一看?
-
wince没人搞?应该搞的人挺多啊。
-
谢谢!最近在看XAUI但不是太明白,谢谢指点。
XAUI接口是分为4对高速线,每对传输速率为3.125Gbs,有时间可以再讨论一下!
-
怎么帖子到后面就变味啦
-
引用 1 楼 guopeixin 的回复:
1。host通过初始化时候注册的api直接调用bus;
2。而bus通过bus层类的基类直接调用host,同样是在host初始化的时候注册
这个地方,应该有些小问题吧,,,host是向bus注册一个controlercontext,,,host不能调用bus的,只能申请,,,望指正,谢谢
-
硬件支持的话,应该任何模式都可以的,例如0x0是最暗,0xff最亮
这个应用层可以设置中间的任何一个值,不仅仅局限在D0-D4
-
还真没遇到过这种情况。如果LocalAlloc分配不到足够的内存应该是会返回NULL的,也许你在使用前需要判断一下LocalAlloc的返值,再一个你的pPDD有没有可能也是NULL,再对它的成员变量进行赋值就会有0xc0000005错误了
-
引用 19 楼 so927 的回复:
PLATFORM\COMMON\SRC\COMMON\OTHER\memory.c
中有
BOOL OEMGetExtensionDRAM(LPDWORD pMemoryStart, LPDWORD pMemoryLength)
{
? ? return FALSE;
}
没有代码,直接返回了FALSE
我在PLATFORM\DEVICEEMULATOR\SRC\OAL\OALLIB\init.c中找到了一个此函数的实现代码
C/C++ codeBOOL
OEMGetExtensionDRAM(
LPDWORD lpMemStart,
LPDWORD lpMemLen
)
{
typedefvolatile unsignedlong MegOfExtendedRam_t[1024*1024/sizeof (unsignedlong)];
MegOfExtendedRam_t*MegsOfRam= (MegOfExtendedRam_t*)EXTENDED_RAM_BASE;
DWORD each_meg;const DWORD dwPageSize=4096;// PAGE_SIZE in ceddk isn't valid until later in boot
OALMSG(OAL_FUNC, (L"++OEMGetExtensionDRAM\r\n"));// Employ a simple memory test to see that all N meg's are there.// NB: Because an empty memory bus can "float" data for several// cycles and appear as valid memory, discharge the bus before// verifying the data.//// The probe is nondestructive, to allow the contents of extension// RAM to be preserved across soft resetstry {for (each_meg=0; each_meg< EXTENDED_RAM_MEGS;++each_meg)
{
unsignedlong temp0= MegsOfRam[each_meg][0];
unsignedlong temp1= MegsOfRam[each_meg][1];
MegsOfRam[each_meg][0]=0x55555555UL;// Write pattern MegsOfRam[each_meg][1]=~0x55555555UL;// Dischargeif (MegsOfRam[each_meg][0]!=0x55555555UL)// Verify paternbreak;
MegsOfRam[each_meg][0]=~0x55555555UL;// Write pattern-not MegsOfRam[each_meg][1]=0x55555555UL;// Dischargeif (MegsOfRam[each_meg][0]!=~0x55555555UL)break;
MegsOfRam[each_meg][0]= temp0;
MegsOfRam[each_meg][1]= temp1;
}
} except (EXCEPTION_EXECUTE_HANDLER) {
OALMSG(OAL_FUNC, (L"--OEMGetExtensionDRAM\r\n"));return FALSE;// no extension DRAM }*lpMemStart= EXTENDED_RAM_BASE;*lpMemLen= each_meg*sizeof (MegOfExtendedRam_t);
OALMSG(OAL_LOG_INFO, (L"OEMGetExtensionDRAM: found 0x%08x bytes of ram at 0x%08x\r\n",*lpMemLen,*lpMemStart));// adjust by RAM FMD amountif(g_dwExtensionRAMFMDSize!=0) {if((g_dwExtensionRAMFMDSize& (dwPageSize-1))!=0) {
OALMSG(OAL_LOG_WARN,
(L"OEMGetExtensionDRAM: g_dwExtensionRAMFMDSize 0x%08x not a multiple of %u\r\n",
g_dwExtensionRAMFMDSize, dwPageSize));
}elseif(*lpMemLen< g_dwExtensionRAMFMDSize) {
OALMSG(OAL_LOG_WARN,
(L"OEMGetExtensionDRAM: 0x%08x bytes of extension ram not enough to satisfy FMD request for 0x%0x bytes\r\n",*lpMemLen, g_dwExtensionRAMFMDSize));
}else {
g_pvExtensionRAMFMDBaseAddr= (PVOID) EXTENDED_RAM_BASE;*lpMemStart= EXTENDED_RAM_BASE+ g_dwExtensionRAMFMDSize;*lpMemLen-= g_dwExtensionRAMFMDSize;
OALMSG(OAL_LOG_INFO, (L"OEMGetExtensionDRAM: reserving 0x%08x bytes of ram at 0x%08x for RAMFMD\r\n",
g_dwExtensionRAMFMDSize, g_pvExtensionRAMFMDBaseAddr));
}
}
OALMSG(OAL_LOG_INFO, (L"OEMGetExtensionDRAM: returning 0x%08x bytes of ram at 0x%08x\r\n",*lpMemLen,*lpMemStart));
OALMSG(OAL_FUNC, (L"--OEMGetExtensionDRAM\r\n"));return TRUE;
}
有点搞不明白了
呵呵,不用迷惑,你先不用管那么多,知道最终调用的不是common csp下的,而是bsp下的就行了,呵呵
-
还有其他的debug信息么?
1. 看起来你打印的信息挺多的,能不能把后面的信息也给打印出来?
2. 你的sd卡能够在pc上识别么?
-
SLC的。
-
mark一下,也碰到过同样的情况。
-
我的伊妹儿:gateshn@tom.com
-
我也不知道,
不过要是有一点硬件基础的话最好找个公司让里面的工程师带
要是一点基础也没的话只能去学校了,毕竟从入门到设计系统需要不少时间
消灭0回复
-
问题解决!这就去结贴哈哈 谢谢啦~
-
用at+cpms=3试试,我的也是诺基亚的,刚试过,读到短信了
-
还有一个现象:我把新加的八根管脚,即八根数据线屏蔽掉,情况就有改善