NEC Versa S950 (Русский)

From ArchWiki
Jump to: navigation, search

Tango-preferences-desktop-locale.pngЭта страница нуждается в сопроводителеTango-preferences-desktop-locale.png

Статья не гарантирует актуальность информации. Помогите русскоязычному сообществу поддержкой подобных страниц. См. Команда переводчиков ArchWiki

Tango-dialog-warning.pngИнформация в этой статье или разделе устарелаTango-dialog-warning.png

Причина: rc.d references. Needs update, see Systemd (Русский). (Обсудить)

Общая информация

NEC Versa S950 — относительно небольшой ноутбук с процессором Pentium M и матовым 14-дюймовым экраном. Он весит около 2.2 кг и может проработать чуть больше трёх часов в автономном режиме от штатной батареи на 4800 mAh.

Ноутбук полностью совместим с Linux, для всех бортовых устройств есть опенсоурсные драйвера. Базовая установка Arch Linux проходит без проблем, а инструкции на этой страничке призваны помочь донастроить отдельные устройства. Не обязательно выполнять их все, запускайте только то что вам необходимо.

Подразумевается что читатель имеет некоторый опыт работы с Linux и может настроить Arch самостоятельно; неспецифичные для S950 моменты я опускаю.

Компоненты

  • Процессор: Pentium M 1.73GHz
  • Экран: 14", матовый, 1280x768
  • Память: 1G
  • Чипсет: i915GM
  • BIOS: Phoenix NoteBIOS ver.4 rev.6.1
  • Жёсткий диск: 60G Hitachi Travelstar 5K100
  • Оптический привод: Philips SDVD8441
  • Звук: SigmaTel STAC9200
  • Ethernet: Broadcom BCM5788
  • Wi-Fi: Intel PRO/Wireless 2200BG
  • Bluetooth: Broadcom 2101
  • IrDA: какой-то NSC
  • Модем: Agere Athens
  • Карт-ридер: TI FlashMedia SD
  • FireWire: TI OHCI-совместимый
  • Тачпад: AVC Finger sensing pad

Существует несколько модификаций с разными обьёмами памяти и HDD.

Настройка

Процессор

Для управления частотой процессора необходим модуль acpi-cpufreq и какой-нибудь из governor'ов (обычно cpufreq_ondemand, хотя я в последнее время предпочитаю cpufreq_powersave).

Стандартный для Arch способ: поставьте cpufrequtils из [extra], проверьте /etc/conf.d/cpufreq:

	governor="ondemand"
	#min_freq закомментировано
	#max_freq закомментировано

и добавьте cpufreq к DAEMONS в /etc/rc.conf (не помешает его сразу и запустить). См. Cpufrequtils, CPU frequency scaling.

Текстовая консоль

Ни одного интересного текстового режима в BIOS. Жаль. Оставляйте стандартный 80x25, либо включайте фрейм-буферную консоль.

Xorg/video

Используйте драйвер intel. Соотвествующая секция из моего xorg.conf:

	Section "Device"
		Identifier		"i915G"
		Driver			"intel"
		Option "DRI"		"true"
	EndSection
	
	Section "Screen"
		Identifier		"Screen0"
		Device			"i915G"
		Monitor			"Versa display"
		DefaultColorDepth	24
		SubSection "Display"
			Depth 		24
			Modes		"1280x768"

Virtual 1280 1536

		EndSubSection
	EndSection

DRI обеспечивается модулем i915, который подгружается автоматически.

Режим 1280x768 должен работать без 915resolution, но там есть какие-то подводные камни. Внимательно проверьте в каком режиме запустились X'ы, при необходимости поставьте 915resolution из [community] и добавьте

	915resolution 5с 1280 768 32

в rc.local (как вариант, см. /etc/conf.d/915resolution и /etc/rc.d/915resolution).

Указанного значения Virtual хватит для конфигурации с двумя экранами 1280x768, один под другим (см. ниже про внешний монитор). Внимание: если хотя бы одно из чисел в Virtual превосходит 2048, DRI отключится.

Программное управление подстветкой (xbacklight), похоже, отсуствует.

Xorg/input

Клавиатура: клавиша Fn обрабатывается где-то в BIOS'е, доступа к ней нет. Две дополнительные кнопки рядом с Power генерируют коды 178 и 236, на них удобно ставить suspend-to-ram и suspend-to-disk.

Тачпад: тупое изделие фирмы AVC, сидит на PS/2. Используйте /dev/input/mice и не тратте время на поиск нестандартных настроек — их там нет. В частности, это не Synaptics и не ALPS. Скорее всего прийдётся включить Emulate3Buttons, третьей кнопки на нём нет. А вот кнопки 4 и 5 есть — это правый верних и нижний угол тачпада. Соответствующая секция моего xorg.conf:

	Section "InputDevice"
		Identifier		"Main mouse"
		Driver 			"mouse"
		Option "Protocol"	"auto"
		Option "Device"		"/dev/input/mice"
		Option "Emulate3Buttons" "true"
		Option "ZAxisMapping"	"4 5"
	EndSection

Hitachi HDD

См. laptop harddrive Load_Cycle_Count issue насчёт сути проблемы. Если не хотите чтобы он парковался во время работы, добавьте

	hdparm -q -B 250 /dev/sda

в /etc/rc.local, этого значения будет вполне достаточно.

Внимание: парковка — не всегда зло. Не запускайте hdparm -B если не понимаете что вы делаете и зачем вам это!

Звук и Ethernet

Инсталлятор правильно определяет модули (snd_hda_intel и tg3 соотв.), дополнительной настройки не требуется.

Wi-Fi

Инсталлятор правильно определяет модуль ipw2200, но для того чтобы он заработал необходимо поставить прошивку — ipw2200 из [core]. Добавьте

	options ipw2200 led=1

в modprobe.conf чтобы включить LED на передней панели. Комбинацией Fn+F2 можно включать/выключать карту.

Bluetooth

Драйвер (hci_usb) подгружается автоматически. Комбинация Fn+F4 отсоединяет устройство от шины, это можно наблюдать в kernel.log.

Внимание: для того чтобы "hcitool dev" показывал устройства, необходимо чтобы был запущен весь набор bluetooth'ных демонов. Поставьте bluez-utils и загляните в /etc/rc.d/bluetooth.

IrDA

Загрузите модуль nsc-ircc, и/или добавьте его в MODULES. Должно работать, но я не проверял.

FireWire

Модуль ohci1384 подгружается автоматически, настройки не требуется.

CardBus (PCMCIA)

Настройки не требуется.

Карт-ридер

Настройки не требуется, модуль tifm_sd подгружается автоматически. Карта будет доступна как /dev/mmcblk0, её разделы как mmcblk0p1, mmcblk0p2 и т.д.

Фрейм-буфер

Чтобы получить 1280x768, прийдётся использовать uvesafb. Штуковина достаточно своенравная, если мой рецепт не сработает — читайте нормальную документацию и разбирайтесь по месту.

Для работы uvesafb, кроме самого модуля (который есть в стандартном Arch'евом ядре) необходим демон v86d. А чтобы получить именно 1280x768, 915resolution должна пропатчить видеобиос до того как его uvesafb его прочитает.

Будем запускать v86d и 915resolution из initrd. Оба пакета есть в репозитариях Arch'а, но использовать их скорее всего не удастся. Проверьте, запускается ли v86d из [extra], или натравите на него ldd — никаких сегфолтов (Segmentation fault) быть не должно. Если они есть, прийдётся пересобрать его с --with-x86emu. Если сегфолтов не было — вам может быть повезло. Также пересоберите 915resolution с klibc вместо glibc, которой в initrd не будет. Для этого достаточно указать make'у CC = klcc.

Кроме собственно бинарников, для mkinitcpio необходимы ещё hook'и: /lib/initcpio/{install,hooks}/{915resolution,v86d}. Проще всего взять их из готовых пакетов для v86d и 915resolution. Подправьте режим в hooks/915resolution:

	msg -n ":: Patching the VBIOS..."
	/usr/sbin/915resolution 5c 1280 768

и в /etc/modprobe.d/uvesafb (внимание! параметр называется mode, а не mode_option!):

	options uvesafb mode=1280x768 scroll=ywrap

затем добавьте обоих в HOOKS в /etc/mkinitcpio.conf:

	HOOKS = (base udev 915resolution v86d ... )

и пересоберите initrd:

	mkinitcpio -p linux

Если всё прошло нормально, перезапустите систему. Как вариант, можно сделать modprobe uvesafb — экран должен переключится в графический режим.

Более подробную информацию можно найти на страничке uvesafb или на официальном сайте uvesafb.

Внимание: uvesafb и suspend-to-RAM не могут работать одновременно. Выбирайте что-то одно.

Modem

Модема в этом ноутбуке нет. Ok, эти штуки сейчас иногда называют модемами, но это только название. Agere Athens (или Athena, по некоторым NEC'овским спекам) представляет собой что-то вроде AMR-карты, насадки к звуковой карте с необычным (телефонным) разьёмом. Выглядит она при этом как часть звуковой и управляется тем же snd_hda_intel.

Чтобы собрать из этого всего модем, необходима программка slmodem. Соберите её с SUPPORT_ALSA=1, после чего запустите

	slmodemd -a modem:0

Пообщаться с таким модемом можно через виртуальный com-порт /dev/ttySL0.

Внешний монитор

Управления с клавиатуры, похоже, нет, зато есть весьма мощное програмное — через утилиту xrandr. Типовые команды:

  • включить выход: xrandr --output VGA --auto
  • выключить выход: xrandr --output VGA --off
  • показывать копию основного эрана: xrandr --output VGA --same-as LVDS
  • сделать два независимых экрана: xrandr --output VGA --right-of LVDS

Чтобы двухэкранная конфигурация работала, область Vritual должна быть не меньше чем совмещённые соотвествующим образом экраны. Т.е., для двух экранов 1280x768 значения Virtual должны быть как минимум 1280 1536 при расположении экранов один-под-другим.

Гибернация

S4 (suspend-to-disk), кажется, работает нормально. S3 (suspend-to-RAM) тоже работает, но только если поблизости нет uvesafb. Если uvesafb есть, X-сервер упадёт сразу после пробуждения, и поднять его не удастся аж до следующей перезагрузки. Возможно, ситуация изменится в будущих версиях xf86-video-intel и uvesafb, но сейчас использовать их вместе нельзя.

После выхода из S3 необходимо проPOSTить видеокарту, иначе на консолях не будет изображения. Кроме того, жёсткий диск "забывает" про hdparm -b во время сна, соотв. комманду желательно поместить в подходящее место чтобы она выполнялась при пробуждении.

Активировать режимы можно несколькими способами.

Непосредственно через ядро: для режима S4 выполните

 	echo 4 > /proc/acpi/sleep

Режим S3 трогать таким образом категорически не рекомендуется.

uswsusp: комманды s2disk для S4 и s2ram для S3. Для s2ram понадобится опция --vbe_post (или соотв. строка в whitelist.c с VBE_POST в последнем поле).

pm-utils: комманды pm-suspend для S3 и pm-hibernate для S4. Выполняемы при засыпании/пробуждении скрпты помещаются в /etc/pm/sleep.d (см. документацию и примеры).

Пробудить ноутбук в обоих режимах можно кнопкой Power, а в S3 — ещё и открытием экрана. В режиме S4 не забывайте про параметр ядра resume=/dev/sdNX, где sdNX — имя swap-раздела.

За дополнительной информацией см. Suspend to Disk и Suspend to RAM.

Разборка

Иногда возникает необходимость снять некоторые детали ноутбука (хотя бы для чистки). Порядок разборки не всегда очевиден, а официальное Disassembly guide найти проблематично, поэтому вот короткое руководство:

Память и WiFi-карта: под крышкой на нижней стороне. Крышка держится двумя винтами у нижнего края.

Оптический привод: там же, слева от крышки два винта. Откручиваем тот которые менее утоплен в корпус, и толкаем металлический хвостик слева под крышкой до тех пор пока привод не выйдет.

Клавиатура: тут необходимо снять пластиковую панель со светодиодами и кнопками. Откручиваем винты на задней стороне петель экрана, вытаскиваем батарею, открываем экран на 180° и толкаем панель снизу (там несколько защёлок). Слева и справа от батарейного отсека имеет смысл подтолкнуть её маленькой отвёрткой. В конце концов панель откроется, поворачивась вокруг ближней к клавиатуре стороны, и её можно будет вытащить.

Сама клавиатура держится двумя винтами с верхней стороны и ещё одним винтом (с пометкой K) снизу. Отвинчиваем их и вытаскиваем клавиатуру, толкая её в сторону экрана.

Вентилятор: под клавиатурой.

Общие замечания

Не допускайте слишком сильного давления на верхнюю крышку — она сравнительно мягкая, можно повредить экран (поцарапать его о ботик клавиатуры).

Когда ноутбук работает под максимальной нагрузкой, стоя при этом на ровной поверхности (стол и т.д.), температура в термозоне (процессор) поднимается выше 70°C. Чтобы не допускать этого, поднимите его на пару сантиметров над поверхностью так, чтобы прохладный воздух свободно проникал во входное отверстие вентилятора — температура сразу упадёт до ~65°C.

Wi-Fi карта установлена в обычный miniPCI слот, скрытый под крышкой на нижней стороне ноутбука. При необходимости её можно поменять на что-то другое.