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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?" |: f5 ~# z4 O! z5 p
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。
. o! u$ y) s: xarch/arm/mach-davinci/board-da850-evm.c; G+ G( ~$ c1 r% |( ?$ e. d" }
/*' k8 J' w$ ~. e6 l; ?4 N  ?
* The following EDMA channels/slots are not being used by drivers (for
. g5 D& P! c" S- W% Y * example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence
5 d3 Y9 o) w' x * they are being reserved for codecs on the DSP side.. E& B, ~' [$ _$ h( k- P* S
*// ~5 j$ X7 U5 I4 w
static const s16 da850_dma0_rsv_chans[][2] = {3 [; K& m; l! M* G
        /* (offset, number) */
7 \3 G" f: E$ j* l, A4 L        { 8,  6},
+ D' C1 a* b. D2 Q' Z2 {        {24,  4}," C  I9 Y6 v# J& @6 ]2 t0 G/ j
        {30,  2},
0 @$ Z5 p! |7 j& L. R% h1 s        {-1, -1}
  ~: C' A0 a. j3 \8 l) D- n1 p};3 r- F' j3 ~) b/ z

6 w, r- @# s6 m' v. f( bstatic const s16 da850_dma1_rsv_chans[][2] = {$ S# R. e, m# K. @# T
        /* (offset, number) */. F' H; U4 B. K0 s& b; K0 m1 U
        { 0, 28},
# L. x3 |, [$ o6 j7 }, S. H8 u        {30,  2},
, R' [5 T' g$ `( g' ~        {-1, -1}
7 F# Y) U1 f! D6 H};
2 ?' H- [! z4 I8 w+ Y. J, L; S1 U$ G8 X
上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。
2 q, r' f- r; D0 K# O/ o' D7 R, d( \  R

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:
2 }, `6 y5 v/ r1 f5 g1 k" l9 p! N' i% G/ Q0 U
static const s8 da8xx_queue_tc_mapping[][2] = {! A& S# h* b( V  N0 j
        /* {event queue no, TC no} */1 t. \  Z1 ~. W' [* Q; H& U. A
        {0, 0},+ m. Z+ n. d2 n( W; ?2 M' b1 q
        {1, 1},
8 X0 G. z3 Z* K3 f" A% C/ `        {-1, -1}
: r0 T. {3 N4 O/ |: y: M- a7 o3 A};
7 N- _( N4 h3 U! }
! L4 q- q3 s8 n) tstatic const s8 da8xx_queue_priority_mapping[][2] = {
2 A2 e, N: s. a9 T5 O        /* {event queue no, Priority} */
2 n7 }9 [3 |3 N+ _$ H        {0, 3},
% X+ Z( u+ c8 N/ K9 C3 B        {1, 7},
0 K$ N6 k" m6 u8 l        {-1, -1}% @* Y# V! H' F
};+ B! u7 N, s( z' `' z; N) X, J

/ B  @# ^( h) {7 S; X  sstatic const s8 da850_queue_tc_mapping[][2] = {
. ]9 A5 k4 _  D# U! O. G. l1 r        /* {event queue no, TC no} */" ]' U$ A! N! ?4 ~! k
        {0, 0},
2 R: y" _4 N* p' o5 ~% X3 m0 z" ]        {-1, -1}/ x: r, G! T8 U+ u% J1 f1 b8 D5 e
};
1 I4 e9 i: V0 f' [- _/ U5 i) M, n& ^
static const s8 da850_queue_priority_mapping[][2] = {; d( z, `7 P6 g- v  h9 G
        /* {event queue no, Priority} */
2 |2 y8 z1 ?5 S# k: I, q/ v        {0, 3},
9 @- L  `) N  I" N2 _1 h2 c        {-1, -1}) v8 w2 H* P9 n% c- o4 z7 o0 h
};
2 }4 [2 q( v# @) S& P) C% C( G7 A
回复 支持 反对

使用道具 举报

26

主题

40

帖子

282

积分

中级会员

Rank: 3Rank: 3

积分
282
板凳
发表于 2016-8-18 14:41:54 | 只看该作者
teddy 发表于 2016-3-22 16:26
& ?! l  x# |0 c4 _. @可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...

& d5 ]. x  r3 J2 m1 @% _具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-15 06:11 , Processed in 0.039674 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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