| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Программирование под Unix/Linux > Доступ к регистрам pcmcia карты памяти |
| Автор: stogovoleg 5.1.2008, 20:35 |
| Работаю в Linux с pcmcia картой памяти. При вставке карты в слот для ее регистров выделяется 16 байт в памяти с адреса 0х0100, как из программы получить доступ к этой памяти (получить указатель на нее) или изменить значения в этих регистрах? p.s. в Windows (Borland 6) это делется с помощью функции DeviceIoControl(). |
| Автор: bsa 5.1.2008, 20:44 |
| может ioctl() тебе нужен? |
| Автор: stogovoleg 5.1.2008, 20:53 |
| спасибо за совет, я про нее думал, но man дал слишком мало информации, где можно почитать подробнее? Добавлено через 8 минут и 52 секунды Прошу прощения, сегодня весь день ищу решение, смотрел не man, а header |
| Автор: MAKCim 5.1.2008, 21:17 |
| stogovoleg, может http://pcmcia-cs.sourceforge.net/ftp/doc/PCMCIA-PROG.html#toc7 поможет |
| Автор: stogovoleg 5.1.2008, 22:52 |
| спасибо |
| Автор: stogovoleg 6.1.2008, 11:50 |
| Подскажите, пожалуйста, где лежит реализация функции CardServices()? а то компилятор говорит про undefined reference |
| Автор: bsa 6.1.2008, 12:55 |
| stogovoleg, а в каком заголовочном файле она объявлена? |
| Автор: stogovoleg 6.1.2008, 15:57 |
| #include "cs_types.h" #include "cs.h" |
| Автор: kirjanov 6.1.2008, 16:06 |
| так в introduction же линк лежит на http://pcmcia-cs.sourceforge.net/ ....и похоже это deprecated в 2.6 судя по : * CardServices is gone CardServices() in 2.4 is just a big switch statement to call various services. In 2.6, all of those entry points are exported and called directly (except for pcmcia_report_error(), just use cs_error() instead). Может вот это поможет http://kernel.org/pub/linux/utils/kernel/pcmcia/pcmcia.html |
| Автор: stogovoleg 6.1.2008, 17:09 |
| ядро у меня 2.4.32 и ничего с этим не сделаешь, так как использую сертифицированную (а также адаптированную) для Российских ВС версию Linux, инсталяция без исходников, поэтому и спрашиваю какую библиотеку подключить к проекту, чтобы достать функцию CardServices()? |
| Автор: bsa 6.1.2008, 17:23 |
| stogovoleg, узнай, в какой пакет входит cs_types.h, затем узнай, какие еще файлы входят в этот пакет и найди среди них нужную библиотеку. Не удивлюсь, если тебе надо просто добавить что-то типа -lcs в параметры линкера. |
| Автор: kirjanov 6.1.2008, 20:41 |
| ну надо линки смотреть. Посмотрел я сейчас pcmcia-cs - все там в таре есть, что надо |
| Автор: stogovoleg 9.1.2008, 14:18 |
| bsa, cs_types.h входит в kernel-headers, в котором кроме заголовочных файлов ничего нет. kirjanov, посмотрел pcmcia-cs в исходниках нашел реализацию функции CardServices, но в исходниках нет реализации функций, которые он в конечном итоге вызывает. Подскажите, что конкретно и как нужно подключить к проекту, чтобы использовать эту функцию |
| Автор: bsa 9.1.2008, 17:13 |
| stogovoleg, а разве библиотек (*.a, *.la и *.so) в том пакете нет? |