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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?# ^3 @. Q% G1 J8 k
分享到:  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:268 @( |5 p% h2 ]' J& F
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...

6 |/ Q0 a3 E# ]0 Y  Z具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:$ q. b$ I( k% n5 O- u, v. I

2 Y6 P6 M& p$ wstatic const s8 da8xx_queue_tc_mapping[][2] = {6 g+ b$ i5 s3 T
        /* {event queue no, TC no} */
2 M/ S, ^. A( D+ Q. l4 ~0 g9 i8 ]! }        {0, 0},7 {2 W$ ]+ q1 g/ s2 ~
        {1, 1},6 u& P0 T3 f: E0 I6 I' [$ w
        {-1, -1}7 N$ |0 Z+ Z6 p3 V1 G' i+ i( `5 d; S
};
; z& I" F: z6 w& _$ H3 e9 K1 r; F# q6 t. j# e, D9 c
static const s8 da8xx_queue_priority_mapping[][2] = {
% k+ y/ I6 w4 p6 A# Z5 @; B        /* {event queue no, Priority} */+ }$ T: A5 |8 g0 n
        {0, 3},
9 W/ P# @/ f. s) j$ L7 G* \        {1, 7},  h6 {0 u8 S8 ]1 @0 m# t
        {-1, -1}
. ]" s9 [3 D% e' D2 e, |};
+ m6 L6 i# l" s8 }; ~( q7 s6 U9 g% \6 }# o. @
static const s8 da850_queue_tc_mapping[][2] = {8 W6 D+ ^8 |) M
        /* {event queue no, TC no} */
! @. V, C0 y& y# [3 F        {0, 0},5 D2 h4 M1 {7 l/ {( o; u
        {-1, -1}# {! E$ l7 r# H0 P& t
};0 K; C: d9 c, H. S" s3 s

. }' B$ C  X: w, J2 u1 \1 Y. n% Gstatic const s8 da850_queue_priority_mapping[][2] = {
7 K0 |9 D, N6 U4 X# f8 a0 k2 H        /* {event queue no, Priority} */* H& i' J3 J  u) i  v5 Y
        {0, 3},) O3 ]$ d& W' X. T
        {-1, -1}, |7 c+ u9 d# w# k0 z
};4 p5 X5 |0 U0 s- H
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。2 C& ?& x  J1 R7 k; G
arch/arm/mach-davinci/board-da850-evm.c0 o' {0 l, z0 ]+ P: v/ Y! I+ d
/*. w9 m( t# ^9 m& D9 K& ^' G, b' t: ]
* The following EDMA channels/slots are not being used by drivers (for# Y0 R9 f0 v) x; M0 e' v
* example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence
; C1 w0 B0 e, h * they are being reserved for codecs on the DSP side.& k" C7 a0 @9 I+ q, J% N
*/+ G+ e! j/ c0 z/ O- u3 X/ _
static const s16 da850_dma0_rsv_chans[][2] = {
" v0 J5 @# {" j        /* (offset, number) */
& M/ \1 G+ m% b6 P        { 8,  6},
/ p8 k& a: n  l$ ~3 t; C, L* U6 Q        {24,  4},
0 g4 A. O& ]( S: k; [' y+ m        {30,  2},4 Y# V! q, ?+ K' v! H
        {-1, -1}
1 j( b! Q& |3 D};5 }8 Y! Y- A# U3 Y$ g* {9 I0 r5 r" L
1 P9 I% n" c& y0 h4 n$ n& o
static const s16 da850_dma1_rsv_chans[][2] = {: @- s% _8 e4 P/ J* f
        /* (offset, number) */* x5 @2 d3 @6 z+ H+ Q
        { 0, 28},
( ^1 v9 |$ t2 v# n; Y& U        {30,  2},
' y2 @; D4 \) c  q) t        {-1, -1}
. s3 D) B/ R0 a};  B; U" n+ g. O- m3 r0 _
: l" ^6 s$ x: P& \
上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。% x# M; t& R# @2 W* A1 c4 Y. J

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-16 02:10 , Processed in 0.095056 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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