Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:0
Поисковых ботовПоисковых ботов:2
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:3
Форум » starterkit.ru » Embedded Linux
Xserver fbturbo
xaba
Добавлено 09.03.2017 11:39
0
Сообщение: 1
xaba
4

Пункты: 15268
Регистрация: 23.04.2012
Плата А20. Ядро 3.4.104

Мне нужно ускорение 2D.

Пытаюсь запустить сервер с ускорением, но не могу понять...
--------------------------------------------------LOG---------------------------------------------------
[2988123.194] (II) Loader magic: 0x17e7f8
[2988123.202] (II) Module ABI versions:
[2988123.211] X.Org ANSI C Emulation: 0.4
[2988123.220] X.Org Video Driver: 19.0
[2988123.228] X.Org XInput driver : 21.0
[2988123.237] X.Org Server Extension : 9.0
[2988123.248] (II) xfree86: Adding drm device (/dev/dri/card0)
[2988123.261] (II) xfree86: Adding drm device (/dev/dri/card1)
[2988123.270] (II) no primary bus or device found
[2988123.283] falling back to /sys/devices/platform/mali_drm.0/drm/card0
[2988123.291] (II) LoadModule: "fbturbo"
[2988123.305] (II) Loading /usr/lib/xorg/modules/drivers/fbturbo_drv.so
[2988123.330] (II) Module fbturbo: vendor="X.Org Foundation"
[2988123.338] compiled for 1.17.2, module version = 0.4.0
[2988123.351] Module class: X.Org Video Driver
[2988123.360] ABI class: X.Org Video Driver, version 19.0
[2988123.369] (II) FBTURBO: driver for framebuffer: fbturbo
[2988123.390] (++) using VT number 1

[2988123.399] (WW) Falling back to old probe method for fbturbo
[2988123.408] (II) Loading sub module "fbdevhw"
[2988123.417] (II) LoadModule: "fbdevhw"
[2988123.430] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[2988123.440] (II) Module fbdevhw: vendor="X.Org Foundation"
[2988123.448] compiled for 1.17.2, module version = 0.0.2
[2988123.463] ABI class: X.Org Video Driver, version 19.0
[2988123.475] (II) FBTURBO(0): using /dev/fb0
[2988123.484] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[2988123.492] (II) FBTURBO(0): Creating default Display subsection in Screen section
"Default Screen Section" for depth/fbbpp 24/32
[2988123.501] (==) FBTURBO(0): Depth 24, (==) framebuffer bpp 32
[2988123.514] (==) FBTURBO(0): RGB weight 888
[2988123.523] (==) FBTURBO(0): Default visual is TrueColor
[2988123.532] (==) FBTURBO(0): Using gamma correction (1.0, 1.0, 1.0)
[2988123.540] (II) FBTURBO(0): hardware: (video memory: 32400kB)
[2988123.549] (**) FBTURBO(0): Option "fbdev" "/dev/fb0"
[2988123.566] (**) FBTURBO(0): Option "DRI2" "true"
[2988123.587] (**) FBTURBO(0): Option "SwapbuffersWait" "true"
[2988123.605] (II) FBTURBO(0): processor: ARM Cortex-A7
[2988123.614] (II) FBTURBO(0): checking modes against framebuffer device...
[2988123.622] (II) FBTURBO(0): checking modes against monitor...
[2988123.632] (--) FBTURBO(0): Virtual size is 1280x720 (pitch 1280)
[2988123.641] (**) FBTURBO(0): Built-in mode "current": 74.2 MHz, 45.0 kHz, 60.0 Hz
[2988123.650] (II) FBTURBO(0): Modeline "current"x0.0 74.25 1280 1390 1430 1650 720 725 730 750 +hsync +vsync -csync (45.0 kHz b)
[2988123.671] (==) FBTURBO(0): DPI set to (96, 96)
[2988123.679] (II) Loading sub module "fb"
[2988123.688] (II) LoadModule: "fb"
[2988123.701] (II) Loading /usr/lib/xorg/modules/libfb.so
[2988123.711] (II) Module fb: vendor="X.Org Foundation"
[2988123.735] compiled for 1.17.2, module version = 1.0.0
[2988123.748] ABI class: X.Org ANSI C Emulation, version 0.4
[2988123.757] (==) Depth 24 pixmap format is 32 bpp
[2988123.769] (II) FBTURBO(0): using backing store heuristics
[2988123.790] (II) FBTURBO(0): enabled G2D acceleration
[2988123.801] (==) FBTURBO(0): Backing store disabled
[2988123.811] (II) FBTURBO(0): using sunxi disp layers for X video extension
[2988123.819] (II) FBTURBO(0): using hardware cursor
[2988123.852] (II) Loading sub module "dri2"
[2988123.863] (II) LoadModule: "dri2"
[2988123.880] (II) Module "dri2" already built-in
[2988123.894] (II) FBTURBO(0): enabled display controller hardware overlays for DRI2
[2988123.903] (II) FBTURBO(0): Wait on SwapBuffers? enabled
[2988123.912] (II) FBTURBO(0): [DRI2] Setup complete
[2988123.921] (II) FBTURBO(0): [DRI2] DRI driver: lima
[2988123.941] (II) FBTURBO(0): using DRI2 integration for Mali GPU (UMP buffers)
[2988123.950] (II) FBTURBO(0): Mali binary drivers can only accelerate EGL/GLES
[2988123.958] (II) FBTURBO(0): so AIGLX/GLX is expected to fail or fallback to software
[2988123.967] (==) RandR enabled
--------------------------------------------------LOG---------------------------------------------------
Судя по логу ускорение есть.
Использую SDL2 для вывода текстур.

Video SDL: driver = x11, w = 1280, h = 720, rate = 60, format = 24 bpp

Но функция SDL_CreateRenderer( window, -1, SDL_RENDERER_ACCELERATED );
Говорит что нет такого рендера, в итоге перехожу на софтовый

При запросе списка рендеров пишет:

Renderer: software software=1 accelerated=0, presentvsync=0 targettexture=1

Только софтовый(
Спуститься к концу Подняться к началу
Персональная информация
Konachan
Добавлено 09.03.2017 11:52 Сообщение: 2
Konachan
5

Пункты: 3815
Регистрация: 30.08.2014
Цитата
[2988123.958] (II) FBTURBO(0): so AIGLX/GLX is expected to fail or fallback to software

Включен софтовый рендер. Чтобы всё заработало, надо принудительно отключить GLX в xorg.conf
Спуститься к концу Подняться к началу
Персональная информация
xaba
Добавлено 09.03.2017 12:09 Редактировалось 09.03.2017 12:47 Сообщение: 3
xaba
4

Пункты: 15268
Регистрация: 23.04.2012
К сожалению ничего не изменилось(

Section "Device"
Identifier "Allwinner A10/A13 FBDEV"
Driver "fbturbo"
Option "fbdev" "/dev/fb0"
Option "AIGLX" "false"
Option "DRI2" "true"
Option "SwapbuffersWait" "true"
EndSection

[3878743.624] (II) FBTURBO(0): enabled display controller hardware overlays for DRI2
[3878743.659] (II) FBTURBO(0): Wait on SwapBuffers? enabled
[3878743.674] (II) FBTURBO(0): [DRI2] Setup complete
[3878743.691] (II) FBTURBO(0): [DRI2] DRI driver: lima
[3878743.705] (II) FBTURBO(0): using DRI2 integration for Mali GPU (UMP buffers)
[3878743.721] (II) FBTURBO(0): Mali binary drivers can only accelerate EGL/GLES
[3878743.737] (II) FBTURBO(0): so AIGLX/GLX is expected to fail or fallback to software
[3878743.752] (==) RandR enabled
[3878744.230] (II) config/udev: Adding drm device (/dev/dri/card0)
[3878744.239] (II) xfree86: Adding drm device (/dev/dri/card0)
[3878744.248] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied
[3878744.263] (II) config/udev: Adding drm device (/dev/dri/card1)
[3878744.271] (II) xfree86: Adding drm device (/dev/dri/card1)
[3878744.280] (II) LoadModule: "modesetting"
[3878744.294] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
[3878744.308] (II) Module modesetting: vendor="X.Org Foundation"
[3878744.316] compiled for 1.17.2, module version = 1.17.2
[3878744.330] Module class: X.Org Video Driver
[3878744.339] ABI class: X.Org Video Driver, version 19.0
[3878744.348] xf86: found device 0
[3878744.375] (II) config/udev: removing GPU device /sys/devices/platform/mali_drm.1/drm/card1 /dev/dri/card1
[3878744.384] (II) config/udev: Adding drm device (/dev/dri/card1)
[3878744.392] (II) xfree86: Adding drm device (/dev/dri/card1)
[3878744.401] (II) LoadModule: "modesetting"
[3878744.414] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
[3878744.423] (II) Module modesetting: vendor="X.Org Foundation"
[3878744.432] compiled for 1.17.2, module version = 1.17.2
[3878744.445] Module class: X.Org Video Driver
[3878744.453] ABI class: X.Org Video Driver, version 19.0
[3878744.462] (II) UnloadModule: "modesetting"
[3878744.495] (II) Unloading modesetting
[3878744.512] (II) Failed to load module "modesetting" (already loaded, 1638932)
[3878744.521] xf86: found device 0
[3878744.530] (II) config/udev: removing GPU device /sys/devices/platform/mali_drm.0/drm/card0 /dev/dri/card0
[3878744.541] (II) config/udev: Adding drm device (/dev/dri/card0)
[3878744.549] (II) xfree86: Adding drm device (/dev/dri/card0)
[3878744.562] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied

ls -al /dev/dri/card0
crw-rw---- 1 root video 226, 0 Jan 1 06:02 /dev/dri/card0

Где порыть?
Спуститься к концу Подняться к началу
Персональная информация
Konachan
Добавлено 09.03.2017 14:29 Сообщение: 4
Konachan
5

Пункты: 3815
Регистрация: 30.08.2014
Цитата
(EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied

Нет прав на устройство. Надо сделать правило в udev
Спуститься к концу Подняться к началу
Персональная информация
xaba
Добавлено 09.03.2017 14:30 Редактировалось 09.03.2017 14:48 Сообщение: 5
xaba
4

Пункты: 15268
Регистрация: 23.04.2012
После повторного запуска сообщение исчезает.
И это не причина. Проверил
Спуститься к концу Подняться к началу
Персональная информация
xaba
Добавлено 09.03.2017 20:18 Редактировалось 09.03.2017 20:37 Сообщение: 6
xaba
4

Пункты: 15268
Регистрация: 23.04.2012
Хорошо. Не получается(
Тогда есть ли варианты использование 2D или 3D ускорителя без завязки Х сервера.
SDL использует X11, но не видит ускоритель. Как быть...

Нужно менять масштаб текстур на лету, те задержки должны быть минимальны.
Я в тупике(

Пробую FFMPEG но там софтовый scale((

Грубо говоря есть исходная текстура 1920x60 надо превратить её в 1280x60.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 10.03.2017 16:24 Редактировалось 10.03.2017 16:25 Сообщение: 7
sasamy
4.71

Пункты: 83552
Регистрация: 14.08.2009
SDL2 может работать без иксов с EGL/ES2, не уверен только поддерживает ли Mali - возможно надо немного инициализацию добавить

https://solarianprogrammer.com/2015/01/22/raspberry-pi-raspbian-getting-started-sdl-2/
Спуститься к концу Подняться к началу
Персональная информация
xaba
Добавлено 10.03.2017 17:30 Редактировалось 10.03.2017 17:31 Сообщение: 8
xaba
4

Пункты: 15268
Регистрация: 23.04.2012
Я там смотрел, к сожалению стандартная инициализация SDL под мали не подходит. Нарыл в исходниках мали пример как использовать EGL.

Маленький прорыв, посмотрим покрутим. Спасибо
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 10.03.2017 17:40 Сообщение: 9
sasamy
4.71

Пункты: 83552
Регистрация: 14.08.2009
Цитата

Я там смотрел, к сожалению стандартная инициализация SDL под мали не подходит


Для i.mx6 (vivante) mastermind делал - можно на его примере добавить Mali

https://www.starterkit.ru/html/index.php?name=forum&op=view&id=25479#25480
Спуститься к концу Подняться к началу
Персональная информация
xaba
Добавлено 10.03.2017 17:54 Сообщение: 10
xaba
4

Пункты: 15268
Регистрация: 23.04.2012
Интересно. Люди вроде пилят драйвер под мали. Сейчас проверим.

https://github.com/mihailescu2m/libsdl2-2.0.2-dfsg1
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux