阅读:16735回复:40
?请教samsung+marvell8686,使用SPI接口的WIFI
1.rar 有没有人做过samsung平台下,使用SPI接口与marvell8686的WIFI模块! 最近在调试中遇到了一些问题:(使用WIDOWS MOBILE)
自己在marvell给的原DRIVER包下增加了samsung的SPI操作函数! 1: 用自己写的SPI函数读写寄存器和数据,发现正常! 但是在download Firmware的时候确出现失败! 具体出错的地方是在: sbi_download_wlan_fw_image()函数下的 ;---------------------------- do { tmp++; NdisStallExecution(10); // stall for 10 us spi_ReadRegister(SCRATCH_1_REG, &len); } while(!len); ;--------------------------- 发现读出来的数据都是0,经过调试无意发现,要注意CS的信号时序,便可以解决这个问题,似乎这个导致一些数据会丢失! 但是奇怪在我做测试时候明明显示写的数据和读出的数据是相同的! 2: 修改CS的时序后,download firmware正常,能正常接收到中断了,在无线管理器里面有WIFI图标,并能正常搜索到外面的设备,但是确一直连不上去! trace信息如附件: 不知道有没有人调试过,希望指点一下! |
|
|
沙发#
发布于:2008-07-23 16:22
你有驱动源码? 共享出来嘛.
|
|
板凳#
发布于:2008-07-23 16:55
源码又不是什么秘密, 大家都能写的出来! 我就贴出来了! 有做过的人么?交流下! 看样子要重新评估samsung+marvell wifi了
|
|
地板#
发布于:2008-07-24 18:14
正在评估啊,这么看来有点怕怕。
另外请问楼主,耗电怎么样,好像很大啊。 |
|
地下室#
发布于:2008-07-24 18:15
另外为什么不使用SDIO方式呢,这样速度比较快啊!
|
|
5楼#
发布于:2008-07-25 12:27
SDIO用于扩SD CARD,另外功耗还没有具体测试,那个WIFI都没有正常用起来! 现在加了DMA + 中断 和 DMA + 查询 来 操作SPI,
测试发现: DMA + DMA查询 好用点! 都能正常连接上去,并打开网业! 但是感觉还是不稳一样! DMA + DMA中断 也是不能正常连接! 在其中操作SPI去等待中断时候经常超时,等的时间还蛮长的,都有1秒了! 还没有跟程序,是不是我写的有些问题 查询 一直都不好用 ! |
|
6楼#
发布于:2008-07-27 01:22
我建议你试试SDIO的方式,这个方式应该有现成的驱动,这样驱动层的稳定性比较有保证,而且通讯速度也会快很多。SPI操作的速度还有有点慢啊。
另外能否问下你现在用的是那家的WIFI模块呢。能否给个联系方式和规格书参考一下,多谢了。 |
|
7楼#
发布于:2008-07-28 04:21
他已经说了marvell的8686了, 呵呵.
供参考 1. spi的通信是否正常. 要看看samsung的勘误手册spi部分. 2. 逻辑中断是否申请成功, 中断是否正常.除了dma好像还有一个外部中断. |
|
8楼#
发布于:2008-07-28 09:03
程序中samsung的SPI读写8686的寄存器,和数据寄存器都是正常的! 只是在后面使用时发现用不了!
|
|
9楼#
发布于:2008-07-28 16:02
回复7楼:我是问模块的厂家,不是芯片的厂家啊!
楼主能否告知一下呢! |
|
10楼#
发布于:2008-07-30 17:25
muruta的module,如果需要可以联系我:anglesbx@yahoo.com.cn
|
|
11楼#
发布于:2008-07-31 21:36
多谢了
|
|
12楼#
发布于:2008-08-01 10:24
我们代理环隆电气USI的WIFI模块,主芯片marvell 88w8686,型号WM-G-MR-09
Description: Hardware ·USI 802.11g/b SiP Module · Support Bluetooth co-existence (2 or 3 wire interface) · 2400-2484 MHz 2 SKUs for world wide market · Output Power: 12 dBm @ 54Mbps TX mode · Power Saving Mode and Deep Sleep Mode · Include OSC and LDO · Host connector : 36 pin LGA · Cost effective solution by using -----system clock & power source (3.3/ 1.8 V) · Power Consumption -----Deep Sleep mode:0.6mA -----Receiver mode: 170 mA -----Transmit mode: 265 mA · Receiver Sensitivity : -70 dbm @ 54Mbps -85 dbm @ 11Mbps -90 dBm@1Mpbs · Interface : SDIO , SPI · Dimension - max -----(L) 8.2 * (W) 8.4 * (H) 1.35 mm (with EMI Shielding) Software · Drivers supported -----WinCE, Packet PC -----Linux · Security: WEP64/128 bit, AES, TKIP, WPA, WPA2, CCX V1,V2(Supplicant) 夏生:0755-83212846 e-mail: xiasm@lingyitech.com WM-G-MR-09_Spec_v17_20071012.pdf |
|
|
13楼#
发布于:2008-08-01 18:05
simsula,你好里面的代码都是你写的吗?有很多哦,还是模WIFI模块供应商已经给你了,你只要写SPI接口部分。我的QQ:34678907
|
|
14楼#
发布于:2008-08-05 12:09
刚刚开始搞,呵呵,正好看到这个帖子...
这样看起来要先搞搞SDIO的看看了 |
|
15楼#
发布于:2008-08-18 10:44
兄弟,搞好了没,我拿到了一个WIFI模块,驱动是Z228的,现在想改成2440的WINCE5.0SPIWIFI,不知道有没有难度,还没有什么概念
|
|
|
16楼#
发布于:2008-08-18 14:27
再请问一下,你这个压缩包里面是不是不能用?我编译出了很多错
RM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\oid.h(627) : error C2065: 'NDIS_802_11_LENGTH_SSID' : undeclared identifier BUILD: [01:0000000072:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\oid.h(627) : error C2057: expected constant expression BUILD: [01:0000000073:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\oid.h(627) : error C2087: 'Ssids' : missing subscript BUILD: [01:0000000074:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\eagledev.h(584) : error C2061: syntax error : identifier 'NDIS_802_11_PMKID_CANDIDATE_LIST' BUILD: [01:0000000075:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\eagledev.h(585) : error C2061: syntax error : identifier 'PmkidCandidateArray' BUILD: [01:0000000076:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\eagledev.h(585) : error C2059: syntax error : ';' BUILD: [01:0000000077:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\eagledev.h(585) : error C2059: syntax error : '[' BUILD: [01:0000000078:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\eagledev.h(606) : error C2365: 'MrvDrvAvoidScanAfterConnectedTimer' : redefinition; previous definition was a 'function' BUILD: [01:0000000080:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\eagledev.h(735) : error C2059: syntax error : '}' BUILD: [01:0000000081:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\operfunc.h(644) : error C2146: syntax error : missing ')' before identifier 'pNewPmkid' BUILD: [01:0000000082:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\operfunc.h(644) : error C2144: syntax error : '<Unknown>' should be preceded by '<Unknown>' BUILD: [01:0000000083:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\operfunc.h(644) : error C2144: syntax error : '<Unknown>' should be preceded by '<Unknown>' BUILD: [01:0000000084:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\operfunc.h(644) : error C2143: syntax error : missing ')' before 'identifier' BUILD: [01:0000000085:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\operfunc.h(644) : error C2081: 'PNDIS_802_11_PMKID' : name in formal parameter list illegal BUILD: [01:0000000086:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\operfunc.h(644) : error C2061: syntax error : identifier 'pNewPmkid' BUILD: [01:0000000087:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\operfunc.h(644) : error C2059: syntax error : ';' BUILD: [01:0000000088:ERRORE] d:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\GSPI8686\WLAN\operfunc.h(644) : error C2059: syntax error : ')' |
|
|
17楼#
发布于:2008-08-20 09:06
把你的接口和我的Z228综合一下移到2440上,编译加载成功了,接下在优化调试
|
|
|
18楼#
发布于:2008-08-20 16:56
我也在调试s3c2440 wince5.0 + marvell8686 spi wifi 现在遇到了些问题,BSP 驱动部分已经修改完成,DMA方式从试波器能看到波形输出, 但是我注册了DMA中断,缺总是没有产生这个DMA中断,但是数据已经发出去,不知道为什么,希望楼主 和各位在调试的朋友能留个联系方式,
我的联系方式:QQ:306041610 msn: lizhenjiang8@hotmail.com |
|
|
19楼#
发布于:2008-08-29 16:42
2: 修改CS的时序后,download firmware正常,能正常接收到中断了,在无线管理器里面有WIFI图标,并能正常搜索到外面的设备,但是确一直连不上去!
trace信息如附件: 我现在用DMA方式也到这一步了,郁闷?怎么办 |
|
|
上一页
下一页