реклама на сайте
подробности

 
 
> Компиляция ПО под embedded. Непонятно как поступить., Как компилироваться - если используются функции ядра
Atridies
сообщение Jul 31 2015, 06:20
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 445
Регистрация: 7-02-05
Из: Зеленоград
Пользователь №: 2 468



Под плату SBC8600 (AM3359, Angstrom Linux) делаю программу. Есть Toolchain, и есть tools: для сборки ядра, u-boot и пр. под эту плату.

Пока используются стандартные функции Си - то все нормально: ПО компилится Toolchain-ом, нормально запускается и работает.
Но сейчас понадобился прямой доступ к регистрам микроконтроллера. Хочу сделать это так:
Код
base = ioremap(ADDR, SIZE);
__raw_writel(base+0x08F0, DATA);
x = __raw_readl(base+0x08F0);


Но этот код не хочет компилироваться.

Эти функции - принадлежат ядру и находятся в файлах: /arch/arm/include/asm/io.h. В самой Toolchain - нету такого файла и нету таких функций. Оно наверное и понятно - Toolchain вряд ли поддерживает функции ядра.
Подключил к своему проекту h-файл из tools для сборки ядра - все равно не компилится: у меня ведь проект ядра не компилируется вместе с программой.

Что делать - не знаю. Как вообще компилироваться - если используются функции ядра ?


P.S. Пробовал сделать это через /dev/mem и mmap - все получается, но работает только на чтение. Записать не получается.

Заранее спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Atridies
сообщение Jul 31 2015, 07:44
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 445
Регистрация: 7-02-05
Из: Зеленоград
Пользователь №: 2 468



Ясно.

А как писать и компилировать драйверы ? Как писАть сами драйверы - я читал несколько статей, думаю разберусь.
А вот как компилить (Cross Compilatioin)? Надо использовать tools для сборки ядра ?
Go to the top of the page
 
+Quote Post
Tarbal
сообщение Jul 31 2015, 11:30
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439



Цитата(Atridies @ Jul 31 2015, 11:44) *
Ясно.

А как писать и компилировать драйверы ? Как писАть сами драйверы - я читал несколько статей, думаю разберусь.
А вот как компилить (Cross Compilatioin)? Надо использовать tools для сборки ядра ?


Кросс компиляцию уже обсуждали:
Сделайте поиск в форуме по ключевуму слову "eabi"
Будут вопросы спрашивайте.

В частности:
http://electronix.ru/forum/index.php?showt...=eabi&st=45


Одно из лучших руководств по напиасанию драйверов:
http://www.tldp.org/LDP/lkmpg/2.6/lkmpg.pdf


Сообщение отредактировал Tarbal - Jul 31 2015, 11:30
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd August 2025 - 17:04
Рейтинг@Mail.ru


Страница сгенерированна за 0.01372 секунд с 7
ELECTRONIX ©2004-2016