看了以前的一个文档,不禁老泪纵横

时间

故障

解决方法

2008-1-10

从电源开关出去,各路电压输出均不正常。

经分析应该是接地不对导致,把GND同电源负极相接即解决,各路电压输出正常。

2008-1-14

CPU时钟无输出导致以太芯片无法工作

初步怀疑由于FLASH未焊接,导致CPU没有启动,从而没有输出25MPHY信号。(后来证明是CPU没有被正确配置寄存器,所以时钟输出不正常,连好SPI线并从EEPROM获得配置代码后,CPU即成功输出25MHZ时钟,以太芯片工作正常)

2008-1-14

以太芯片工作不正常,开机瞬间插座无亮灯指示,芯片过热,插入网线没有接通显示

1:经分析,由于CPU没有起来,导致复位的GPIOpin为低电平以致以太芯片始终处于复位状态,所以把以太芯片ADM6996复位pin直接接3v3,即解决开机无亮灯指示的问题。

2:由于CPU25MHZ时钟没有输出,故还无法解决网线无法接通问题

3:芯片过热问题尚未解决怀疑是因为第一条原因,即芯片不停地复位造成芯片过热。

2008-1.17

CPU没有正常运行,串口打印数据出现乱码

。。。

2008-1-18

串口电平不正常

经检查,是原理图有一点接地有误

此处没有接地,导致MAX3221转换电压 不正常

2008-1-21

超级终端成功打印boot信息(证明CPU已经成功启动并且开始BOOT),然而并不稳定,关闭板子再打开就没有消息打印了

怀疑是某点电平不稳定,检查电路中……

2008-1-22

串口打印boot消息终于正常

终于发现原来是jtag信号的原因,现在串口终于可以打印出boot信号了

以太时钟有输出,但是以太芯片并未正常工作

故障寻找中

EEPROM工作正常、以太芯片工作正常

加载片选信号后eeprom即工作正常

Eeprom加载后,时钟输出正常,以太芯片正确复位后工作正常,可以实现交换功能

2008-1-25

可以实现从网口boot,但是启动到一定阶段,超级终端就死了。

怀疑是Conexant提供的flash.bin中的部分驱动有问题,准备重新编译我们自己的bin

2008-1-28

配置rehhat linux。配置TFTP,配置DHCP,以便使得板子可以通过网口下载flash.bin到内存中执行之

 通过无数次测试,更改,板子终于可以在linux环境下利用DHCP服务器获取IP地址并获得boot文件的位置,然后利用本机启动的TFTP服务器下载flash.bin到内存中(虽然执行到一定程度时会死机)

2008-1-29

完成flash内核编译,并且成功down到板子上

1:利用Conexant提供的flash.bin会在启动时死机,怀疑是由于isos中会初始化一些硬件,而这些硬件可能在我的板子上还没有起来,所以考虑自己编译flash.bin

2:参考科胜讯的编译方法,无法成功编译完成CX94615flash.bin,然后通过分析Makefile,mkfflash文件,找出问题所在,成功编译成功flash.bin

3:把第二步中编译好的flash.bin通过TFTPDHCP下载到板子上,linux boot正常,但是会卡死在一个叫EHCI的进程上,通过查阅资料得知,EHCIusb支持热插拔的一个特性。所以重新编译linux内核,让其不加载usb部分,重新生成flash.bindownload到板子上,成功启动linux。(由此怀疑是USB部分有问题,而我的USB部分的电源管理芯片没有焊接)。

4:在linux命令行下输入startbsp启动conexant的驱动后,网口工作正常,可以ifconfig eth0.

 

2008-1-30

测试WLAN

Wlan可以工作,但信号较弱

2008-1-31

以太芯片port4工作不正常。表现为,有时插上网线没反应,有时正常。

由于其他四个LAN口工作正常,而仅仅port4工作不正常,所以通过比较,最终觉得可能是对port4的配置不正确。由MAC MII改成PHY interface后,port4即工作正常。

2008-2-15

编译内核,测试科胜讯demo板,可以正常读取flashchip id,也可以通过MTDdriver来实现烧写flash。但是对于科胜讯方案的intel flash,依旧无法读取flashid。所以开始检查硬件电路。

 

 

2008-2-19

SLIC部分硬件ID无法读取,怀疑是SPI原因。因为SPIEEPROM已经相接。

 

2008-2-21

USB部分电源管理芯片未焊接,12MHZ晶体连线错误

晶体连线错误解决方法考虑中…..

可以在xtaloutxtalin之间并联1M欧姆电阻解决.

2008-2-26

里程碑式进展,终于读取出flash芯片的chip id

片选信号CE接错(多方面导致接错,最主要的原因还是由于自己画图时大意,过于相信intel的技术支持,调试时固执地以为自己的片选是正确的),去掉非门,低电平有效,则flash成功选中,chip id成功读出

2008-2-27

Boot.bin无法成功从flash启动

1cat boot.bin >/dev/mtdblock0而不是按照文档中所说的至/dev/mtd0

2:几经周折,copy cofig.bin/tftpboot,运行configflash,成功boot

文件系统jffs2.bin无法烧录入flash

分析是由于内存不足,所以先删除部分文件(内存中的部分文件),然后成功烧写,也成功启动linux至文件系统

文件系统不可写,mkdir后出现错误

怀疑是内存不足,问题发现解决中….

2008-2-28

文件系统成功可写

证明是flash容量不足所致 分析过程:

Lxcmdlineinfo set 768k(kernel) 文件系统不可写而set 704k(kernel)文件系统可写,由此判断是flash容量不足所致。因此精简文件系统和内核,成功实现文件系统可写。

就其原因:

 

1intelflash的质量太次,相比spansion64K/block intel的是128k/block 所以空间利用率降低

2flash容量选择偏小^_^

2008-2-29

集中调试slic部分。

 

由于conexant默认是把le88221连接在spi1上而我是连接在spi0上的。所以修改spi_CS信号后,重新编译驱动,startbsp后,可以读出le88221chipid

2008-3-3

Slic部分,pcm时钟无输出

由于可以读出chip id,所以认为spi和硬件部分没问题。问题转向对于pcm时钟设置部分(设置CPUpcm时钟。)

2008-3-4

USB初始化成功Slic初始化失败

1:在usb部分的12MHZ时钟输入输出脚并联一个1M欧姆电阻,晶体正常起振。由于电源芯片已经焊接,所以USB设备可以正常初始化。并且可以mount到文件系统上。

2:尝试加载ISOSflash.bin(USB部分未焊好之前,加载ISOS,会死机),可以正常启动。PCM时钟正常为2.048Mhz。但是slic部分初始化依旧失败,有可能是因为isosslic部分驱动是利用spi1来配置le88221的。

2008-3-10

Pcm时钟正常输出。Slic设备有馈电

Slic部分电路有很大噪声

1Conexant技术支持修改了so4615-rd.hw硬件配置文件,然后pcm时钟可以正常输出

2:修改slic设备的参数,有馈电输出

3:噪声问题暂没找到原因,怀疑是某电容有问题

2008-3-11

Slic部分噪声消失

…..噪声消失原因未明

2008-3-12

slic部分结合lvoice进行调试

 

2008-3-13

运行lvoice有馈电,但是没有拨号音,没有振铃

 

1:加载我们自己的le88221参数没有拨号音,lvoice工作不正常。

2:加载conexant的配置参数,运行lvoice,一切正常,可以拨号,可以通话

最后分析,发现,我写的参数配置文件不对,在参数文件中,不能包括对通道12的初始化,因为lvoice中会包含这些。

修改我们的配置文件,也可以出现拨号音以及振铃

 

3:通过分析,觉得电路板噪声应该是slic没有正确初始化所致。因为运行lvoice后就不会有噪声出现。

截至2008-3-14,完成R1A所有硬件的调测,包括cpu,以太芯片,slicwifiusb功能调试均已完成

2008-5-12

可以读取flashchipid,无法擦除flash以及烧写flash

 

由于R1bfflash容量增加至16MB,需要conexant提供gpio扩展的代码

2008-5-17

Conexant修改代码后,可以成功写入flash,但是Boot.bin写入到flash后,依旧无法从flashboot起来

Stun_gpio3未正确下拉

2008-5-20

Wififirmware加载后出现乱码,cpu必须重启才能正常

发现是由于时钟的问题:原因是由于插入wifi驱动会复位50321芯片导致cpu输入时钟消失。只需修改高速非门器件即可,原理图不必更改

2008-5-21

Usb时钟未正确输出

需要在晶体输出输入端并联一个106的电阻

2008-5-25

内核启动会卡死在ehci部分,usb无法挂在

1.8V电源同3.3V电源相比,必须加一个延迟

R1B方案所有模块调试完成

 


总结(按模块)

 

1CPU模块

串口电平不正常,打印乱码

Max3221有一处电容没有接地

串口信息可以成功打印boot,但是极不稳定

Jtag信号没有接地,导致CPU启动后进入JTAG test模式

 

2:电源模块 

   上电后,各路电平均不正常,经检查,是由于GND最终没有同CGND相连

 

3flash模块

 无法读出chip id 无法烧写flash

片选信号接错,低电平有效错误地接成了高电平有效。加上修改源代码flash.c中的读写时序,即可实现对flash chipid的读取。配合linuxmtd driver,可以实现flash的读写

 

 4:以太芯片模块

以太芯片四个口均不亮,时钟信号不稳定,仅15MHZ

加载EEPROM后,时钟正常,五口均正常工作,eeprom中包含了对CPU时钟配置的代码

单个MII,五口均属于交换,但是"wan"口不稳定

修改配置电阻.使一台芯片工作于phy mode,即稳定工作

 

5slic模块

编译驱动,加载,无时钟,无馈电,内核打印slic设备初始化失败

conexant技术支持确认,修改硬件配置文件,可以实现slic设备的正确初始化

-------然后经证明,以前的编译方法并没有错,conexant默认的slic驱动并没有初始化时钟和配置参数,只要加载lvoiceok了。

电路板有噪声

经分析,认为是slic初始化不对,加载lvoice后电路板即没有噪声

加载lvoice,时钟,馈电均正常,但是无法实现对呼,无振铃,无拨号音

经多次实验比较,最后用conexnat默认的配置参数可以成功实现对呼,比较两者参数后发现我们自己写的参数由于多加了对端口12的初始化导致lvoice无法完成

 

6USB模块

   12MHZ时钟无法稳定输出--------电路接错,去掉串联电阻,在xtaloutxtalin之间并联1M欧姆电阻,时钟即稳定正常输出。

   焊接好电源管理芯片后,USB模块即正常工作,可以发现USB设备,可以在linux内核下挂载,读写

 

7WIFI模块

   功能上没有问题,无线设备可以搜索到。但是信号太弱

 

8DSL模块

   暂未测试

 

9:内核编译

Flash.bin无法编译出来

Conexant的一系列文件有问题

默认的配置参数,flash有诸多错误

由于intelflash默认的块大小是128k,修改文件系统的配置即可

Flash可以烧写后,加载的文件系统不可写

由于flash容量较小,需要精简内核和文件系统

 

 
 

没有评论: