Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: DM3730, DMA, CMEM, драйвер Linux
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Сигнальные процессоры и их программирование - DSP
C6x
Добрый день.
Имеется DM3730, работающий под Linux. Имеется желание использовать DSP-ядро в DM3730 и обрабатывать с помощью него данные, поступающие с McBSP в буфер посредством DMA (под управлением ARM). Для организации памяти используется модуль CMEM, с помощью которого получаем физический адрес для DMA. Вопрос в следующем: как использовать этот адрес на уровне ядра Linux, чтобы не только DMA настроился, но и ARM имел доступ к этим данным на уровне ядра?
C6x
Сам отвечаю: вроде работает такая конструкция
Код
if (!request_mem_region(phys_address, size, "bsl"))
    {
                printk(KERN_INFO "can't reserve i/o memory at 0x%08X\n", (unsigned int)phys_address);
                err = -ENODEV;
                goto fail;
    }
    virt_address = ioremap_nocache(phys_address, size);

где phys_address - физический адрес области памяти, которая выделяется посредством CMEM и используется для DMA; virt_address - виртуальный адрес в пространстве ядра.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.