Страницы

среда, 24 апреля 2013 г.

Intel DN2800MT на рабочем столе Ubuntu 13.04


Особенности интегрированной материнской платы Intel DN2800MT на рабочем столе Ubuntu 13.04


Как уже стало многим понятно, материнская плата Intel DN2800MT, в целом прекрасный, но не доработанный продукт. Плата содержит интегрированный процессор Intel Atom N2800 с пассивным охлаждением (чем и привлекла), со встроенным графическим ядром Intel GMA3650. Эта маленькая особенность, при всех достоинствах платы, создает трудно преодолимые проблемы для использования этой платы в Linux, в графическом окружении.

Кодовое имя платформы: cedartrail
Кодовое имя процессора: cedarview
Процессор: Intel Atom N2800. Рейтинг производительности - 644, по данным cpubenchmark.net
Это примерно соответствует производительности имеющихся у меня компьютеров на базе Athlon X2 Dual Core 4000+ 6 летней давности, работа которых под Ubuntu не вызывает трудностей.

Микросхема LPC аппаратного мониторинга температуры и напряжений: Nuvoton W83627DHG, поддерживается в пакете lm-sensors, но требует тонкой настроки /etc/sensors.d/dn2800mt.conf.


Привходящая версия Ubuntu 13.04, с трудом отображает двумерную графику, эффекты заторможенные, а о 3d - лучше не заикаться.

Однако, связка Intel DN2800MT + xmonad, позволила превратить эту "не пришей" плату в неплохую систему для разработки программ для микроконтроллеров Cortex-M3 Миландр MDR32F9Q2I.

Я ранее, уже применял xmonad для обычного настольного компьютера, что показалось мне удобным. Теперь решил применить и сделать xmonad - основным менеджером окон X-Window и настроить его конфигурацию для разработки программ, на время зимнего использования. Летом - это будет роутер.
Итак, система Intel DN2800MT + Ubuntu 13.04 + Xmonad.
В октябре 2015 года, удалось смигрировать на Intel DN2800MT + Linux Mint 17.2 Mate.



Предварительная настройка
Стандартная установка Ubuntu 13.04 прошла штатно, интереса давно уже не вызывает - пропускаю.

Предварительную настройку для этой платы надо сделать, так как графический драйвер (если он вообще есть) содержит какие-то недоработки.

Итак, у меня к плате по интерфейсу VGA подключен плоский TFT-монитор, однако разрешение установилось не соответствующее монитору. Поиск причины привел к необходимости выполнить команду xrandr, которая заведует дисплеями, их расположением, разрешением и пр. в X Window.

# xrandr

Из которой становиться понятно, какие выходы доступны, какие активные и какое разрешение на них установлено.

Автоматически установившееся разрешение было 1980x1080, что приводило к скрытию частей экрана и пр. визуальным проблемам.

Изменил разрешение текущего экрана X-Window, командой:
# xrandr -s 1280x1024

Разрешение поменялось. Но требовалось постоянное решение и в найденном документе Intel по этой проблеме было решение - надо при загрузке отключить LVDS вывод.

Делается это прописыванием в опции загрузки: video=LVDS-1:d

Я чуть дополнил: video=LVDS-0:d video=LVDS-1:d

Маленькая латинская буква "d" - означает "disable" - отключение.

После перезагрузки разрешение стало корректным. Чуть улучшилась скорость отрисовки. Это если поставить 640x480 - будет шустро работать. А консоль, вообще, должна летать.


$ xrandr
Screen 0: minimum 320 x 200, current 1280 x 1024, maximum 2048 x 2048
VGA-0 connected 1280x1024+0+0 376mm x 301mm
   1280x1024      60.0*+   75.0 
   1280x960       60.0 
   1152x864       75.0 
   1024x768       75.1     70.1     60.0 
   832x624        74.6 
   800x600        72.2     75.0     60.3     56.2 
   640x480        72.8     75.0     66.7     60.0 
   720x400        70.1 
LVDS-0 disconnected
DVI-0 disconnected
DisplayPort-0 disconnected
DVI-1 disconnected
DisplayPort-1 disconnected



Итак, интерфейс Unity на этой материнской плате - неработоспособен.
Кое-как запускается терминал и устанавливается ghc и xmonad. Конфигурационный файл берется из архивов. Перезагрузка, выбор xmonad и вход в систему, запуск консоли (alt+shift+Enter, у меня win+shift+Enter).

Если требуется более дружелюбный интерфейс, то Gnome-Shell 3.8 работает на плате Intel DN2800MT шустрее Unity.
Быстрее Gnome Shell работает любой "легковесный" менеджер рабочих столов, оптимизированный (не использующий графический ускоритель) для старых компьютеров. Т.е. такая вещь как Enlightment - подойдет однозначно.

Если смотреть правде в глаза, эта плата не успевает отрабатывать зажатую клавишу курсора, когда я набираю этот текст в Firefox, в Gnome-Shell. Тот же набор текста, в Firefox, в Xmonad, не вызывает отрицательных ощущений. 30 вкладок переключаются нормально, текст набирается быстро и пр. Мда, всё-таки видеодрайвер надо дорабатывать.
Рядом стоящий старый компьютер с процессором Sempron с отдельным ускорителем, визуально работает быстрее.


Итак, это 2013 год, это Intel. Это 2D. Ощущения Pentium 20-летней давности. Спасибо за нахлынувшие воспоминания.

Теперь, приказ по компании Intel
1. опубликовать полную спецификацию на графический ускоритель  встроенный в процессоры семейства Intel 2000 series, в том числе встроенный в плату Intel DN2800MT.
2. Оказать усиленную поддержку в разработке и оптимизации драйвера для Linux.
3. По исполнению, доложить сообществу.

Ходят непроверенные слухи, что GMA3650 это графический ускоритель -
PowerVR SGX545 от Imagination Technologies. Однако, делает плату Intel и отсутствие драйверов - это её ответственность.
И вообще, использовать чужое графическое ядро, при наличии своих разработок - это  как? Это надо разогнать отдел маркетинга, или как минимум пересмотреть политику.

Приказ по компании Imagination Technologies

1. Проявить предупредительность и опубликовать спецификацию на свой графический ускоритель
2. В качестве мер извинения - разработать open-source драйвер для Intel GMA3650.
3. По исполнению, доложить сообществу и получить всеобщее признание.
4. В случае неисполнения, обанкротиться и прекратить существование.


Дополнительно. Настройка мониторинга напряжений и температур

Стандартная установка пакетов мониторинга:
$ sudo apt-get install lm-sensors, hddtemp

Определение сенсоров:
root@oko# sensors-detect

Чип мониторинга присутствует в системе, но его надо настроить. Для этого создать файл /etc/sensors.d/dn2800mt.conf

После создания файла, надо выполнить команду:
sensors -s
которая пересчитает границы
Если границы не пересчитываются, то надо удалить

После этого, появляется хоть какое-то доверие к системе мониторинга

Системный 3-выводной вентилятор - fan1

Мое содержимое файла /etc/sensors.d/dn2800mt.conf

# Intel DN2800MT sensors
# Dual-Core Intel ® AtomTM Processor N2800
# Чип мониторинга: Nuvoton W83627DHG
# Дата: 15 октября 2015 года
# сервер: tix
# Поместить этот файл в /etc/sensors.d/
# URL: http://gimmor.blogspot.com/2013/04/intel-dn2800mt-ubuntu-1304_24.html


# Суженый выбор чипа, для моей платы, после определения sensors-detect
chip "w83627dhg-isa-0290"

# Неработающие или неиспользуемы выводы
    ignore  cpu0_vid
    ignore  intrusion0
    ignore  in2

    ignore  fan0

    ignore  fan2
    ignore  fan3
    ignore  fan4
    ignore  fan5
    ignore  fan6
    # temp2 всегда 110.5
    ignore  temp2


# Напряжения устройств системы

    # Напряжение процессорного кристалла
    # Т.к. напряжение может менятся в зависимости от режима работы Enhanced Intel SpeedStep Technology, то установлена общая граница
    label   in0            "Processor die, Vcc"
    set     in0_min        0.75
    set     in0_max        1.21

    # Напряжение памяти (Memory, Vcc)
    label   in5            "1.5V Memory"
    set     in5_min        1.5 * 0.95
    set     in5_max        1.5 * 1.05

    # Intel® Platform Controller Hub (PCH) Vcc
    # Intel® NM10 Express Chipset Intel® CG82NM10 PCH)
    # Номинальное напряжение питания внутренней логики 1.05 В
    # Vcc1_05 - напряжение внутренней логики чипсета
    # Границы напряжений 0.998-1.102 в соответствии со спецификацией на Intel NM10 Express chipset
    # Настроена защита границ на 10 мВ
    label   in6            "1.05V Platform Controller Hub, Vcc1_05"
    set     in6_min        0.998+0.010
    set     in6_max        1.102-0.010


# Напряжения ATX стандарта
# Диапазон в соответствии с ATX12V Power Supply Design Guide

    # +12.0V
    label   in1            "ATX +12V"
    compute in1            12*@, @/12
  
    set     in1_min        11.4
    set     in1_max        12.6

    # AVCC
    # Напряжение аналоговой земли, используется в DDI
    # Непроверен, не используется
    label   in2               "Analog Vcc"
  
    # +3.3V
    label   in3            "ATX +3.3V"
    set     in3_min        3.14
    set     in3_max        3.47

    # +5.0V
    label   in4            "ATX +5V"
    compute in4            5*@, @/5
    set     in4_min        4.75
    set     in4_max        5.25

    # +3.3V Standby
    label   in7            "+3.3V Standby"
    set     in7_min        3.3 * 0.95
    set     in7_max        3.3 * 1.05

    # Напряжение часовой батареи (RTC), обычно CR2032 li-Ion
    # Номинальное напряжение 3В
    # Напряжение разряженной батареи 2В
    # Диапазон 2-3.6 VccRTC в соотв. со спецификацией на Intel NM10 Express chipset
    label   in8            "3V CR2032 RTC Battery, VccRTC"
    set     in8_min        2
    set     in8_max        3.6

# Температуры

    # Температура модуля памяти
    # Модуль памяти: 1.5 V DDR3-800 или DDR3-1066 SO-DIMMs, Небуферизированная, без ECC
    label   temp1          "Memory module"
    set     temp1_max      85
    set     temp1_max_hyst 80

    # Температура регулятора напряжения
    label   temp3          "Voltage regulator"
    set     temp3_max      85
    set     temp3_max_hyst 80

# Системные вентиляторы

    # Системный вентилятор
    label   fan1           "3-pin system fan"
    set     fan1_min       0


Температура в простое: 45-50 град Цельсия.
Вот что выводит настроенная системы lm-sensors:

# sensors
coretemp-isa-0000
Adapter: ISA adapter
Core 0:       +45.0°C  (crit = +100.0°C)
Core 1:       +44.0°C  (crit = +100.0°C)

w83627dhg-isa-0290
Adapter: ISA adapter
Processor die, Vcc:                      +0.84 V  (min =  +0.75 V, max =  +1.21 V)
ATX +12V:                               +12.00 V  (min = +11.42 V, max = +12.58 V)
ATX +3.3V:                               +3.31 V  (min =  +3.14 V, max =  +3.47 V)
ATX +5V:                                 +4.96 V  (min =  +4.76 V, max =  +5.24 V)
1.5V Memory:                             +1.49 V  (min =  +1.42 V, max =  +1.58 V)
1.05V Platform Controller Hub, Vcc1_05:  +1.06 V  (min =  +1.01 V, max =  +1.10 V)
+3.3V Standby:                           +3.33 V  (min =  +3.14 V, max =  +3.47 V)
3V CR2032 RTC Battery, VccRTC:           +3.23 V  (min =  +2.00 V, max =  +3.60 V)
3-pin system fan:                        345 RPM  (min =    0 RPM, div = 32)
Memory module:                           +43.0°C  (high = +85.0°C, hyst = +80.0°C)  sensor = CPU diode
Voltage regulator:                       +46.5°C  (high = +85.0°C, hyst = +80.0°C)  sensor = CPU diode

Плюсы получившейся конфигурации

1. Тишина, за счёт пассивной системы охлаждения
2. Автоматическая загрузка рабочей среды
3. Богатые возможности подключения различной периферии
4. Нераздражающая производительность в XMonad
5. Выделенная система - стабильная конфигурация - быстрый старт разработки

Минусы

1. Низкая визуальная производительность. Привыкается со временем, если не использовать одновременно быстродействующие компьютеры (избежать сравнения и расстройства навыков взаимодейтвия).
2. Необычный интерфейс XMonad. Способ взаимодействия требует предварительного обучения, объяснения и понимания преимуществ.
4. Размер. Mini-ITX - это крупно.

Выводы

1. Тщательнее проверять поддержку вновь приобретаемого оборудования на предмет совместимости с Linux
2. Использовать как 3g-роутер, как и было запланировано. Но, куда деться от зуда экспериментаторства?
3. Тишина - это когда слышно как работает блок питания роутера.
4. Для беспроблемной работы (пользователю) установить Linux Mint 17.2 Mate.


Ресурсы

. Описание платы на сайте производителя: http://www.intel.ru/content/www/ru/ru/motherboards/desktop-motherboards/desktop-board-dn2800mt.html

http://habrahabr.ru/sandbox/56311/ Об установке драйверов производителя в среде Linux 12.04.
http://www.lxtreme.nl/ols/ . Сайт программы логического анализатора.
. Заметка о выводе звука через HDMI. http://tt.erinome.net/2012/07/276
. Ветка форума Ubuntu, по теме Intel GMA3600: http://forum.ubuntu.ru/index.php?topic=186601.0
. http://www.linux.org.ru/tag/cedartrail
. Форум IXBT по материнской плате Intel DN2800MT. http://forum.ixbt.com/topic.cgi?id=9:65950
. Установка lm-sensors в Ubuntu. https://help.ubuntu.com/community/SensorInstallHowto
. Мнение Freedesktop.org насчёт предмета обсуждения http://people.freedesktop.org/~zhen/cedarview/
.
.


4 комментария:

Анонимный комментирует...

только что поставил 13.04
все отлично работает, в том числе и ютуб нормально пашет без тормозов, попутно еще успеваю лазить по инету.
Правда я поставил последний биос, который вышел буквально в конце года. Может в этом дело?

Unknown комментирует...

Пытаюсь вот тоже запустить Server 13.10 - ничего не выходит. После бутлога монитор отключается (оранжевая лампочка загорается), хотя сама система вроде как не зависает, реагирует на капс и т.п.
Биос последней версии поставил.

Есть мысли по этому поводу?

Dmitriy комментирует...

Тоже поставил Server. Проблема с пропаданием видеосигнала на этой плате известна и решается просто. В строку параметров загрузки ядра надо добавить опцию video=LVDS-1:d. Это отключит встроенный в плату интерфейс LVDS (панель), который почему-то считается главным.
Вначале сделать просто добавлением через редактирование при загрузке grub, затем, загрузившисть, исправить файл /etc/default/grub и внесение опции video=LVDS-1:d в строку GRUB_CMDLINE_LINUX
Сохранением изменений и обновлением update-grub

Unknown комментирует...

Спасибо большое за конфиг для сенсоров!