В настоящее время я пытаюсь разработать плату расширения для BeagleBoard-xM, и мое внимание привлекла необычная ошибка: на этой плате есть PINMUX, которым управляет pinctrl-single, который сообщает мне, что MUX, который я установил в моем дерево устройств работает так, как ожидалось, такая же настройка выполняется и в u-boot. Тем не менее, соответствующий GPIO не может видеть, какое напряжение на контакте. Этот вывод хорошо работает с omap_mux на старом ядре, а вывод рядом с ним в нумерации хорошо работает с обоими ядрами.
Мой вопрос: как я могу проверить содержимое соответствующего регистра в Linux? (который может быть достигнут по его физическому адресу)
mmap()
заполнение правильной страницы/dev/mem
(которая использует физические адреса) может работать как быстрое и грязное решение для получения значения из пользовательского пространства. См., например. stackoverflow.com/questions/13124271/ а>. Доступ к регистру через указатель на-volatile
. - person Ulfalizer   schedule 15.04.2015mount -t debugfs debug /sys/kernel/debug
иcat /sys/kernel/debug/pin-ctrl/pinctrl-handles
и т. д., кажется, дают некоторую информацию. Физические регистры MUX не будут доступны. - person artless noise   schedule 15.04.2015