drholy revised this gist 9 months ago. Go to revision
1 file changed, 170 insertions
Readme.md(file created)
| @@ -0,0 +1,170 @@ | |||
| 1 | + | На серверах **Huawei 2288H V5** (и других серверах Huawei серии V5) работа с графическим выводом и framebuffer в UEFI-режиме имеет особенности, связанные с тем, что: | |
| 2 | + | ||
| 3 | + | - Эти серверы **не имеют выделенного GPU** — используется **встроенный видеоконтроллер на базе ASPEED AST2500** (или аналогичного BMC-чипа). | |
| 4 | + | - В UEFI-режиме **VESA-совместимый режим отключён** (как раз то, о чём говорит ошибка `vesa: Refusing to run on UEFI`). | |
| 5 | + | - По умолчанию Linux может не видеть `/dev/fb0`, если не загружен правильный драйвер. | |
| 6 | + | ||
| 7 | + | --- | |
| 8 | + | ||
| 9 | + | ### ✅ Цель | |
| 10 | + | Включить **framebuffer** (`/dev/fb0`) в Linux под UEFI на Huawei 2288H V5 для запуска X.Org или консольной графики. | |
| 11 | + | ||
| 12 | + | --- | |
| 13 | + | ||
| 14 | + | ## 🔧 Шаг 1: Убедитесь, что включён видеовыход в BIOS/UEFI | |
| 15 | + | ||
| 16 | + | 1. Перезагрузите сервер. | |
| 17 | + | 2. Зайдите в **BIOS Setup** (обычно клавиша `Delete` или `F2`). | |
| 18 | + | 3. Перейдите в: | |
| 19 | + | ``` | |
| 20 | + | Advanced → PCI Subsystem Settings → AST2500 VGA Support | |
| 21 | + | ``` | |
| 22 | + | 4. Убедитесь, что **AST2500 VGA Support = Enabled**. | |
| 23 | + | 5. Также проверьте: | |
| 24 | + | - `Primary Display` → `AST2500` | |
| 25 | + | - `UEFI GOP Driver` → **Enabled** (GOP = Graphics Output Protocol) | |
| 26 | + | ||
| 27 | + | > ⚠️ Без **GOP** в UEFI Linux не получит графический вывод. | |
| 28 | + | ||
| 29 | + | 6. Сохраните настройки и перезагрузитесь. | |
| 30 | + | ||
| 31 | + | --- | |
| 32 | + | ||
| 33 | + | ## 🔧 Шаг 2: Проверьте наличие устройства в Linux | |
| 34 | + | ||
| 35 | + | После загрузки Linux выполните: | |
| 36 | + | ||
| 37 | + | ```bash | |
| 38 | + | lspci | grep -i vga | |
| 39 | + | ``` | |
| 40 | + | ||
| 41 | + | Вы должны увидеть что-то вроде: | |
| 42 | + | ``` | |
| 43 | + | 04:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family | |
| 44 | + | ``` | |
| 45 | + | ||
| 46 | + | Также проверьте: | |
| 47 | + | ```bash | |
| 48 | + | ls /dev/fb* | |
| 49 | + | dmesg | grep -i ast | |
| 50 | + | dmesg | grep -i frame | |
| 51 | + | ``` | |
| 52 | + | ||
| 53 | + | Если `/dev/fb0` отсутствует, скорее всего, не загружен драйвер `ast`. | |
| 54 | + | ||
| 55 | + | --- | |
| 56 | + | ||
| 57 | + | ## 🔧 Шаг 3: Убедитесь, что загружен драйвер `ast` | |
| 58 | + | ||
| 59 | + | Драйвер ядра Linux для ASPEED называется **`ast`**. | |
| 60 | + | ||
| 61 | + | Проверьте: | |
| 62 | + | ```bash | |
| 63 | + | lsmod | grep ast | |
| 64 | + | ``` | |
| 65 | + | ||
| 66 | + | Если нет — загрузите вручную: | |
| 67 | + | ```bash | |
| 68 | + | modprobe ast | |
| 69 | + | ``` | |
| 70 | + | ||
| 71 | + | Если команда завершается ошибкой (`modprobe: FATAL: Module ast not found`), значит, ваш ядро **не содержит драйвер `ast`**. | |
| 72 | + | ||
| 73 | + | ### 📌 Решение: | |
| 74 | + | - Используйте **более новое ядро Linux** (≥ 4.15, лучше ≥ 5.4). | |
| 75 | + | - Или пересоберите ядро с включённой опцией: | |
| 76 | + | ``` | |
| 77 | + | CONFIG_DRM_AST=y | |
| 78 | + | ``` | |
| 79 | + | (это драйвер DRM/KMS для ASPEED). | |
| 80 | + | ||
| 81 | + | > 💡 Начиная с ядра **4.10–4.15**, поддержка ASPEED AST2500 улучшена. В Ubuntu 20.04+ / Debian 11+ / RHEL 8+ драйвер обычно есть. | |
| 82 | + | ||
| 83 | + | --- | |
| 84 | + | ||
| 85 | + | ## 🔧 Шаг 4: Проверьте, работает ли framebuffer | |
| 86 | + | ||
| 87 | + | После загрузки `ast`: | |
| 88 | + | ```bash | |
| 89 | + | ls /dev/fb0 # должен появиться | |
| 90 | + | cat /sys/class/graphics/fb0/name | |
| 91 | + | ``` | |
| 92 | + | ||
| 93 | + | Вы можете даже вывести изображение (например, через `fbi`): | |
| 94 | + | ```bash | |
| 95 | + | sudo apt install fbi | |
| 96 | + | sudo fbi -T 1 image.jpg | |
| 97 | + | ``` | |
| 98 | + | ||
| 99 | + | --- | |
| 100 | + | ||
| 101 | + | ## 🔧 Шаг 5: Настройка X.Org (если нужно) | |
| 102 | + | ||
| 103 | + | Создайте файл `/etc/X11/xorg.conf.d/20-aspeed.conf`: | |
| 104 | + | ||
| 105 | + | ```conf | |
| 106 | + | Section "Device" | |
| 107 | + | Identifier "ASPEED" | |
| 108 | + | Driver "modesetting" | |
| 109 | + | BusID "PCI:4:0:0" # ← замените на ваш BusID из lspci! | |
| 110 | + | EndSection | |
| 111 | + | ||
| 112 | + | Section "Screen" | |
| 113 | + | Identifier "Screen0" | |
| 114 | + | Device "ASPEED" | |
| 115 | + | DefaultDepth 24 | |
| 116 | + | EndSection | |
| 117 | + | ``` | |
| 118 | + | ||
| 119 | + | > Узнайте точный BusID: | |
| 120 | + | > ```bash | |
| 121 | + | > lspci -nn | grep ASPEED | |
| 122 | + | > # Пример: 04:00.0 → BusID = "PCI:4:0:0" | |
| 123 | + | > ``` | |
| 124 | + | ||
| 125 | + | Затем попробуйте запустить X: | |
| 126 | + | ```bash | |
| 127 | + | startx | |
| 128 | + | ``` | |
| 129 | + | ||
| 130 | + | --- | |
| 131 | + | ||
| 132 | + | ## ⚠️ Важные ограничения | |
| 133 | + | ||
| 134 | + | - ASPEED AST2500 — **очень слабый GPU**, предназначен только для **удалённого управления (iBMC)** и базовой консоли. | |
| 135 | + | - Он **не поддерживает аппаратное ускорение 3D**. | |
| 136 | + | - Разрешение обычно ограничено **1920×1200** или **1280×1024**. | |
| 137 | + | - В некоторых прошивках BMC **графический вывод отключён полностью** — проверьте версию BIOS/iBMC. | |
| 138 | + | ||
| 139 | + | --- | |
| 140 | + | ||
| 141 | + | ## 🔍 Дополнительно: Обновите BIOS/iBMC | |
| 142 | + | ||
| 143 | + | Убедитесь, что у вас **последняя версия BIOS и iBMC** от Huawei: | |
| 144 | + | - Старые версии могут не предоставлять GOP в UEFI. | |
| 145 | + | - Обновления часто добавляют/фиксят поддержку framebuffer. | |
| 146 | + | ||
| 147 | + | Скачать можно с [официального портала Huawei Enterprise](https://support.huawei.com/enterprise/). | |
| 148 | + | ||
| 149 | + | --- | |
| 150 | + | ||
| 151 | + | ## 📌 Краткий чек-лист | |
| 152 | + | ||
| 153 | + | | Шаг | Статус | | |
| 154 | + | |-----|--------| | |
| 155 | + | | ✅ AST2500 VGA в BIOS включён | ✔ | | |
| 156 | + | | ✅ UEFI GOP включён | ✔ | | |
| 157 | + | | ✅ Ядро ≥ 5.4 (или с `CONFIG_DRM_AST`) | ✔ | | |
| 158 | + | | ✅ Модуль `ast` загружен | ✔ | | |
| 159 | + | | ✅ `/dev/fb0` существует | ✔ | | |
| 160 | + | ||
| 161 | + | Если всё сделано — framebuffer заработает, и X.Org сможет использовать `modesetting` драйвер. | |
| 162 | + | ||
| 163 | + | --- | |
| 164 | + | ||
| 165 | + | Если вы укажете: | |
| 166 | + | - Ваш дистрибутив и версию ядра (`uname -r`) | |
| 167 | + | - Вывод `lspci -nn | grep ASPEED` | |
| 168 | + | - Есть ли `/dev/fb0` | |
| 169 | + | ||
| 170 | + | — я помогу точнее! | |
Newer
Older