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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

在ARM端和DSP端都使用EDMA

[复制链接]

34

主题

54

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307
跳转到指定楼层
楼主
发表于 2016-3-22 16:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前使用OMAPL138芯片开发,在ARM端和DSP端都需要使用EDMA,不知道是否可行?是否有什么影响?' {- [6 m9 X; E: l& Z* n
分享到:  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:269 _# ]+ ]& B5 B
可以的,通道分配好,不用两个核使用同一通道就行,本身设计就支持双核,放心使用。 ...

! `; I- m4 e+ W! }具体在内核中怎么修改?哪个文件?
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
地板
发表于 2016-8-23 08:59:29 | 只看该作者
arch/arm/mach-davinci/devices-da8xx.c:
# H" h# U7 e" H: a; K& ?9 n( T% t: `; J9 s: x" X  V
static const s8 da8xx_queue_tc_mapping[][2] = {
: I# [/ m5 B2 r* d  F5 J        /* {event queue no, TC no} */
( J& m2 x. S: U# Z  \) W        {0, 0},
' d0 t( S" x6 Z% E0 g" y- Z        {1, 1},; i% M, U7 q2 P# `
        {-1, -1}
3 g# Z1 U) c1 f- e' M$ e};' K+ ^5 W. T5 G
, s5 Q8 n0 S3 U1 W( w8 P
static const s8 da8xx_queue_priority_mapping[][2] = {7 T4 A0 j% ?. r9 S3 j4 T) |
        /* {event queue no, Priority} */  _4 i( A8 K/ x( }
        {0, 3},
3 I9 a2 H# r, }1 G, w        {1, 7},
0 D+ Z$ i  }) k, i* c; l        {-1, -1}
- v% k7 }4 V' P, {0 i& r, Z};
% g, m0 c1 f: R
' Z2 R% n# {6 fstatic const s8 da850_queue_tc_mapping[][2] = {
' t; x/ N3 u  T$ _: ~        /* {event queue no, TC no} */
6 H  `$ v! W( S5 P- {        {0, 0},
+ `. @9 v2 U( P- ?! W        {-1, -1}
" g; ^* B0 o- D( U6 v6 ~8 j};8 R; l; n; h$ ]$ ^
/ R/ ~+ K& S4 Z. P4 D# ]5 R: q
static const s8 da850_queue_priority_mapping[][2] = {
. {. ?; w" Y/ K- R        /* {event queue no, Priority} */$ y( u% V* `  _. q
        {0, 3},/ w2 I9 P! U' H  M+ D2 ~
        {-1, -1}9 y% g+ M6 M8 `# S- G
};
+ }9 {9 a+ a, q3 D9 l' T
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2016-9-14 10:27:20 | 只看该作者
在linux内核源码里面,对edma的通道做了分配,把dsp可能用到的edma通道预留出来,意味着,在dsp里面可以使用到这些通道。
& Z+ l. n9 E. ?$ a1 march/arm/mach-davinci/board-da850-evm.c
: \7 U; s5 A: C" V/*
0 B& Z4 c2 l0 `* j! K * The following EDMA channels/slots are not being used by drivers (for: `) }0 R* s1 ~/ ]* {7 t
* example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence: o1 a. u, P: w3 Q& ]% L
* they are being reserved for codecs on the DSP side.
3 ~! F6 S( W" W4 ]9 d$ f */6 q: T7 I" z6 W3 S* ?4 X" m
static const s16 da850_dma0_rsv_chans[][2] = {
3 s0 p/ c) \) N% D5 x        /* (offset, number) */7 I, N. f$ L4 Z5 |% S' O  v
        { 8,  6},: v6 v$ c' d% \2 n/ |
        {24,  4},! i( w* i+ c0 v
        {30,  2},* c2 ^+ t5 G+ m. n% P% j2 d
        {-1, -1}8 ^/ L: O; S, E
};
+ u+ j* d  K/ H4 z, L$ r9 S6 a& V+ M# a3 a
static const s16 da850_dma1_rsv_chans[][2] = {" K- O/ [4 P: w; s! O( m
        /* (offset, number) */' |; B, U, p2 F
        { 0, 28},
$ y& `; U. @- G! h$ U, i        {30,  2},
9 P( P* S5 r# @& ?        {-1, -1}( e: o, S1 Q( n9 S, m
};* ^* N# _3 m) z# E$ o7 }, N/ M: Y

" c, k- S" F' `7 K上面的代码表示,如图片,EDMA CC0红色方框的通道预留给dsp,EDMA CC1除开红色椭圆MMCSD1其它通道dsp端都能使用。+ {9 ^- }  Y& L- H. ~' ?# p5 X

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-16 18:13 , Processed in 0.042838 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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