linux下安裝PCIE轉串列埠卡驅動簡介

MagicProgram發表於2011-06-08

1. 所購買的PCIE轉串列埠卡晶片為MCS9922,在官方網站上下載驅動MCS9900_Linux.tar.gz。

2. 解壓,閱讀readme,發現是一般的安裝方法,遂直接操作之。

3. make,報錯,分析後可知是由於驅動針對的核心版本太低,需要對原始碼進行修改。主要修改如下:

原檔案: struct circ_buf *xmit = &up->port.info->xmit;

修改後:#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,31)

struct circ_buf *xmit = &up->port.info->xmit;

#else

struct circ_buf *xmit = &up->port.state->xmit;

#endif.

原檔案:#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,26))

struct tty_struct *tty = up->port.info->tty;

#else

struct tty_struct *tty = up->port.info->port.tty;

#endif

修改後:

#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,26))

struct tty_struct *tty = up->port.info->tty;

#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,26)) && (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,31))

struct tty_struct *tty = up->port.info->port.tty;

#else

struct tty_struct *tty = up->port.state->port.tty;

#endif

註釋掉static void transmit_chars_dma_stop_done()函式。

4. 修改Makefile。

原檔案:ln -s /etc/init.d/mcs99xx /etc/rc.d/rc3.d/Smcs99xx || true

修改後:ln -s /etc/init.d/mcs99xx /etc/rc3.d/Smcs99xx || true

5. make, make install,此時後有裝置/dev/ttyF*。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25432352/viewspace-697352/,如需轉載,請註明出處,否則將追究法律責任。

相關文章