DTMF 0 2 ноября, 2007 Опубликовано 2 ноября, 2007 · Жалоба На microblaze поставил linux К FSL прикрутил свой модуль Можно ли и как испольсовать модуль на си под линухом. не под линухом модуль использовал так: // Blocking Data Read and Write to Local Link no. id microblaze_bread_datafsl(val, id) microblaze_bwrite_datafsl(val, id) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
LMT 0 2 ноября, 2007 Опубликовано 2 ноября, 2007 (изменено) · Жалоба Указанные microblaze_bxxx вроде же макросы. Посмотрите их определение в хэдерах EDK-шной инсталляции (mb_interface.h) и перенесите в свою программу под линуксом. Сработать должно: и там, и там GNU C. Изменено 2 ноября, 2007 пользователем LMT Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
syoma 1 10 ноября, 2007 Опубликовано 10 ноября, 2007 · Жалоба У меня mb_interfacовские макросы под Linuxom отказались компилироваться. И насколько я знаю более рекомендуется nonblocking чтение и запись. А вот такие макорсы генерит System Generator: #define MB_NBWRITE_CNTL_WITH_STATUS(val,status) \ asm volatile ("ncput %1, rfsl<WRITESLOTID>\nmfs %0,rmsr" : "=d" (status) : "d" (val)) #define MB_NBWRITE_DATA_WITH_STATUS(val,status) \ asm volatile ("nput %1, rfsl<WRITESLOTID>\nmfs %0,rmsr" : "=d" (status) : "d" (val)) #define MB_NBREAD_DATA_WITH_STATUS(val,status) \ asm volatile ("nget %0, rfsl<READSLOTID>\nmfs %1,rmsr" : "=d" (val), "=d" (status)) status возвращает удачно или неудачно выполнилась команда. И все это 100% работает под Linuxom по крайней мере в версии 2.4. Но вот товарищ John Williams так не рекомендует делать, если доступ к FSL идет из разных одновременно выполняющихся приложений. Поэтому он забэбехал библиотеку с очередями и еще с чем-то. Вроде бы хорошо в том, что она создает устройстваб в которые можно писать как в файл и читать теми же командами. Но мне надо было CNTL писать. А там такого не было. В итоге она не заработала и я на нее плюнул. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться