时间 | 故障 | 解决方法 |
| 从电源开关出去,各路电压输出均不正常。 | 经分析应该是接地不对导致,把GND同电源负极相接即解决,各路电压输出正常。 |
| CPU时钟无输出导致以太芯片无法工作 | 初步怀疑由于FLASH未焊接,导致CPU没有启动,从而没有输出 |
| 以太芯片工作不正常,开机瞬间插座无亮灯指示,芯片过热,插入网线没有接通显示 | 1:经分析,由于CPU没有起来,导致复位的GPIOpin为低电平以致以太芯片始终处于复位状态,所以把以太芯片ADM6996复位pin直接接3v3,即解决开机无亮灯指示的问题。 2:由于CPU的25MHZ时钟没有输出,故还无法解决网线无法接通问题 3:芯片过热问题尚未解决―怀疑是因为第一条原因,即芯片不停地复位造成芯片过热。 |
2008-1.17 | CPU没有正常运行,串口打印数据出现乱码 | 。。。 |
| 串口电平不正常 | 此处没有接地,导致MAX3221转换电压 不正常 |
| 超级终端成功打印boot信息(证明CPU已经成功启动并且开始BOOT),然而并不稳定,关闭板子再打开就没有消息打印了 | 怀疑是某点电平不稳定,检查电路中…… |
| 串口打印boot消息终于正常 | 终于发现原来是jtag信号的原因,现在串口终于可以打印出boot信号了 |
以太时钟有输出,但是以太芯片并未正常工作 | 故障寻找中 | |
EEPROM工作正常、以太芯片工作正常 | 加载片选信号后eeprom即工作正常 | |
Eeprom加载后,时钟输出正常,以太芯片正确复位后工作正常,可以实现交换功能… | ||
| 可以实现从网口boot,但是启动到一定阶段,超级终端就死了。 | 怀疑是Conexant提供的flash.bin中的部分驱动有问题,准备重新编译我们自己的bin |
| 配置rehhat linux。配置TFTP,配置DHCP,以便使得板子可以通过网口下载flash.bin到内存中执行之 | 通过无数次测试,更改,板子终于可以在linux环境下利用DHCP服务器获取IP地址并获得boot文件的位置,然后利用本机启动的TFTP服务器下载flash.bin到内存中(虽然执行到一定程度时会死机) |
| 完成flash内核编译,并且成功down到板子上 | 1:利用Conexant提供的flash.bin会在启动时死机,怀疑是由于isos中会初始化一些硬件,而这些硬件可能在我的板子上还没有起来,所以考虑自己编译flash.bin 2:参考科胜讯的编译方法,无法成功编译完成CX94615的flash.bin,然后通过分析Makefile,和mkfflash文件,找出问题所在,成功编译成功flash.bin 3:把第二步中编译好的flash.bin通过TFTP和DHCP下载到板子上,linux boot正常,但是会卡死在一个叫EHCI的进程上,通过查阅资料得知,EHCI是usb支持热插拔的一个特性。所以重新编译linux内核,让其不加载usb部分,重新生成flash.bin,download到板子上,成功启动linux。(由此怀疑是USB部分有问题,而我的USB部分的电源管理芯片没有焊接)。 4:在linux命令行下输入startbsp启动conexant的驱动后,网口工作正常,可以ifconfig eth0. |
| 测试WLAN | Wlan可以工作,但信号较弱 |
| 以太芯片port4工作不正常。表现为,有时插上网线没反应,有时正常。 | 由于其他四个LAN口工作正常,而仅仅port4工作不正常,所以通过比较,最终觉得可能是对port4的配置不正确。由MAC MII改成PHY interface后,port4即工作正常。 |
| 编译内核,测试科胜讯demo板,可以正常读取flash的chip id,也可以通过MTDdriver来实现烧写flash。但是对于科胜讯方案的intel flash,依旧无法读取flash的id。所以开始检查硬件电路。 | |
| SLIC部分硬件ID无法读取,怀疑是SPI原因。因为SPI同EEPROM已经相接。 | |
| USB部分电源管理芯片未焊接,12MHZ晶体连线错误 | 晶体连线错误解决方法考虑中….. |
可以在xtalout和xtalin之间并联 | ||
| 里程碑式进展,终于读取出flash芯片的chip id | 片选信号CE接错(多方面导致接错,最主要的原因还是由于自己画图时大意,过于相信intel的技术支持,调试时固执地以为自己的片选是正确的),去掉非门,低电平有效,则flash成功选中,chip id成功读出 |
| Boot.bin无法成功从flash启动 | 1:cat boot.bin >/dev/mtdblock0而不是按照文档中所说的至/dev/mtd0 2:几经周折,copy cofig.bin至/tftpboot,运行configflash,成功boot |
文件系统jffs2.bin无法烧录入flash | 分析是由于内存不足,所以先删除部分文件(内存中的部分文件),然后成功烧写,也成功启动linux至文件系统 | |
文件系统不可写,mkdir后出现错误 | 怀疑是内存不足,问题发现解决中…. | |
| 文件系统成功可写 | 证明是flash容量不足所致 分析过程: Lxcmdlineinfo set 768k(kernel) 文件系统不可写而set 704k(kernel)文件系统可写,由此判断是flash容量不足所致。因此精简文件系统和内核,成功实现文件系统可写。 就其原因: 1:intel的flash的质量太次,相比spansion的64K/block intel的是128k/block 所以空间利用率降低 2:flash容量选择偏小^_^ |
| 集中调试slic部分。 | 由于conexant默认是把le88221连接在spi1上而我是连接在spi0上的。所以修改spi_CS信号后,重新编译驱动,startbsp后,可以读出le88221的chipid。 |
| Slic部分,pcm时钟无输出 | 由于可以读出chip id,所以认为spi和硬件部分没问题。问题转向对于pcm时钟设置部分(设置CPU的pcm时钟。) |
| USB初始化成功Slic初始化失败 | 1:在usb部分的12MHZ时钟输入输出脚并联一个 2:尝试加载ISOS的flash.bin(在USB部分未焊好之前,加载ISOS,会死机),可以正常启动。PCM时钟正常为2.048Mhz。但是slic部分初始化依旧失败,有可能是因为isos的slic部分驱动是利用spi1来配置le88221的。 |
| Pcm时钟正常输出。Slic设备有馈电 Slic部分电路有很大噪声 | 1:Conexant技术支持修改了so4615-rd.hw硬件配置文件,然后pcm时钟可以正常输出 2:修改slic设备的参数,有馈电输出 3:噪声问题暂没找到原因,怀疑是某电容有问题 |
| Slic部分噪声消失 | …..噪声消失原因未明 |
| slic部分结合lvoice进行调试 | |
| 运行lvoice有馈电,但是没有拨号音,没有振铃 | 1:加载我们自己的le88221参数没有拨号音,lvoice工作不正常。 2:加载conexant的配置参数,运行lvoice,一切正常,可以拨号,可以通话 最后分析,发现,我写的参数配置文件不对,在参数文件中,不能包括对通道1,2的初始化,因为lvoice中会包含这些。 修改我们的配置文件,也可以出现拨号音以及振铃 3:通过分析,觉得电路板噪声应该是slic没有正确初始化所致。因为运行lvoice后就不会有噪声出现。 |
截至 | ||
| 可以读取flash的chipid,无法擦除flash以及烧写flash | 由于R1bf的flash容量增加至16MB,需要conexant提供gpio扩展的代码 |
| Conexant修改代码后,可以成功写入flash,但是Boot.bin写入到flash后,依旧无法从flash中boot起来 | Stun_gpio3未正确下拉 |
| Wifi的firmware加载后出现乱码,cpu必须重启才能正常 | 发现是由于时钟的问题:原因是由于插入wifi驱动会复位50321芯片导致cpu输入时钟消失。只需修改高速非门器件即可,原理图不必更改 |
| Usb时钟未正确输出 | 需要在晶体输出输入端并联一个106的电阻 |
| 内核启动会卡死在ehci部分,usb无法挂在 | 1.8V电源同3.3V电源相比,必须加一个延迟 |
R1B方案所有模块调试完成 |
总结(按模块)
1:CPU模块
串口电平不正常,打印乱码 | Max3221有一处电容没有接地 |
串口信息可以成功打印boot,但是极不稳定 | Jtag信号没有接地,导致CPU启动后进入JTAG test模式 |
2:电源模块
上电后,各路电平均不正常,经检查,是由于GND最终没有同CGND相连
3:flash模块
无法读出chip id 无法烧写flash | 片选信号接错,低电平有效错误地接成了高电平有效。加上修改源代码flash.c中的读写时序,即可实现对flash chipid的读取。配合linux的mtd driver,可以实现flash的读写 |
4:以太芯片模块
以太芯片四个口均不亮,时钟信号不稳定,仅15MHZ。 | 加载EEPROM后,时钟正常,五口均正常工作,eeprom中包含了对CPU时钟配置的代码 |
单个MII,五口均属于交换,但是"wan"口不稳定 | 修改配置电阻.使一台芯片工作于phy mode,即稳定工作 |
5:slic模块
编译驱动,加载,无时钟,无馈电,内核打印slic设备初始化失败 | 经conexant技术支持确认,修改硬件配置文件,可以实现slic设备的正确初始化 -------然后经证明,以前的编译方法并没有错,conexant默认的slic驱动并没有初始化时钟和配置参数,只要加载lvoice就ok了。 |
电路板有噪声 | 经分析,认为是slic初始化不对,加载lvoice后电路板即没有噪声 |
加载lvoice,时钟,馈电均正常,但是无法实现对呼,无振铃,无拨号音 | 经多次实验比较,最后用conexnat默认的配置参数可以成功实现对呼,比较两者参数后发现我们自己写的参数由于多加了对端口1和2的初始化导致lvoice无法完成 |
6:USB模块
12MHZ时钟无法稳定输出--------电路接错,去掉串联电阻,在xtalout和xtalin之间并联
焊接好电源管理芯片后,USB模块即正常工作,可以发现USB设备,可以在linux内核下挂载,读写
7:WIFI模块
功能上没有问题,无线设备可以搜索到。但是信号太弱
8:DSL模块
暂未测试
9:内核编译
Flash.bin无法编译出来 | Conexant的一系列文件有问题 |
默认的配置参数,flash有诸多错误 | 由于intelflash默认的块大小是128k,修改文件系统的配置即可 |
Flash可以烧写后,加载的文件系统不可写 | 由于flash容量较小,需要精简内核和文件系统 |
没有评论:
发表评论