Ник:
Пароль:

Контакты

Cтатус Skype: starterkit.ru
тел.: (+7 3412) 478-448
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
E-mail: info@starterkit.ru
Партнеры:
otladka.com.ua - г.Киев

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

User Info


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

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

Ник:
Пароль:

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

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Embedded Linux
Как добавить ui интерфейс в билдрут.
turboStarter
Добавлено 29.11.2019 15:16 Сообщение: 11
turboStarter
5

Пункты: 622
Регистрация: 21.11.2019
Добавил ui часть вдохновившись постом :
http://www.starterkit.ru/html/index.php?name=forum&op=view&id=29121&num=1

Скачал архив, поменял dtb файл, и остальные указанные в посте файлы, вроде бы запустилось. Как я понял, там уже готовый образ ситеммы в этом tar файле и само ядро. Я подключил сенсорный экран в этой сборке. Проверил, оказалось драйвер тачскрина уже влинкован в ядро, но от другого производителя микросхем(ads7846), мне хотелось бы использовать драйвер вендора. Перед этим собрал *.ko модуль в билдрут для этого драйвера, этого вендора (AR1100 microchip).
После проверки ос предоставленной в файле, увидел, что ядро взято из билдрут и собрано линаро-компилятором, а оболочка и все остальное с компилятором armv7.
Прошу указать, как возможно заменить ядро ос, на мое, без Драйвера ads7846 уже влинкованного в ядро.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 30.11.2019 14:23 Сообщение: 12
sasamy
4.77

Пункты: 57420
Регистрация: 14.08.2009
Цитата
Перед этим собрал *.ko модуль в билдрут для этого драйвера, этого вендора (AR1100 microchip).

Прошу указать, как возможно заменить ядро ос, на мое, без Драйвера ads7846 уже влинкованного в ядро.


драйвер ads7846 убирать не нужно, если ваш контроллер тачскина на USB и есть драйвер в ядре xserver должен видеть его и использовать. Как заменить ядро в дебиане на свое написано тут

https://www.starterkit.ru/html/index.php?name=forum&op=view&id=28872&num=2#28974
Спуститься к концу Подняться к началу
Персональная информация
turboStarter
Добавлено 02.12.2019 18:20 Сообщение: 13
turboStarter
5

Пункты: 622
Регистрация: 21.11.2019
Цитата
Цитата
Перед этим собрал *.ko модуль в билдрут для этого драйвера, этого вендора (AR1100 microchip).

Прошу указать, как возможно заменить ядро ос, на мое, без Драйвера ads7846 уже влинкованного в ядро.


драйвер ads7846 убирать не нужно, если ваш контроллер тачскина на USB и есть драйвер в ядре xserver должен видеть его и использовать. Как заменить ядро в дебиане на свое написано тут

https://www.starterkit.ru/html/index.php?name=forum&op=view&id=28872&num=2#28974


Спасибо за ответ! Проблемма состоит в следующем, когда я использую драйвер ads7846б он работает, но маху дает на 1,5 - 2 cm по краям и калибровка не помагает, по этому хочу попробовать использовать драйвер для тачскрина.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 03.12.2019 10:54 Сообщение: 14
sasamy
4.77

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

Перед этим собрал *.ko модуль в билдрут для этого драйвера, этого вендора (AR1100 microchip).
....
Проблемма состоит в следующем, когда я использую драйвер ads7846б он работает, но маху дает на 1,5 - 2 cm по краям и калибровка не помагает, по этому хочу попробовать использовать драйвер для тачскрина.


Драйвер ads7846 в принципе не может работатть с AR1100, у них даже интерфейсы разные - spi и usb, впрочем вы можете отключить его в dts - удалите секции с описанием из ecspi1 и eсspi4

arch/arm/boot/dts/imx6qdl-sodimm.dtsi

Цитата

tsc2046@0 {
compatible = "ti,tsc2046";
reg = <0>;
spi-max-frequency = <100000>;
/* pen irq is GPIO3_27 */
interrupt-parent = <&gpio3>;
interrupts = <27 0x2>;
pendown-gpio = <&gpio3 27 0>;
vcc-supply = <&reg_3p3v>;

ti,debounce-max = /bits/ 16 <5>;
ti,debounce-tol = /bits/ 16 <10>;
ti,debounce-rep = /bits/ 16 <0>;

linux,wakeup;
};


можно вообще удалить драйвер из сборки

make linux-menuconfig

Device Drivers --->
Input device support --->
[*] Touchscreens --->
< > ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens

выйти с сохранением конфига

./kernel_rebuild.sh
Спуститься к концу Подняться к началу
Персональная информация
turboStarter
Добавлено 03.12.2019 11:20 Редактировалось 03.12.2019 14:26 Сообщение: 15
turboStarter
5

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

Перед этим собрал *.ko модуль в билдрут для этого драйвера, этого вендора (AR1100 microchip).
....
Проблемма состоит в следующем, когда я использую драйвер ads7846б он работает, но маху дает на 1,5 - 2 cm по краям и калибровка не помагает, по этому хочу попробовать использовать драйвер для тачскрина.


Драйвер ads7846 в принципе не может работатть с AR1100, у них даже интерфейсы разные - spi и usb, впрочем вы можете отключить его в dts - удалите секции с описанием из ecspi1 и eсspi4

arch/arm/boot/dts/imx6qdl-sodimm.dtsi

Цитата

tsc2046@0 {
compatible = "ti,tsc2046";
reg = <0>;
spi-max-frequency = <100000>;
/* pen irq is GPIO3_27 */
interrupt-parent = <&gpio3>;
interrupts = <27 0x2>;
pendown-gpio = <&gpio3 27 0>;
vcc-supply = <&reg_3p3v>;

ti,debounce-max = /bits/ 16 <5>;
ti,debounce-tol = /bits/ 16 <10>;
ti,debounce-rep = /bits/ 16 <0>;

linux,wakeup;
};


можно вообще удалить драйвер из сборки

make linux-menuconfig

Device Drivers --->
Input device support --->
[*] Touchscreens --->
< > ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens

выйти с сохранением конфига

./kernel_rebuild.sh


Спасибо! Но у них у обоих, usb интерфейс. Я удалил драйвер из ядра, проверил (ни как отдельный модуль, ни как влинкованный в ядро, он не имеется) ,все равно тачскрин работает, может есть какая-то утилита, которую Вы можете порекомендовать для калибровки? Может быть это путь.
Спуститься к концу Подняться к началу
Персональная информация
turboStarter
Добавлено 03.12.2019 18:30 Редактировалось 03.12.2019 18:31 Сообщение: 16
turboStarter
5

Пункты: 622
Регистрация: 21.11.2019
Вообщем добавил драйвер, AR1100 , modprobe, его видит, lsmod показывает что драйвер подгрузился. В файле который имеет исходники драйвера, а т.ж. программы для его инициализации я запустил на встраиваемой системе, перед этим собрал *ko модуль компилятором линаро, а файлы инициализации
компилятором gnu. Запустил скрипт install.sh, он раскидал заранее собранные файлы по нужным директориям и прописал пути. Сам *.ko модуль я переместил файлом install-module.sh. Все после этого должно заработать, но не тут-то было, тачскрин вообще не реагирует на перемещения. Передаю саму папку, она полная копия того, что есть на сайте, за исключением уже собранного *ko модуля. Правильно ли то что я собрал файлы инициализации компилятором с целевой машини, а не линаро? И вообще вся технология для данной сборки с ядром билдрутовким, а всем остальным с boundary devices.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 04.12.2019 09:04 Редактировалось 04.12.2019 09:14 Сообщение: 17
sasamy
4.77

Пункты: 57420
Регистрация: 14.08.2009
Цитата
может есть какая-то утилита, которую Вы можете порекомендовать для калибровки? Может быть это путь.


может документацию производителя посмотреть ?

https://www.microchip.com/DevelopmentTools/ProductDetails/PartNO/DV102012

Цитата

И вообще вся технология для данной сборки с ядром билдрутовким, а всем остальным с boundary devices


кросскомпиляция драйверов в buildroot ничем не отличается, исходники собранного ядра тут

buildroot-2017.08-sk/output/build/linux-custom

кросскомпилятор тут

buildroot-2017.08-sk/output/host/usr/bin/arm-linux-gnueabihf-gcc
Спуститься к концу Подняться к началу
Персональная информация
turboStarter
Добавлено 04.12.2019 15:44 Сообщение: 18
turboStarter
5

Пункты: 622
Регистрация: 21.11.2019
Цитата
Цитата
может есть какая-то утилита, которую Вы можете порекомендовать для калибровки? Может быть это путь.


может документацию производителя посмотреть ?

https://www.microchip.com/DevelopmentTools/ProductDetails/PartNO/DV102012

Цитата

И вообще вся технология для данной сборки с ядром билдрутовким, а всем остальным с boundary devices


кросскомпиляция драйверов в buildroot ничем не отличается, исходники собранного ядра тут

buildroot-2017.08-sk/output/build/linux-custom

кросскомпилятор тут

buildroot-2017.08-sk/output/host/usr/bin/arm-linux-gnueabihf-gcc


Спасибо за ответ! Но, к сожалению я собирал tslib, для калибровки, но он никак не реагировал. Я решил вернуть драйвер TI для тачскрина, но когда я проверил тачскрин командой lshw, то вывод показал мне что цепляется драйвер usbhub, вообщем тот, который для цепляется и для мыши, и для клавы. Хотел бы поинтересоваться, как сделать так, что бы мой тачскрин тащил именно TI драйвер.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 05.12.2019 00:55 Редактировалось 05.12.2019 09:21 Сообщение: 19
sasamy
4.77

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

я собирал tslib, для калибровки, но он никак не реагировал.


помоему tslib у них для режима UART и драйвер на сайте тоже для этого режима. По умолчанию контроллер в Linux работает в режиме USB и эмулирует стандартную USB-мышь - для таких устройств в ядре есть стандартный драйвер, никаких дополнительных драйверов не нужно собирать, надо просто откалибровать его используя их протокол. Вот тут утилита для Linux

https://github.com/tom-2015/rpi-AR1100

Цитата

Я решил вернуть драйвер TI для тачскрина


повторяю - этот драйвер в принципе не может работать с вашим контроллером

PS попробуйте еще xinput_calibrator - дложно работать

https://stackoverflow.com/questions/29252449/xinput-touchscreen-calibration-inconsistent
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux