質問編集履歴
2
V4L2に限定せず、根本的な質問に変更
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
PCIeマスタとPCIeデバイスのドライバについて
|
body
CHANGED
@@ -1,12 +1,28 @@
|
|
1
|
-
以下のように、2つのLinuxボードをPCIeで接続し、片方にはUVCのWebカメラが接続されているとします。
|
2
|
-
このカメラのデータをPCIe経由でDMA転送してもう片方のLinuxボードに/dev/videoNとして
|
3
|
-
|
1
|
+
質問のタイトル、内容をもっと根本的なところに変更しました。
|
4
|
-
イメージは以下のような感じです。
|
5
|
-
(A)Linuxボード<---UVC-Webカメラ(/dev/video0として見える)
|
6
|
-
↓ PCIe
|
7
|
-
(B)Linuxボード( (A)のWebカメラの映像が/dev/videoNとして読み出せる )
|
8
2
|
|
3
|
+
2種のボード上でのお話になりますが、
|
4
|
+
Ubuntuの入ったPCと、
|
5
|
+
PCIeのIOボード等の話に置き換えてもらっても構いません。
|
6
|
+
|
7
|
+
下記のようにどちらにもLinuxが入っているとします。
|
8
|
+
やりたいことは、PCIe DeviceのRAM(B)のデータを
|
9
|
-
(A)
|
9
|
+
PCIe Mastar側のRAM(A)にコピーしてあげたいだけです。
|
10
|
+
|
11
|
+
デバイスドライバを作りたいのですが、
|
10
|
-
|
12
|
+
PCIe Master側は通常のPCIeのドライバとして、
|
13
|
+
PCIe Device側はどうすればよいのでしょう?
|
11
|
-
|
14
|
+
何か違いはあるのでしょうか?
|
15
|
+
|
12
|
-
|
16
|
+
+------------------------+
|
17
|
+
| CPU +------------+|
|
18
|
+
| (Linux) | RAM (A) ||
|
19
|
+
| +------------+|
|
20
|
+
| PCIe Master |
|
21
|
+
+------------------------+
|
22
|
+
||||
|
23
|
+
+------------------------+
|
24
|
+
| PCIe Device |
|
25
|
+
| +------------+|
|
26
|
+
| CPU | RAM (B) ||
|
27
|
+
| (Linux) +------------+|
|
28
|
+
+------------------------+
|
1
PCIをPCIeに修正
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
V4L2データを
|
1
|
+
V4L2データをPCIeでうけとりたい
|
body
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
以下のように、2つのLinuxボードを
|
1
|
+
以下のように、2つのLinuxボードをPCIeで接続し、片方にはUVCのWebカメラが接続されているとします。
|
2
|
-
このカメラのデータを
|
2
|
+
このカメラのデータをPCIe経由でDMA転送してもう片方のLinuxボードに/dev/videoNとして
|
3
3
|
見えるようにするためには、どうしたら良いでしょうか?
|
4
4
|
イメージは以下のような感じです。
|
5
5
|
(A)Linuxボード<---UVC-Webカメラ(/dev/video0として見える)
|
6
|
-
↓
|
6
|
+
↓ PCIe
|
7
7
|
(B)Linuxボード( (A)のWebカメラの映像が/dev/videoNとして読み出せる )
|
8
8
|
|
9
9
|
(A)側では/dev/video0を一旦読み出してDMA用のバッファにいれておいてDMA転送し、
|