ASUS AT3IONT-I

出自 ArchWiki

此文章或章节已过时。

原因: 仍然引用了 rc.conf。(在 Talk:ASUS AT3IONT-I 中讨论)

本页面描述了使 ASUS AT3IONT-I 的所有功能正常工作所需的步骤。它假设您已经成功安装了 Arch Linux 并安装了基本软件(用于音频的 ALSA,豪华版中用于无线的 wireless_toolswpa_supplicant 软件包等。)

HDMI 音频

ALSA

许多 ION 主板在尝试通过 HDMI 播放声音时会出现问题。它们通常需要通过 /etc/asound.conf(或者,也可以在每个用户的基础上通过 ~/.asound.conf)进行自定义 ALSA 配置。

/etc/asound.conf
# Needed in order to get sound over HDMI to function

#$ aplay -l
# **** List of PLAYBACK Hardware Devices ****
# card 0: NVidia [HDA NVidia], device 0: ALC887 Analog [ALC887 Analog]
#   Subdevices: 1/1
#   Subdevice #0: subdevice #0
# card 0: NVidia [HDA NVidia], device 1: ALC887 Digital [ALC887 Digital]
#   Subdevices: 1/1
#   Subdevice #0: subdevice #0
# card 0: NVidia [HDA NVidia], device 3: NVIDIA HDMI [NVIDIA HDMI]
#   Subdevices: 1/1
#   Subdevice #0: subdevice #0

pcm.!default {
  type plug
  slave.pcm "dmix:0,3"
}
注意: HDMI 音频由 alsamixer 中的 S/PDIF 1 通道指定。除了配置 /etc/asound.conf 之外,您还需要取消静音该通道。

另请注意,HDMI 音频目前仅在 X 会话(图形环境)中工作。如果您尝试在虚拟终端上运行时使声音工作,则它将无法工作。请参阅 Arch 论坛上的此帖子

提示: 另请参阅 ALSA 以获取更多信息

Pulseaudio

如果您不希望在 asound.conf 中修改 pulseaudio 设置,那么仅取消静音 alsamixer 中的 S/PDIF 1 通道可能就足够了。它是隐藏的,因为您需要按 F6,然后选择 HDA NVidia 并滚动到最右边才能找到它。突出显示它,然后按 M 取消静音。

豪华版

豪华版配备了一些额外的功能,例如板载直流电源、mini-PCI WiFi、RCA 立体声输出、板载蓝牙和随附的红外遥控器。

蓝牙

蓝牙芯片是 Atheros,设备 ID 为 0cf3:3002。它使用 ath3k 驱动程序,该驱动程序自 ~2.6.33 以来已包含在内核中,并且可以与默认 Arch 内核一起开箱即用。

提示: 请参阅 蓝牙 以获取更多信息。

无线

无线芯片组是 Atheros AR9285。

$ lspci | grep Net
05:00.0 Network controller: Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) (rev 01)

它使用 ath9k 驱动程序,该驱动程序自 2.6.27 以来已包含在默认内核中。换句话说,udev 应该可以毫无问题地加载驱动程序——应该不需要额外的配置即可在 ASUS AT3IONT-I 上使无线工作。

提示: 请参阅 无线网络配置#ath9k 以获取更多信息

RCA 立体声输出

未测试。

遥控器

华硕遥控器开箱即用的功能有限。除了底部的八个“特殊”媒体按钮之外的所有功能。另外,您可能必须将内核 mceusb 模块列入黑名单,因为它会失败。LIRCmceusb 模块可以更好地处理遥控器,但仍然不支持华硕遥控器上的所有按钮。

以下方法和模块开发者的来源:Ubuntu 论坛帖子上的用户 pj7

随附的红外接收器需要构建内核模块才能适应它。显然,这是一个相当棘手的小设备。它似乎最适合随附的遥控器——它将随附的遥控器的按钮按下直接转换为键盘按键,但是当使用另一个 MCE 遥控器时,它会向系统报告原始代码。它似乎可以理解其他信号,但是您将需要一个发送正确信号的遥控器。这导致设备的功能受到限制,它只能使用随附的 ASUS 遥控器、JP1 可编程遥控器(用于编程已知信号)或能够学习 ASUS 遥控器的红外信号的通用遥控器。

因此,本节将重点介绍如何使随附的遥控器与随附的接收器一起工作,基于 pj7 的驱动程序

提示: 为了获得最多的功能,购买一个已知在 Linux 中运行良好的体面的红外接收器/遥控器组合可能会更容易。但是如果您很固执,请继续阅读!
注意: 如果您对内核驱动程序开发和红外遥控器的细节方面有更多了解,请查看此帖子,看看是否可以将功能添加到此驱动程序中,特别是对于基本的 MCE 遥控器。

下载源代码,然后使用 tar -xvf hid-philips-asus.tar 解压缩。生成的目录将包含源文件以及 Linux 到 X11 的输入键映射。在构建源代码之前,您必须编辑 mappings.h。此文件将按钮按下映射到 Linux 输入键。请注意,Linux 输入不等于 X11 输入。图形程序(例如媒体播放器、Kodi 等)仅了解 X11 输入,因此您必须将 X11 输入与 Linux 输入匹配。这就是 map_linux_to_x11.txt 文件的用途。

例如,如果您希望将“下一曲目”按钮定义为“XF86AudioNext”(大多数程序都会查找它来播放播放列表中的下一项),则需要在 mappings.h 中将 BUTTON_NEXT 定义为 KEY_NEXTSONG 而不是 KEY_NEXT。这是因为 KEY_NEXTSONG 映射到“XF86AudioNext”(KEY_NEXT 不会注册为任何内容)。

完成按钮映射后,运行 make

$ make
make -C /lib/modules/2.6.36-ARCH/build M=/home/user/hid-philips-asus modules
make[1]: Entering directory `/usr/src/linux-2.6.36-ARCH'
  CC [M]  /home/user/hid-philips-asus/hid-philips-asus.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/user/hid-philips-asus/hid-philips-asus.mod.o
  LD [M]  /home/user/hid-philips-asus/hid-philips-asus.ko
make[1]: Leaving directory `/usr/src/linux-2.6.36-ARCH'

使用 make install 安装驱动程序(以 root 身份)。

现在我们必须确保驱动程序正确加载。您必须做的一件事是将 mceusb 驱动程序列入黑名单,该驱动程序会在检测到红外接收器时尝试加载。然后,您必须确保新的 hid-philips-asus 驱动程序在 usbhid 之前加载,因为 usbhid 会尝试接管接收器。这可以通过 /etc/rc.conf 中的 MODULES 行轻松完成

/etc/rc.conf
MODULES=(... hid-philips-asus usbhid ...)

您必须在 /etc/modprobe.d 中将 mceusb 列入黑名单

/etc/modprobe.d/modprobe.conf
blacklist mceusb

(可能需要重启计算机)

之后,华硕遥控器上的所有按钮都应该可以工作了。如果您发现您宁愿为按钮按下分配不同的操作,则可以轻松编辑 mappings.h 文件并再次 make && make install。或者,您可能对 Xmodmap 感兴趣。

资源