Записки утконоса-программиста

Новый HADK 2.2 подвезли

Качать тут

Включение отладки ofono

Заходим на устройство по ssh, думаю как это сделать Вы знаете
Код BASH:
  1. DEVICE# devel-su
  2. DEVICE# vi /var/lib/environment/ofono/debug.conf
В новом файле пишите:
Код BASH:
  1. OFONO_DEBUG=-d
Кто не знает как пользоваться VI
1 - нажимаем кнопку i - переходим в режим редактирования
2 - пишем что нам нужно
3 - нажимаем Esc - переходим в режим команд
4 - набираем :wq - говорим Write и Quit

Перезапускаем ofono

Код BASH:
  1. DEVICE# systemctrl restart ofono
Логи смотреть так:

Код BASH:
  1. DEVICE# journalctrl -xf /usr/sbin/ofonod

Instructions to update nexus5 to latest glacierUX

CM LINK http://www.mediafire.com/file/970u3n4l9hybi22/cm13_release.zip
SF LINK http://www.mediafire.com/file/w4a0wkre59kue6s/sailfishos-hammerhead-release-2.1.2.3-build-0.4.zip

1 - Install CM and after install SFOS
2 - Enable developer mode
3 - Login to nemo over ssh
4 - devel-su
5 - setup root password
Код BASH:
  1. passwd
6 - add some repos
Код BASH:
  1. ssu ar adaptation-community-hammerhead http://repo.merproject.org/obs/home:/mautz:/sfos-latest/sailfishos/
  2. ssu ar mer-core http://repo.merproject.org/obs/home:/neochapay:/mer:/core/latest_armv7hl/
  3. ssu ar nemo-ux http://repo.merproject.org/obs/home:/neochapay:/mer:/nemo-devel-ux/latest_armv7hl/
  4. ssu adapt-mer http://repo.merproject.org/obs/home:/neochapay:/hw:/lge:/hammerhead/mer_latest_armv7hl/
  5. ssu ar adapt-mer http://repo.merproject.org/obs/home:/neochapay:/hw:/lge:/hammerhead/mer_latest_armv7hl/
  6.  
7 - remove silica
Код BASH:
  1. zypper remove sailfishsilica-qt5
8 - install minimal GlacierUX
Код BASH:
  1. zypper in qt5-qtquickcontrols qt5-qtquickcontrols-nemo
  2. lipstick-glacier-home-qt5
9 - update all packages
Код BASH:
  1. zypper dup
10 - reboot

Обновить ревизии всех пакетов до последней на OBS

По моей ошибке все пакеты в моих репозиториях были на фиксированной ревизии и чуточку протухли. Пришлось обновлять. А так как пакетов 500+ решилось всё скриптом:

Код BASH:
  1. #!/bin/bash
  2.  
  3. PROJECT="home:neochapay:mer:core"
  4. PACKAGE_LIST=`osc ls $PROJECT`
  5.  
  6. for PACKAGE_NAME in $PACKAGE_LIST
  7. do
  8. echo " $PACKAGE_NAME"
  9. osc co $PROJECT/$PACKAGE_NAME
  10. cd $PROJECT/$PACKAGE_NAME
  11. cur_rev=$(cat _service | grep "param name="revision"" | cut -d> -f2 | cut -d< -f1)
  12. echo $cur_rev
  13. if [ -n $cur_rev ]
  14. then
  15. sed -i "s/$cur_rev//" _service
  16. osc ci -n
  17. fi
  18. cd ../../
  19. done
Немного конечно кривовато...но работает. Если нужно не до последнего релиза/тега обновлять, а прям до последнего коммита то sed -i "s/$cur_rev//" _service заменяйте на sed -i "s/$cur_rev/HEAD/" _service

Есть графика!

Ну что-ж...итог недели работы:
Есть графика!

на чистом aarch64 без андройд частей и libhybris...ну и конечно же без 3Д ускорения, НО ЗАПУСТИЛОСЬ!

Для сборки образа для ARM64

Для сборки arm64 сборки надо обновить mic и zypper в SDK https://yadi.sk/d/fDgP78DM32Zyzk папка sdk_up - качаем всё и устанавливаем rpm -Uhv * . Там же в папке images есть тестовые образы без привязки к конкретному железу. Можно установить и посмотреть.
To build arm64 image we need update mic and zypper in SDK https://yadi.sk/d/fDgP78DM32Zyzk sdk_up directory - download all and install with rpm -Uhv * . In images directory you can get test image withoud hardware adapations just for experements.

RDA5807M

Маленький код для I2C модуля под Linux. Это потом перепишется в ядерный модуль, а пока пусть будет тут как есть. Модуль кстати вот.
RDA5807M

SMART4418 - Загрузка

Итак, чуть разобрался как загрузить систему - при загрузке в ком порте надо чуть настроить uboot:
env set bootargs console=ttyAMA0,115200n8 androidboot.console=ttyAMA0 androidboot.serialno=0123456789abcdef initrd=0x49000000,0x100000 lcd=S702,128dpi bootdev=2 selinux=0 audit=0 root=/dev/mmcblk0p7
env save

Следуюший этап: Нам теперь не нужен hybris-boot - можно весь раздел посвятить sailfishos но это следующий этап

Smart4418 - Linux 4.4

Это ядро https://github.com/friendlyarm/linux/blob/nanopi2-v4.4.y
Собирается так make uImage ARCH=arm LOADADDR=0x40008000

Ядро нихрена не грузится ибо boot не могу нормально прошить/собрать

qDebug не работает

При разработке на десктопе столкнулся с проблемой qDebug() и console.log не показывают ни чего. Как не крути какие сборки не собирай - нет ни какого выхлопа.
Решение:
В файлик ~/.config/QtProject/qtlogging.ini добавить следующее:
Код INI:
  1. [Rules]
  2. *.debug=true
  3. qt.*.debug=false