how to code something このページをアンテナに追加 RSSフィード

2018-06-14

PYNQでFTDIドライバを有効にする

FTDIデバイスがlsusbだと見えるんだけど、/dev/ttyUSB0にマウントされない
カーネルモジュールを入れる必要がある(usbserial.koとftdi_sio.ko)

クロスコンパイル環境のUbuntuカーネルモジュールビルドする
この記事を参考:PYNQでデバイスドライバを開発する(http://d.hatena.ne.jp/seinzumtode/20180614/1528958862
以下、カーネルソースのlinux-xlnxフォルダで作業する(v2017.4ブランチ)
https://github.com/Xilinx/PYNQ/blob/master/sdbuild/boot_configs/Pynq-Z1-defconfig/kernel.config を落としてきて.configにリネームし、以下を追加する
https://forums.xilinx.com/t5/Embedded-Linux/Missing-FTDI-driver/td-p/797436

CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_FTDI_SIO=m

ビルドする
(一気にドライバビルドする方法は、以下のエントリで知った:
z-turn/linux kernelビルド http://dora.bk.tsukuba.ac.jp/~takeuchi/?%E9%9B%BB%E6%B0%97%E5%9B%9E%E8%B7%AF%2Fz-turn%2Flinux%20kernel%20%E3%81%AE%E3%83%93%E3%83%AB%E3%83%89

$ make ARCH=arm CROSS_COMPILE:=arm-xilinx-linux-gnueabi- menuconfig
$ make ARCH=arm CROSS_COMPILE:=arm-xilinx-linux-gnueabi- prepare
$ make ARCH=arm CROSS_COMPILE:=arm-xilinx-linux-gnueabi- modules_prepare
$ make ARCH=arm CROSS_COMPILE:=arm-xilinx-linux-gnueabi- modules
$ ls drivers/usb/serial/*.ko
drivers/usb/serial/ftdi_sio.ko  drivers/usb/serial/usbserial.ko

上で作ったftdi_sio.koとusbserial.koをPYNQに移してロードする

$ sudo insmod usbserial.ko
$ sudo insmod ftdi_sio.ko

確認

xilinx@pynq2:~$ ls /dev/kobuki
/dev/kobuki
xilinx@pynq2:~$ ls /dev/ttyUSB0
/dev/ttyUSB0

ドライバはここにおいておいた
https://github.com/shohei/pynq-ftdi-drivers

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/seinzumtode/20180614/1528979822