以下是 PCMCIA 偶尔会遇到的最常见问题列表。 有关更多信息,在 PCMCIA README (/usr/share/doc/packages/pcmciautils/README.SuSE) 中可用。
PCMCIA 引导中启动时,机器崩溃。 要找出机器崩溃的原因,如下所述手动设置。 仔细地手动设置 PCMCIA 时,可以清楚地辨认出导致机器崩溃的步骤或组件。 一旦辨认出了故障原因,就可以避开有问题的步骤或组件。
要手动设置 PCMCIA,请执行以下操作:
阻止 PCMCIA 在系统引导时启动,并通过向引导提示符添加以下选项启用选项 syrq 以便更方便地进行调试:
init=3 pcmcia=off sysrq=1
有关 sysrq 的更多信息,请参见 /usr/src/linux/Documentation/sysrq.txt。
将系统引导到基于文本的环境,并以 root 身份登录。
向内核添加适当的 PCMCIA 模块:
/sbin/modprobe yenta_socket /sbin/modprobe pcmcia
启动 PCMCIA 插槽:
/sbin/pcmcia-socket-startup N用插槽编号替换 N。 对每个插槽重复该步骤。
如果以上步骤使机器崩溃了,可能是由于在 /etc/pcmcia/config.opts 中指定了错误的 I/O 或内存范围引起的。 要防止发生这种情况,请执行以下操作之一:
排除 /ect/pcmcia/config.opts 中的范围,重试插槽设置。
如下所述手动添加范围。
成功地手动添加了适当的范围后,通过在 /etc/pcmcia/config.opts 中包括它们永久设置。
成功完成插槽设置后,卡初始化和接口设置按 第 26.2.2 节 “卡的初始化” 和 第 26.2.3 节 “接口设置” 中描述的生效。
要手动添加 I/O 范围,请执行如下操作(对每个插槽):
切换到保存范围配置的目录(在本例中是 pcmcia_socket0,其他插槽编号各有不同):
cd /sys/class/pcmcia_socket/pcmcia_socket0
执行以下命令:
echobegin-end> available_resources_io
用新范围开始和结束的地址更换 begin 和 end。 正确值只能通过试错确定。
手动添加以下范围:
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 下的内存范围也适用相同步骤。
![]() | 标识有问题的默认设置 |
|---|---|
如果发现随本产品交付的默认配置文件 ( | |
暂停系统的任何时候(暂停到磁盘、到 RAM 或待机),不要在系统处于暂停模式时插入或拔出任何硬件。 否则系统可能无法正常恢复。
要在暂停时自动弹出 PCMCIA 卡,请执行如下操作:
以 root 身份登录。
打开文件 /etc/powersave/sleep。
设置以下变量:
SUSPEND2DISK_EJECT_PCMCIA="yes" SUSPEND2RAM_EJECT_PCMCIA="yes" STANDBY_EJECT_PCMCIA="yes"
保存文件以便应用设置。
如果暂停时需要弹出其他模块,执行以上操作,向以下变量添加模块名称:
UNLOAD_MODULES_BEFORE_SUSPEND2DISK="" UNLOAD_MODULES_BEFORE_SUSPEND2RAM="" UNLOAD_MODULES_BEFORE_STANDBY=""
有关 powersave 守护程序的一般信息,请参见 第 28.5 节 “powersave 包”。
在 /usr/share/doc/packages/pcmciautils/README.SuSE 中可找到有关 PCMCIA 的最新信息。 有关 PCMCIA 硬件及其使用领域的全面概述,请转到官方 PCMCIA 万维网站点 (http://www.pcmcia.org/pccard.htm)。 要检查某种卡或设备通常是否受 Linux 支持,请参阅 http://tuxmobil.org/pcmcia_linux.html 上的 Linux PCMCIA/CF/CardBus Card Survey。