31.3. 疑難排解

以下清單列出 PCMCIA 偶爾發生的問題中,最顯著的問題。如需有關這一點的詳細資訊,請參閱 PCMCIA README (/usr/share/doc/packages/pcmciautils/README.SuSE)。

31.3.1. 機器因 PCMCIA 而當機

開機過程中,您的機器在啟動 PCMCIA 時當機。若要找出造成當機的原因,請依下述方式手動設定 PCMCIA。藉由手動方式小心設定 PCMCIA,您就可以確實找出造成當機的步驟或元件。找出問題原因後,您可以避開有問題的步驟或元件。

若要手動設定 PCMCIA,請執行下列步驟:

  1. 為開機提示附加下列選項,使 PCMCIA 不會在系統開機時啟動,並啟用 SysRq,以便於偵錯:

    init=3 pcmcia=off sysrq=1

    如需有關 SysRq 的詳細資訊,請參閱 /usr/src/linux/Documentation/sysrq.txt

  2. 將系統啟動到以文字模式為基礎的環境,並以 root 身份登入。

  3. 為核心新增適當的 PCMCIA 模組:

    /sbin/modprobe yenta_socket
    /sbin/modprobe pcmcia
    
  4. 啟動 PCMCIA 插槽:

    /sbin/pcmcia-socket-startup N

    以插槽號碼取代 N。為每個插槽重複此步驟。

  5. 如果上一個步驟會造成當機,表示可能是 /etc/pcmcia/config.opts 中指定的 I/O 或記憶體範圍錯誤,而導致問題。為了防止這種情形發生,請執行下列其中一個動作:

    • 排除 /ect/pcmcia/config.opts 中的範圍,再重新嘗試設定插槽。

    • 依下述方式手動新增範圍。

      成功以手動方式新增適當的範圍後,請將範圍包含在 /etc/pcmcia/config.opts 中做為永久的設定。

  6. 成功完成插槽設定後,依 節 31.2.2, "卡片初始化"節 31.2.3, "介面設定" 所述方式進行卡片初始化和介面設定。

若要手動新增 I/O 範圍,請 (為每個插槽) 執行下列步驟:

  1. 移入存放範圍組態的目錄 (在此例中為 pcmcia_socket0,應隨插槽號碼調整):

    cd /sys/class/pcmcia_socket/pcmcia_socket0
  2. 執行下列指令:

    echo begin - end > available_resources_io

    以新範圍的開始和結束位置取代 beginend。唯有經過反覆試驗後才能決定正確值。

手動新增下列範圍:

echo 0x800 - 0x8ff > available_resources_io
echo 0xc00 - 0xcff > available_resources_io

/etc/lilo.conf 輸入下一行:

include port 0x800-0x8ff, port 0xc00 0xcff

同樣的程序適用於 available_resources_mem 下的記憶體範圍。

[Important]識別錯誤的預設值

如果您在本產品隨附的預設組態檔 (/etc/pcmcia/config.opts) 中發現錯誤的範圍,請在 http://bugzilla.novell.com 中報告該問題,讓開發人員可以研究此議題。

31.3.2. PCMCIA 的一般暫停問題

每當暫停您的系統時 (暫停寫入至磁碟、暫停寫入至 RAM 或待命),請勿在系統處於暫停狀態下拔、插任何硬體項目。否則,系統可能無法正常恢復運作。

若要在暫停狀態下自動退出 PCMCIA 卡,請執行下列步驟:

  1. 登入為 root 使用者。

  2. 開啟 /etc/powersave/sleep 檔案。

  3. 設定下列變數:

    SUSPEND2DISK_EJECT_PCMCIA="yes"
    SUSPEND2RAM_EJECT_PCMCIA="yes"
    STANDBY_EJECT_PCMCIA="yes"
    
  4. 儲存檔案以套用您的設定。

如果必須在暫停狀態下退出其他模組,請依上述方式將模組名稱新增至下列變數:

UNLOAD_MODULES_BEFORE_SUSPEND2DISK=""
UNLOAD_MODULES_BEFORE_SUSPEND2RAM=""
UNLOAD_MODULES_BEFORE_STANDBY=""

如需有關省電精靈的一般資訊,請參閱 節 33.5, "powersave 套件"

31.3.3. 如需詳細資訊

如需有關 PCMCIA 的最新資訊,請參閱 /usr/share/doc/packages/pcmciautils/README.SuSE。如需 PCMCIA 硬體的完整綜覽及其欄位的用法,請參閱 PCMCIA 的官方網站 (http://www.pcmcia.org/pccard.htm)。若要確認 Linux 通常是否支援某介面卡或裝置,請參閱位於 http://tuxmobil.org/pcmcia_linux.htmlLinux PCMCIA/CF/CardBus Card Survey