ЗАО «ЗЭО»
Техническая поддержка пользователей => ОС Linux, U-Boot => Тема начата: fenix710 от 17 Июля, 2013, 07:45:54
-
Здрасте!
Приобрели у вас 15 Tion-pro rev.2. Необходимо на них поставить linux с графическим интерфейсом и установить драйвера GPIO. Сейчас на них установлен linux без GUI. Попробовал установить по вашей инструкции U-Boot (http://www.zao-zeo.ru/media/files/programming-v1.pdf). Подключил, снял джампер BOOT0, залил прошивку командой download-3.17.exe u-boot-1.3.3_svn602_tion-pro.bin, вернул BOOT0 на место. Открыл гипертерминал, включил тион, написано что начал стартовать u-boot, но после загрузки появляется строка приветствия: Welcom to buildroot. Что я делаю не так?
-
> Что я делаю не так?
Вы перезаписали загрузчик, при чём здесь GUI для Linux?
Вам нужно собрать [1] Qt в Buildroot [2] и записать полученную КФС в Тион.
[1] http://www.zao-zeo.ru/dokuwiki/doku.php/linux#корневая_файловая_система
[2] http://zao-zeo.ru/media/files/linux/buildroot-2009.08.git
-
Вам нужно собрать [1] Qt в Buildroot [2] и записать полученную КФС в Тион.
[1] http://www.zao-zeo.ru/dokuwiki/doku.php/linux#корневая_файловая_система
[2] http://zao-zeo.ru/media/files/linux/buildroot-2009.08.git
ОК, взял я последний Buildroot из git'а. Теперь чтобы его собрать, мне нужен я так понимаю linux, установил ubuntu на виртуалку, теперь надо собрать Qt в Buildroot. Собирать я так понял надо именно под тип процессора на тионе. Можете поконкретней объяснить пожалуйста, уже третья неделя пошла.
Скачать linux-2.6.20.tar.gz, наложить на него патч linux-2.6.20.21_tion_svn1713_201111251752.tar.gz и уже потом приступать к сборке ядра?
-
> Скачать linux-2.6.20.tar.gz, наложить на него патч
> linux-2.6.20.21_tion_svn1713_201111251752.tar.gz и уже потом приступать к
> сборке ядра?
Ядро пока не трогайте, оставьте то что уже есть на плате.
> Собирать я так понял надо именно под тип процессора на тионе. Можете
> поконкретней объяснить пожалуйста, уже третья неделя пошла.
1. Скопировать local/tion/tion.config в .config (точка в начале имени файла).
2. Выполнить make menuconfig
2.1 Отметить Qt: BR2_PACKAGE_QT, BR2_PACKAGE_QT_GFX_LINUXFB,
BR2_PACKAGE_QT_MOUSE_TSLIB (можно BR2_PACKAGE_QT_DEMOS и пр.)
Поиск по '/'
2.2 Изменить EBSIZE на 0x20000 (для Тион и Тион-Про, 0x40000 для Тион-Про2).
3. Выйти из menuconfig и сохранить изменения. Скопировать изменённый .config
в local/tion/tion.config
4. make
5. Записать полученный binaries/tion/rootfs.arm.jffs2 во Flash Тион через
U-Boot, см. http://www.zao-zeo.ru/dokuwiki/doku.php/linux#flash
Или записать ext2 на USB-Flash и настроить загрузку с USB-Flash.
-
Спасибо за ответ, сейчас ядро в процессе сборки, но вот дальше опять стопор.
1. Как залить rootfs.arm.jffs2 во Flash Тион через U-Boot?
2. Как собрать linux с поддержкой GPIO, у меня задача написать программу для работы с GPIO.
Спасибо за помощь.
-
setenv serverip <server_ip>
setenv ipaddr <tion_ip>
protect off nor0,2
erase nor0,2
tftpboot ${fileaddr} <jffs_file>; cp.b ${fileaddr} ${jffs_fladdr} ${filesize}
Где jffs_fladdr 60300000, первый адрес из вывода protect off nor0,2
UnProtect Flash Parition off, bank 0, 0x60300000 - 0x607fffff
P.S.
> сейчас ядро в процессе сборки
Какое ядро?
В 2.6.20.21 есть drivers/misc/ep93xx-gpio.c
-
Спасибо за ответ.
Скажите, а почему нет доступа к этому файлу, меня как раз интересует матричная клавиатура:
http://www.zao-zeo.ru/media/files/examples/event.c
-
Поправил доступ к event.c
-
Для матричной клавиатуры есть драйвер, для него указывается нажатие какой
клавиши генерировать при нажатии на соответствующую кнопку матричной
клавиатуры. Поэтому можно пользоваться getch(), но надо чтобы программа
работала на tty0 и требуется настройка [1]. Также посмотрите пример на Qt2 с
графическими кнопками, которые нажимаются при нажатии на кнопки матричной
клавиатуры [2].
[1] http://c-faq.com/osdep/cbreak.html
[2] www.zao-zeo.ru/media/files/examples/keypad-qt_svn815.tar.gz
-
Это относится к клавиатере, подключенной через порт GPIO?
-
В EP93xx есть контроллер матричной клавиатуры и драйвер для него
ep93xx_keypad. К GPIO это будет относиться, только если написать драйвер
устройства ввода и в нём использовать GPIO (как gpio_keys появившийся в
2.6.32 и gpio_keys_polled в 2.6.37).
-
У меня задача вробе-бы простая. Есть матричная клавиатура, всего 9 кнопок(1..9). Надо написать программу, которая перехватывает нажатия на эти кнопки и выполняет некоторые действия. Можно это сделать в 2.6.20.21?
-
Можно. Соедините кнопки к сигналам контроллера матричной клавиатуры и
используйте драйвер этого контроллера, а не просто GPIO.
-
Драйвера никакого нет, на самом деле это самодельная клавиатура с девятью кнопками, её делал другой человек, потом припоял провода от кнопок к GPIO по типу матричной клавиатуры и сказал что надо написать программу.
-
Я о драйвере Linux для контроллера матр. клавиатуры EP93xx.
drivers/input/keyboard/ep93xx_keypad.h -- коды кнопок и размер клавиатуры, см. /* SENS1914 keypad */
drivers/input/keyboard/ep93xx_keypad.c -- драйвер
Включите к конфигурации
CONFIG_KEYBOARD_EP93XX_KEYPAD=m
и на плате сделайте insmod ep93xx_keypad.ko