Chinaunix首页 | 论坛 | 博客
  • 博客访问: 118585
  • 博文数量: 20
  • 博客积分: 1430
  • 博客等级: 上尉
  • 技术积分: 215
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-16 07:08
文章分类

全部博文(20)

文章存档

2011年(1)

2010年(1)

2009年(8)

2008年(10)

我的朋友

分类: BSD

2009-01-04 20:16:34

和我差不多的问题,3550启动时一直出错,自动重启,也采用VIA C3的U.
 

FreeBSD 5.4 與VIA8235 系列的問題


客戶反應說在我們的版子上,安裝 FreeBSD 5.4 會有IDE CRC 的錯誤,錯誤訊息如下
 
 ad2:WARNING - READ_DMA UDMA ICRC ERROR ( retrying  request ) LBA = 1455823
 ad2:WARNING - READ_DMA UDMA ICRC ERROR ( retrying  request ) LBA = 1455823
 ad2:FAILURE   - READ_DMA status=51 (READY,DSC,ERROR)  ERROR =84 .......
 

很明顯,又是磁碟機的 DMA 有問題,該款版子使用的是VT8235的南僑晶片,為了確定親自裝一遍FreeBSD 5.4 試試看就知道。
可惜安裝過程在磁碟格式化的過程就出問題,只有以安全模式 ( disable ACPI & DMA ) 的方式安裝,果然一切順利。也間接印證了我對 IDE 出問題的判斷。

1.安全模式以PIO模式安裝完成後,先以一般設定進入系統,果然出現上面的錯誤訊息。

2.改以安全模式進入系統,OK。

3.進入系統後修改 bootloader 的設定檔 ( 預設應該在 /boot/default/loader.conf  )
4.在kernel tunable 區段,添加下面的控制參數已關閉 DMA 功能
  hw.ata.ata_dma = "0"


5.重開機,搞定! 打完收工

後記:
後來客人接持要使用 DMA 的傳輸模式,還要使用2.5"的硬碟...。一追之下才發現我們的版子上面的2.5" IDE 插槽不知為什麼,都會被 FreeBSD 5.4 判讀成 UDMA100...

雖然我們出貨的硬碟有支援 UDMA100,但是排線卻是DMA33。所以無論如何也不應該判讀成UDMA100。而我們的版子上面有預先設計一個JUMP,連接到 IDE 的 Pin 34 ( PDIAG- ),可以調整DMA33或DMA66。Jump Open 連接到 high,為DMA 33:Jump Close 連接到 Low,為 DMA 66/100。

可是不知道為什麼,此項設計在 WindowXP 、Linux 都可以正常運作,在 FreeBSD 下卻會造成完全相反的結果!?

!?

害我以為是我們的版子設計不當..... 真是 Orz

目前是暫時結案先,但是有機會 我在來追追看為什麼會出問題。

阅读(1422) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~