在ARM端和DSP端都使用EDMA - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4226|回复: 4
打印 上一主题 下一主题

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?- {( @- u9 Q- g) F' k2 X( [, ^
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
沙发
发表于 2016-3-22 16:26:11 | 只看该作者
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。
回复 支持 反对

使用道具 举报

26

主题

40

帖子

282

积分

中级会员

Rank: 3Rank: 3

积分
282
板凳
发表于 2016-8-18 14:41:54 | 只看该作者
teddy 发表于 2016-3-22 16:26
, S( a0 n" ^  K% B7 \可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...
$ O# m. _  p! E
具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:
9 {+ I2 [# a" F# Q
/ X5 v  g8 ^9 Y4 Q' {# {" s: dstatic const s8 da8xx_queue_tc_mapping[][2] = {
4 y) S; b0 i2 T4 Y! D: ^' f9 @6 W        /* {event queue no, TC no} */
( N5 `& D( Y' y- _! H, m$ t        {0, 0},) _* l9 L8 q& A! X! D
        {1, 1},
1 e' L/ i# f2 [3 p, L; R: O$ a        {-1, -1}
7 [! Y0 C- C  A+ X};: P- X9 M1 p, j7 ]; B

( Z9 p' [# k) d% @( Ustatic const s8 da8xx_queue_priority_mapping[][2] = {  H' T# {$ Z, o/ ?( i
        /* {event queue no, Priority} */) }! j; C/ j* f) d1 T
        {0, 3},' U; C3 J" n, z. r- {
        {1, 7},
7 a7 m: N& c9 }& |        {-1, -1}
( }+ y! c5 r7 T7 o};
; N  [% N1 ~$ {% h; {# r( |7 [) |6 c' Q5 Y4 z
static const s8 da850_queue_tc_mapping[][2] = {) W. m' i. ?$ @5 A: O
        /* {event queue no, TC no} */
% ^  B) C" F0 p: F# H# _- k5 }        {0, 0},; T* C) I; V( O9 ]2 d% y# y
        {-1, -1}
5 \4 ~: d" F& ~- ^1 O* O; [1 E};* p5 D/ p6 {$ x1 f
8 v" q5 e) _6 y
static const s8 da850_queue_priority_mapping[][2] = {
3 Z$ k* l% e5 _3 x' y7 n3 ]        /* {event queue no, Priority} */6 S7 ?, i3 Y' X
        {0, 3},
( z0 w0 a2 a5 M! f        {-1, -1}
. t3 @1 I! a) n};4 p  u7 z: \9 q2 B' w  m+ ?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。  ~8 i6 d% D9 o' n* u
arch/arm/mach-davinci/board-da850-evm.c
, V4 w! z+ T6 w4 H( \6 J( m/*! q. h7 o4 i  w! O
* The following EDMA channels/slots are not being used by drivers (for
! u& ~) [* E; h* a5 ? * example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence% `% R8 ^" U( V  }. r7 W4 q$ A4 U
* they are being reserved for codecs on the DSP side.
( _& v& {$ n7 }5 R) _ */' H: G% F. y$ J% R# r1 W+ @7 U8 d
static const s16 da850_dma0_rsv_chans[][2] = {4 r" S! o* m7 H8 M
        /* (offset, number) */
: \- T$ D1 Z; I- E! d. A! x( J        { 8,  6},1 _' g5 u; T1 i9 N. z
        {24,  4},
0 N% u& I8 M0 g* i        {30,  2},
+ c* o4 k9 I& A, M4 P        {-1, -1}& `0 {; R3 }% Y
};3 l- l1 [6 Z, W
1 L( `+ M; t0 H) V* w( B
static const s16 da850_dma1_rsv_chans[][2] = {) }$ N* ~9 L, N- z2 S' ?3 l
        /* (offset, number) */0 K" }5 U5 J5 E  u
        { 0, 28},
* d* \# p/ V/ l. C0 r  e& J        {30,  2},
, \  U" R* W5 @) r# c. N) j! ]        {-1, -1}
- }% ?% P0 n5 D. e' [& J7 x6 \! W};8 {8 @6 }" d2 Y6 B- a; M
3 R7 f4 U8 ^1 ]9 x
上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。) @. |( {3 }& S9 J2 s. ^  n4 o

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2025-8-3 11:58 , Processed in 0.039427 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表