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

 
 
> Доступ к регистрам, доступ к регистрам устройства на линукс
vladimir_orl
сообщение Feb 6 2013, 11:35
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 191
Регистрация: 18-09-12
Из: Орёл
Пользователь №: 73 591



Здравствуйте. Имеется устройство с установленным на нём uLinux. Устройство имеет кучу периферии, документация на конфигурирование которой весьма запутанная. Имеется также демо программа в бинарных кодах под uLinux, которая конфигурирует устройство требуемым образом. Все регистры отображены в память (адреса известны). Есть идея запустить эту программу, затем посмотреть содержимое этих регистров с помощью своей утилиты. Подскажите, как её сделать. Насколько я знаю, в линуксе, как и в винде программа работает в виртуальном адресном пространстве. Читал про mmap, но практике всё туго. Если можно, подскажите.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ltDrakon
сообщение Jun 10 2017, 12:01
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 34
Регистрация: 17-03-17
Пользователь №: 95 867



посматрите примерны на "малинке" ( я тоже такие писал ), они как раз на прямую работают с переферийными регистрами - да, nmap или подобное - оно делает копию адресного пространства и вы с ним работает ( но, только от root ). - этого обычно вполне достаточно ..

ограничения тут будут некоторые, на пример по скорости и прерывания будут отвлекать - тут уже да, надо переходить на уровень драйвера.
Go to the top of the page
 
+Quote Post
Tarbal
сообщение Jun 10 2017, 13:27
Сообщение #3


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

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



Цитата(ltDrakon @ Jun 10 2017, 16:01) *
посматрите примерны на "малинке" ( я тоже такие писал ), они как раз на прямую работают с переферийными регистрами - да, nmap или подобное - оно делает копию адресного пространства и вы с ним работает ( но, только от root ). - этого обычно вполне достаточно ..

ограничения тут будут некоторые, на пример по скорости и прерывания будут отвлекать - тут уже да, надо переходить на уровень драйвера.


Как раз для малинки и делал sm.gif В документе даны неверные адреса GPIO. Потерял время на бодание. Моя апликация находит правильные адреса и показывает их.
Попробуйте на малнке.
Да и не всегда есть время писать.

Цитата(andrew_b @ Jun 10 2017, 15:49) *


Ну да. Совершенно аналогично. Как я ранее и описал метод доступа. Правда ограничено для использования только на Frescale imx6X и imx53. И наверное только какой-то специальный Линукс. Я не очень внимателен, но не встречал такого файла (псевдо файла) /etc/devregs.dat. Думаю, что это какой-то специальный случай.

Цитата(Olej @ Jun 3 2017, 15:17) *
Интересно бы biggrin.gif


Пользуясь случаем хочу выразить вам благодарность от читателя. Во многих документах по open source описание понятно только тем кто "посвящен". Вот например библия по драйверам Линукс. Три автора Corbet, Rubini и Kroah-Hartman.
Будучи уже не худшим разработчиком встроеных апликаций реального времени я долго не мог охватить всего описанниго. Упускаются какие-то "и так понятные любому" мелочи.
Ваши книги понятны и новичкам. При том что все понятно изложен материал о совсем непростых вещах.

Правда неплохо детали установки, компиляции и разных свойств ядра описаны в Linux Kernel in a Nutshell автор (тот же из драйверов) Greg Kroah-Hartman. Но она не о драйверах и модулях. Но это скорее исключение.
Кстати мне очень понравился ваш (я больше нигде его не встречал) прием с установкой модуля, который всегда возврашает ошибку. При этом можно распечатать значения любых переменых из ядра.

Не хочу, чтобы мой искренний пассаж выглядел как подхалимаж. Долго думал писать или не писать именно по этой причине. На самом деле я очень ценю критику моей работы и если что-то сделано криво (а такого уверен немало), то буду признателен за замечания.

Я предлагаю администрации форума (модератору) сделать прикрепленную тему, где olej выложит ссылки на свежие версии своих книг. Если он конечно не против.
Go to the top of the page
 
+Quote Post
Olej
сообщение Jun 10 2017, 21:14
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 351
Регистрация: 11-09-05
Из: Харьков
Пользователь №: 8 458



Цитата(Tarbal @ Jun 10 2017, 16:27) *
сделать прикрепленную тему, где olej выложит ссылки на свежие версии своих книг. Если он конечно не против.

Не знаю, нужно ли отдельную тему, а всё, что меня интересовало в последние 2-3 года (или больше) описано и свободно доступно здесь: Linux для программиста.
Пользуйтесь на здоровье. rolleyes.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- vladimir_orl   Доступ к регистрам   Feb 6 2013, 11:35
- - kurtis   Если у вас uclinux, то никакого виртуального адрес...   Feb 6 2013, 15:51
- - vladimir_orl   Спасибо. То есть если у меня регистр ADC_DATA нахо...   Feb 7 2013, 04:09
- - kurtis   Не уверен что можно, но я с uclinux не работал, та...   Feb 7 2013, 10:50
- - vladimir_orl   Здравствуйте. Пакета ltrace там нет. Попробую собр...   Feb 8 2013, 04:39
|- - dxp   QUOTE (vladimir_orl @ Feb 8 2013, 11:39) ...   Apr 8 2017, 02:01
|- - Olej   Цитата(dxp @ Apr 8 2017, 05:01) Вам прави...   Apr 12 2017, 09:13
|- - dxp   QUOTE (Olej @ Apr 12 2017, 16:13) Неправи...   Apr 14 2017, 06:38
||- - Olej   Цитата(dxp @ Apr 14 2017, 09:38) Не означ...   Apr 14 2017, 08:03
||- - dxp   QUOTE (Olej @ Apr 14 2017, 15:03) Нет, не...   Apr 15 2017, 00:57
||- - Olej   Цитата(dxp @ Apr 15 2017, 03:57) Хорошо, ...   Apr 15 2017, 05:41
||- - Lagman   Цитата(Olej @ Apr 15 2017, 08:41) Но...   Apr 15 2017, 10:09
||- - Olej   Цитата(Lagman @ Apr 15 2017, 13:09) А есл...   Apr 15 2017, 11:56
||- - Tarbal   Цитата(Olej @ Apr 15 2017, 15:56) P.S. Ес...   May 20 2017, 22:09
|- - Tarbal   Цитата(Olej @ Apr 12 2017, 13:13) Неправи...   May 21 2017, 13:12
|- - Olej   Цитата(Tarbal @ May 21 2017, 16:12) Я сей...   Jun 3 2017, 11:17
|- - Tarbal   Цитата(Olej @ Jun 3 2017, 15:17) Интересн...   Jun 10 2017, 02:38
- - xor.kruger   ЦитатаПосоветуйте учебник по ucLinux Как такового ...   Feb 10 2013, 12:23
- - TigerSHARC   Цитата(vladimir_orl @ Feb 6 2013, 14:35) ...   Apr 7 2017, 19:43
- - nill   Цитата(Olej @ Apr 12 2017, 16:13) P.S. Де...   Apr 13 2017, 06:21
|- - Olej   Цитата(nill @ Apr 13 2017, 09:21) Ссылка ...   Apr 13 2017, 08:12
- - Tarbal   Выложил: https://github.com/stepanovr/linuxreg По...   Jun 10 2017, 03:49
|- - HardJoker   Цитата(Tarbal @ Jun 10 2017, 06:49) Вылож...   Jun 20 2017, 20:48
|- - Tarbal   Цитата(HardJoker @ Jun 21 2017, 00:48) На...   Jun 21 2017, 03:44
|- - HardJoker   Цитата(Tarbal @ Jun 21 2017, 06:44) Не оч...   Jun 21 2017, 07:38
|- - Tarbal   Цитата(HardJoker @ Jun 21 2017, 11:38) Да...   Jun 21 2017, 23:29
- - andrew_b   Есть программка devregs: https://community.nxp.com...   Jun 10 2017, 11:49
|- - andrew_b   Цитата(Tarbal @ Jun 10 2017, 16:27) Ну да...   Jun 10 2017, 15:01
||- - Tarbal   Цитата(andrew_b @ Jun 10 2017, 19:01) Лег...   Jun 10 2017, 15:53
|- - Tarbal   Цитата(Olej @ Jun 11 2017, 01:14) Не знаю...   Jun 10 2017, 22:39
- - ltDrakon   Цитата(Tarbal @ Jun 10 2017, 16:27) Как р...   Jun 10 2017, 22:54
- - Tarbal   Цитата(ltDrakon @ Jun 11 2017, 02:54) там...   Jun 10 2017, 23:02


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

 


RSS Текстовая версия Сейчас: 18th June 2025 - 05:19
Рейтинг@Mail.ru


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