@random-guy

Отображение памяти устройства в userspace?

Всем привет.

У меня есть устройство с ARM, на нём есть аппаратный блок с собственной памятью, доступной CPU.
Эта память физически лежит отдельно от системной памяти, вместе с регистрами этого и других устройств.
Я написал драйвер, который на вызов mmap для файла устройства отображает части этой собственной памяти в вызывающий процесс с помощью remap_pfn_range со включенным кешированием.
Возник вопрос: как сбрасывать/инвалидировать кеш CPU в процессе обмена данными с устройством через эту память.
DMA API не подходит, потому что область физических адресов, через которую доступна эта память не покрыта структурами struct page.

Я порылся в ядре и не нашёл ни одного драйвера, который бы отображал память устройства в процесс со включённым кешированием.
Правильно ли я понимаю, что это линуксом не поддерживается?
Какими функциями пользоваться если всё-таки надо?
  • Вопрос задан
  • 316 просмотров
Пригласить эксперта
Ответы на вопрос 1
CPU должен сам сбрасывать кэш при изменении данных.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
01 мая 2024, в 02:11
5000 руб./за проект
01 мая 2024, в 00:29
2000 руб./за проект
01 мая 2024, в 00:20
15000 руб./за проект