Kodi 18 Mainline Linux AllWinner H3 на wayland

Тестировал на Armbian Bionic Orangepipc от armbian,
ставим Armbian Link.
меняем текущее ядро на linux-4.14.84-sunxi и ставим хидеры ядра

wget https://apt.armbian.com/pool/main/l/linux-4.14.84-sunxi/linux-image-next-sunxi_5.67_armhf.deb

wget https://apt.armbian.com/pool/main/l/linux-4.14.84-sunxi/linux-dtb-next-sunxi_5.67_armhf.deb

wget https://apt.armbian.com/pool/main/l/linux-4.14.84-sunxi/linux-headers-next-sunxi_5.67_armhf.deb

dpkg -i *-next-sunxi_5.67_armhf.deb

Kodi.png
Kodi собран с опциями
-DCORE_PLATFORM_NAME=wayland -DWAYLAND_RENDER_SYSTEM=gles
патчи от jernejsk.
Сборка пакета kodi (kodi-wayland) для Mainline Linux AllWinner H3 на Armbian Bionic .

ставил на weston
Weston — это «эталонный» графический сервер от wayland который служит как пример реализации + для всяких тестов, в реальном DE (gnome, kde) он не используется

Wayland работает непосредственно поверх ядра, и позволяет клиентским приложениям осуществлять рендеринг напрямую без использования промежуточного слоя. В Wayland используется прямой рендеринг через OpenGL или OpenGL ES.

Вы должны понимать, что Weston не предназначен для повседневного использования,
а используется исключительно для тестов

Обращаю ваше внимание, все команды я выполняю от root’а на терминале PuTTY
вывод команды uname -a

Linux orangepipc 4.14.84-sunxi #3 SMP Sat Dec 1 07:18:41 CET 2018 armv7l armv7l armv7l GNU/Linux

собираем модуль mali.ko (просто скопируйте код, и вставьте в терминал )
исходники пропатчены, patch.

wget https://ua3nbw.ru/files/DX910-SW-99002-r9p0-01rel0.tgz
tar -xvf DX910-SW-99002-r9p0-01rel0.tgz
cd $HOME/DX910-SW-99002-r9p0-01rel0/driver/src/devicedrv/mali
export CROSS_COMPILE=arm-linux-gnueabihf-
export KDIR=/lib/modules/$(uname -r)/build

make MALI_PLATFORM_FILES=platform/sunxi/sunxi.c \
    EXTRA_CFLAGS="-DCONFIG_MALI_DVFS \
    -DMALI_FAKE_PLATFORM_DEVICE=1 \
    -DCONFIG_MALI_DMA_BUF_MAP_ON_ATTACH" \
    CONFIG_MALI400=m USING_DVFS=1 

mkdir -p /lib/modules/$(uname -r)/extra
cp -PR mali.ko /lib/modules/$(uname -r)/extra/mali.ko

depmod
modprobe mali

вывод команды ls -l /dev/mali

crw———- 1 root root 10, 57 Oct 28 15:08 /dev/mali

вывод команды lsmod | grep mali

mali 475136 0

ставим блобы (просто скопируйте код, и вставьте в терминал )

cd
wget https://ua3nbw.ru/files/mali-blobs.tgz
tar -xvf mali-blobs.tgz
cd $HOME/mali-blobs
    cp -av include/wayland/* /usr/include
  mkdir -p /usr/lib/pkgconfig
    cp -PRv pkgconfig/*.pc /usr/lib/pkgconfig

  MALI="r6p2/arm/wayland/libMali.so"
  mkdir -p /usr/lib/mali
    cp -v $MALI /usr/lib/mali

    for lib in libEGL.so \
               libEGL.so.1 \
               libEGL.so.1.4 \
               libGLESv2.so \
               libGLESv2.so.2 \
               libGLESv2.so.2.0 \
               libgbm.so \
               libgbm.so.1; do
      ln -sfv libMali.so /usr/lib/mali/${lib}
        
    done

echo "/usr/lib/mali" > /etc/ld.so.conf.d/1-mali.conf
ldconfig

ставим необходимые пакеты

apt install -y xwayland  weston libavahi-client3  libbluray2  libcec4 \
 liblirc-client0 libmicrohttpd12  libnfs11  libpulse0 libpython2.7 \
 libsmbclient libxslt1.1 libass9 libcdio17  libva2 libvpx5 libopencore-amrwb0 \
 libopencore-amrnb0 libtheora0 libvo-amrwbenc0 libx264-152 libx265-146 \
 libxvidcore4 libva-drm2 libvdpau1 libfstrcmp0 libpcrecpp0v5 \
 libtag1v5-vanilla libtinyxml2.6.2v5 libva-x11-2

ставим пакет kodi

wget https://ua3nbw.ru/files/deb/kodi_18.0.3_armhf.deb
dpkg -i kodi_18.0.3_armhf.deb

для автозапуска weston-launch создаём файл

nano /lib/systemd/system/weston-launch.service

копируем и вставляем в nano следующий код.

[Unit]
Description=Weston Wayland compositor startup
RequiresMountsFor=/run

[Service]
User=root
EnvironmentFile=-/etc/default/weston
Environment="XDG_RUNTIME_DIR=/run/user/1000"
Environment="DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/dbus/user_bus_socket"
ExecStartPre=/usr/bin/sudo /bin/mkdir -p /run/user/1000/dbus
ExecStartPre=/usr/bin/sudo /bin/chown -R root:root /run/user/1000/dbus
ExecStartPre=/bin/chmod -R 0700 /run/user/1000
ExecStart=/usr/bin/sudo -E -- /bin/openvt -v -w -s -- su root -l -c "XDG_RUNTIME_DIR=/run/user/1000 /usr/bin/weston-launch -- $OPTARGS 2>~/.weston-errors"

[Install]
WantedBy=multi-user.target

Сохраняем изменения в файле (ctrl + o) и закрываем файл (ctrl + x).
включение и запуск сервиса

systemctl enable weston-launch.service
systemctl start weston-launch.service

вывод команды systemctl status weston-launch.service


● weston-launch.service — Weston Wayland compositor startup
Loaded: loaded (/lib/systemd/system/weston-launch.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2018-10-18 11:48:29 UTC; 2s ago
Process: 1869 ExecStartPre=/bin/chmod -R 0700 /run/user/1000 (code=exited, status=0/SUCCESS)
Process: 1867 ExecStartPre=/usr/bin/sudo /bin/chown -R root:root /run/user/1000/dbus (code=exited, sta
Process: 1865 ExecStartPre=/usr/bin/sudo /bin/mkdir -p /run/user/1000/dbus (code=exited, status=0/SUCC
Main PID: 1870 (sudo)
Tasks: 2 (limit: 2225)
CGroup: /system.slice/weston-launch.service
├─1870 /usr/bin/sudo -E — /bin/openvt -v -w -s — su root -l -c XDG_RUNTIME_DIR=/run/user/10
└─1871 /bin/openvt -v -w -s — su root -l -c XDG_RUNTIME_DIR=/run/user/1000 /usr/bin/weston-l


если

lsmod | grep mali

выводит:
mali 475136 5
идём дальше, драйвер (модуль) mali, успешно загрузился и работает.

в левом углу weston иконка виртуального терминала
запускаем виртуальный терминал и из терминала запускаем kodi

kodi

Кому лень повторять эту ахинею, вот готовый образ для PC. img для OrangePI-PC
pass root:orangepi
user ua3nbw:orangepi
Audio на AV выход:

amixer -c 0 -q set "Line Out"  100%+ unmute
amixer -c 0 -q set "DAC"  100%+ unmute
speaker-test -twav -c2   #тест на аудио выход

Прикрыл комментарии в блоге, атака спамеров, на вопросы могу ответить на форуме orangepi.pp.ua, слежу за  этой темой : mali на mainline ядре
иногда просматриваю Kodi vs mpv Video Player on Armbian

Вы должны понимать, что Weston не предназначен для повседневного использования,
а используется исключительно для тестов, гашение экрана каждые 5 минут
можно отключить добавив параметр idle-time=0 в секцию [core] в файле .config/weston.ini
Автозапуск kodi: в секцию [shell] добавить client=/usr/local/bin/kodi в файле .config/weston.ini
weston.ini man page
Из Weston можно выйти по Ctrl+Alt+Backspace.
Про audio тут отвечал модифицировать .asoundrc

acestream: на данной сборке не проверял.
Инструкция по развертыванию acestream — acestream и  TTV без aceproxy
iptvsimple тут: pvr.iptvsimple

 122   11 мес   Kodi   Mainline   Mali   OrangePI PC
5 комментариев
Андрей 1 мес

вопрос не в теме буду очень благодарен если ответите
записал образ Armbian на sd установил kodi все настроил
как теперь создать img этой sd карты с этой системой
чтоб не видело пустое пространство
спасибо

ua3nbw 1 мес

простых способов нет, можно так: https://toster.ru/q/336947

Андрей 1 мес

спасибо
действительно сложно
интересно как делался образ из этой статьи
https://ua3nbw.ru/all/kodi-18-armbian-orangepi/

ua3nbw 1 мес

система установлена на карту 2Gb, установлены необходимые пакеты и  win32diskimager снят образ с карты.

Андрей 1 мес

тоже вариант но я уже установил на 32 гб

Популярное