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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?9 O, I$ d; e) o% m" l/ y% x3 U
分享到:  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
$ j2 w& Z$ d, z8 U可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...

: d1 b# y: C1 a6 b$ d! w( B+ [具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:
0 ~# C1 s6 o0 s* I: V; n! Q
) Y* W, X' N7 h# S  p4 w* J+ hstatic const s8 da8xx_queue_tc_mapping[][2] = {
# O& c4 e1 I/ j) E- |        /* {event queue no, TC no} */* \2 g5 O. K" x8 X) m3 @2 A( q, k
        {0, 0},* k1 D% T: S1 `, G$ x
        {1, 1},
2 t( V  R. |1 H( ]( h9 [5 E7 l        {-1, -1}
; z; m% C. w" I0 U4 @& H; `4 z% c4 Y};$ v. V5 P# o) Q
( f0 [) z! Y' S( j* N8 O
static const s8 da8xx_queue_priority_mapping[][2] = {" D; p1 S: c0 R) @! w" b) t
        /* {event queue no, Priority} */' s$ O4 `" N. P6 ~
        {0, 3},
8 z3 c' X) Z- e/ y. f+ Q        {1, 7},9 K) H% p- w" g, {2 T: g0 V
        {-1, -1}+ }+ ]( W6 x7 Y0 O9 k$ a
};" w& [( V( B- }7 O% k6 i

9 T, {1 Q/ w0 C, d( Pstatic const s8 da850_queue_tc_mapping[][2] = {" \+ C  P8 H1 j( N
        /* {event queue no, TC no} */# [. k, D0 g- b
        {0, 0},$ W# O  L. w9 O6 w
        {-1, -1}0 V7 X2 \2 K( r" P
};
" d" y" b7 f# F3 Y+ e( h6 K" J! i& M! N0 ]/ O2 X$ W
static const s8 da850_queue_priority_mapping[][2] = {! w: n1 p/ ~; E& i9 e3 v& d
        /* {event queue no, Priority} */' a( t, U4 l, [) N7 P- L% l
        {0, 3},
- c' S) |3 E. f0 {, A- u* i        {-1, -1}
: p  {1 T! j+ b6 g};
* x( m, i; c* g
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。8 l2 O3 k0 I2 z) c" C# q+ C
arch/arm/mach-davinci/board-da850-evm.c6 n# Q4 ?7 G0 Z- \) V' K& A
/*' c% g: V4 L+ K/ Q# f, |
* The following EDMA channels/slots are not being used by drivers (for! l& O) _, j9 \% {0 H: X! H
* example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence1 L7 H. ^1 E& C
* they are being reserved for codecs on the DSP side.
; C! \, a7 R$ G) Y& H0 W */
' M. B" x; x. ~; y2 E) p4 Xstatic const s16 da850_dma0_rsv_chans[][2] = {
8 c; V2 F" E' ?1 x- {        /* (offset, number) */
$ w' ~: @2 u! H- {" t        { 8,  6},
2 \; ]# u1 n" Y$ M6 B        {24,  4}," V0 k! m* ]9 c; @8 P2 v: z
        {30,  2},
, @  y6 U6 i! j6 o3 ]8 k        {-1, -1}
+ q. _, m4 L; W1 x6 l( @3 Z};
/ ~8 l& U, T7 r; b) Y2 t/ Z6 N4 S+ |& _' u
static const s16 da850_dma1_rsv_chans[][2] = {/ r7 r" X( X6 M& N! [
        /* (offset, number) */$ A' d$ P5 Z; W+ X4 K- d+ B
        { 0, 28},
' q  m) n! C# O: B9 Q+ ?& t1 Q9 d; A0 N% k* U        {30,  2},
( T  H3 L0 c, _" z0 v        {-1, -1}$ E" N# y( C- r% ?# l% k  R
};" o) ?. m( T/ a7 Z+ s

) j1 A" y' q2 E* H上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。
* q5 h+ n7 Z# X, ~" {; G

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-16 18:16 , Processed in 0.040740 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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