URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 10249
[ Назад ]

Исходное сообщение
"Доступ к регистрам CPU (freebsd, arm) - как?"

Отправлено OldMonster , 08-Дек-18 10:17 
ДВС.
Есть необходимость читать/писать регистры настройки перефирии SoC.
ОС - freebsd 12, gcc, камень BCM2837
Как пример - аппаратный ШИМ
из даташита:

PWM DMA is mapped to DMA channel 5.
DMA Controller Registers:
DMA Channel 5 is located at the address of 0x7E007500

регистры ШИМ
смещение адреса - имя - размер:
0x0 - CTL PWM Control - 32
0x4 - STA PWM Status - 32

Имею опыт писать под микроконтроллеры, но с какой стороны к ЭТОМУ колобку подступиться - пока не могу сообразить.
1. Фря вообще даст напрямую лезть в потрошки камню?
2. Мне бы вот простенький примерчик считать/записать, ну пусть, регистр CTL PWM Control...


Содержание

Сообщения в этом обсуждении
"Доступ к регистрам CPU (freebsd, arm) - как?"
Отправлено Andrey Mitrofanov , 10-Дек-18 09:29 
>[оверквотинг удален]
> DMA Channel 5 is located at the address of 0x7E007500
> регистры ШИМ
> смещение адреса - имя - размер:
> 0x0 - CTL PWM Control - 32
> 0x4 - STA PWM Status - 32
> Имею опыт писать под микроконтроллеры, но с какой стороны к ЭТОМУ колобку
> подступиться - пока не могу сообразить.
> 1. Фря вообще даст напрямую лезть в потрошки камню?
> 2. Мне бы вот простенький примерчик считать/записать, ну пусть, регистр CTL PWM
> Control...

Ммм...
https://duckduckgo.com/?q=freebsd+raspberry-pi+pwm&t=ffnt&ia...

Убунтуи из питонов "ходят".  Нвскидку сочетания всех трёх слов по одной ссылки не вижу...

По https://duckduckgo.com/?q=freebsd+rpi+pwm&t=ffnt&ia=web
вторая ссылка = https://vzaigrin.wordpress.com/2014/04/18/working-with-gpio-.../

RPi1 - 35й бродком, PPi2 - 36ой, вроде.  37ой д.б. где-то близко, похоже.


"Доступ к регистрам CPU (freebsd, arm) - как?"
Отправлено wizard22 , 10-Дек-18 16:13 
>[оверквотинг удален]
> DMA Channel 5 is located at the address of 0x7E007500
> регистры ШИМ
> смещение адреса - имя - размер:
> 0x0 - CTL PWM Control - 32
> 0x4 - STA PWM Status - 32
> Имею опыт писать под микроконтроллеры, но с какой стороны к ЭТОМУ колобку
> подступиться - пока не могу сообразить.
> 1. Фря вообще даст напрямую лезть в потрошки камню?
> 2. Мне бы вот простенький примерчик считать/записать, ну пусть, регистр CTL PWM
> Control...

FreeBSD - общецелевая ОС. Никто приложениям не даст доступ к оборудованию. За разделение ресурсов отвечает ОС. Следовательно, либо используйте apropos или что-то аналогичное для поиска уже готового системного интерфейса (API, возможно уже есть модуль ядра, который реализует нужный функционал, либо смотрите тексты ядра для написания собственного модуля ядра (драйвера), а далее вашего приложения.